|
|
|
|
|
|
|
|
|
|
private void SchedulePolling() |
|
|
|
{ |
|
|
|
Debug.LogFormat("SchedulePolling"); |
|
|
|
if (panel != null) |
|
|
|
{ |
|
|
|
if (!m_IsScheduled) |
|
|
|
|
|
|
|
|
|
|
private void UnschedulePolling() |
|
|
|
{ |
|
|
|
Debug.LogFormat("UnschedulePolling"); |
|
|
|
if (m_IsScheduled && panel != null) |
|
|
|
{ |
|
|
|
this.Unschedule(InvalidateUIIfNeedsTime); |
|
|
|
|
|
|
if (childrenNodes.OfType<IRequiresTime>().Any()) |
|
|
|
{ |
|
|
|
data.OnModified(ModificationScope.Node); |
|
|
|
var texture = m_currentPreviewData != null ? m_currentPreviewData.Render(new Vector2(256, 256)) : null; |
|
|
|
m_PreviewImage.image = texture ?? Texture2D.whiteTexture; |
|
|
|
m_PreviewImage.RemoveFromClassList("inactive"); |
|
|
|
UpdatePreviewTexture(m_currentPreviewData); |
|
|
|
Dirty(ChangeType.Repaint); |
|
|
|
private void AddPreview(MaterialNodePresenter nodeData) |
|
|
|
void UpdatePreviewTexture(NodePreviewPresenter previewPresenter) |
|
|
|
if (!nodeData.elements.OfType<NodePreviewPresenter>().Any()) |
|
|
|
return; |
|
|
|
|
|
|
|
var preview = nodeData.elements.OfType<NodePreviewPresenter>().FirstOrDefault(); |
|
|
|
var texture = preview != null ? preview.Render(new Vector2(256, 256)) : null; |
|
|
|
|
|
|
|
var texture = previewPresenter != null ? previewPresenter.Render(new Vector2(256, 256)) : null; |
|
|
|
if (texture == null) |
|
|
|
{ |
|
|
|
m_PreviewImage.AddToClassList("inactive"); |
|
|
|
|
|
|
{ |
|
|
|
m_PreviewImage.RemoveFromClassList("inactive"); |
|
|
|
m_PreviewImage.image = preview.Render(new Vector2(256, 256)); |
|
|
|
m_PreviewImage.image = texture; |
|
|
|
|
|
|
|
m_currentPreviewData = preview; |
|
|
|
} |
|
|
|
|
|
|
|
public override void OnDataChanged() |
|
|
|
|
|
|
{ |
|
|
|
m_PreviewImage.AddToClassList("inactive"); |
|
|
|
m_currentPreviewData = null; |
|
|
|
UpdatePreviewTexture(m_currentPreviewData); |
|
|
|
|
|
|
|
AddPreview(nodeData); |
|
|
|
|
|
|
|
m_currentPreviewData = nodeData.elements.OfType<NodePreviewPresenter>().FirstOrDefault(); |
|
|
|
UpdatePreviewTexture(m_currentPreviewData); |
|
|
|
{ |
|
|
|
//m_PreviewImage.paintFlags &= ~PaintFlags.Invisible;
|
|
|
|
} |
|
|
|
{ |
|
|
|
//m_PreviewImage.paintFlags |= PaintFlags.Invisible;
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |