You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
912 B
55 lines
912 B
using UnityEngine; |
|
using UIWidgets; |
|
|
|
namespace UIWidgetsSamples { |
|
public class TreeViewSampleComponent : TreeViewComponentBase<ITreeViewSampleItem> { |
|
ITreeViewSampleItem item; |
|
|
|
public ITreeViewSampleItem Item { |
|
get { |
|
return item; |
|
} |
|
set { |
|
if (item!=null) |
|
{ |
|
item.OnChange -= UpdateView; |
|
} |
|
item = value; |
|
if (item!=null) |
|
{ |
|
item.OnChange += UpdateView; |
|
} |
|
UpdateView(); |
|
} |
|
} |
|
|
|
public override void SetData(TreeNode<ITreeViewSampleItem> node, int depth) |
|
{ |
|
base.SetData(node, depth); |
|
|
|
Item = (node==null) ? null : node.Item; |
|
} |
|
|
|
protected virtual void UpdateView() |
|
{ |
|
if (Item==null) |
|
{ |
|
Icon.sprite = null; |
|
Text.text = string.Empty; |
|
} |
|
else |
|
{ |
|
Item.Display(this); |
|
} |
|
} |
|
|
|
protected override void OnDestroy() |
|
{ |
|
base.OnDestroy(); |
|
if (item!=null) |
|
{ |
|
item.OnChange -= UpdateView; |
|
} |
|
} |
|
} |
|
} |