protected override GameObject OnItemInsert(int position, EZData.Context item, string smartObject) { if (_tabPanel == null) return null; for (var i = 0; i < _tabPanel.items.Length; ++i) { if (_tabPanel.items[i].order >= position) { _tabPanel.items[i].setOrder(_tabPanel.items[i].order + 1); _tabPanel.items[i].name = (_tabPanel.items[i].order + 1).ToString() + "-Panel"; } } var r = _tabPanel.newPanel(GetStringValue(item, TitleTextPath, _titleTextsCache)); if (LabelTextPath.Length > 0) r.gameObject.AddComponent<iGuiLabelTextBinding>().Path = LabelTextPath; if (LabelImagePath.Length > 0) r.gameObject.AddComponent<iGuiLabelTextureBinding>().Path = LabelImagePath; if (LabelTooltipPath.Length > 0) r.gameObject.AddComponent<iGuiTooltipTextBinding>().Path = LabelTooltipPath; r.addSmartObject(smartObject); if (r == null) return null; r.setOrder(position); r.name = (_tabPanel.items[position].order + 1).ToString() + "-Panel"; OnOptionDataChange(position, item); return r.gameObject; }
public virtual GameObject Instantiate(EZData.Context itemContext, int index) { if (Template == null) { return null; } GameObject instance = (GameObject)Instantiate(Template); var subTemplates = instance.GetComponentsInChildren<NguiListItemTemplate>(); foreach (var st in subTemplates) { if (st.Template == instance) st.Template = Template; } foreach(UIDragCamera cd in instance.GetComponentsInChildren<UIDragCamera>()) { if (cd.draggableCamera == null && DraggableCamera != null) cd.draggableCamera = DraggableCamera; } var itemData = instance.AddComponent<NguiItemDataContext>(); instance.transform.parent = transform; //Debug.LogError("SetContext " + itemContext.GetType().Name); itemData.SetContext(itemContext); instance.transform.parent = null; itemData.SetIndex(index); return instance; }
public void ApplyContext(GameObject instance, EZData.Context itemContext, int index) { if (instance == null) return; var itemData = instance.AddComponent<iGuiItemDataContext>(); itemData.SetContext(itemContext, _rootContext.Root); itemData.SetIndex(index); }
protected virtual void OnItemInsert(int position, EZData.Context item) { GameObject itemObject = null; if (_itemTemplate != null) { itemObject = _itemTemplate.Instantiate(item, position); itemObject.name = string.Format("{0}", position); for (var i = 0; i < transform.childCount; ++i) { var child = transform.GetChild(i).gameObject; int childNumber; if (int.TryParse(child.name, out childNumber) && childNumber >= position) { child.name = string.Format("{0}", childNumber + 1); } } itemObject.transform.parent = gameObject.transform; itemObject.transform.localScale = Vector3.one; itemObject.transform.localPosition = Vector3.back; } else { if (position < transform.childCount) { itemObject = transform.GetChild(position).gameObject; var itemData = itemObject.GetComponent<NguiItemDataContext>(); if (itemData != null) { itemData.SetContext(item); itemData.SetIndex(position); } } } if (itemObject != null) { foreach(var dragObject in itemObject.GetComponentsInChildren<UIDragObject>()) { if (dragObject.target == null) dragObject.target = gameObject.transform; } foreach(var dragObject in itemObject.GetComponents<UIDragObject>()) { if (dragObject.target == null) dragObject.target = gameObject.transform; } var parentVisibility = NguiUtils.GetComponentInParentsAs<IVisibilityBinding>(gameObject); foreach(var visibility in NguiUtils.GetComponentsInChildrenAs<IVisibilityBinding>(itemObject)) { visibility.InvalidateParent(); } var visible = parentVisibility == null ? true : parentVisibility.Visible; NguiUtils.SetVisible(itemObject, visible); RepositionContent(); } }
protected override GameObject OnItemInsert(int position, EZData.Context item, string smartObject) { var option = new GUIContent( GetStringValue(item, LabelTextPath, _labelTextsCache), (LabelImagePath.Length > 0) ? GetTextureValue(item, LabelImagePath, _labelImagesCache) : null, (LabelTooltipPath.Length > 0) ? GetStringValue(item, LabelTooltipPath, _labelTooltipsCache) : string.Empty); _dropDownList.insertOption(position, option); return null; }
public void SetContext(EZData.Context c) { _context = c; var bindings = gameObject.GetComponentsInChildren<NguiBaseBinding>(); foreach (var binding in bindings) { binding.UpdateBinding(); } }
private void OnItemInsert(int position, EZData.Context item) { if (_itemTemplate != null) { var obj = OnItemInsert(position, item, _itemTemplate.SmartObject); _itemTemplate.ApplyContext(obj, item, position); } else { OnItemInsert(position, item, string.Empty); } }
public void SetContext(EZData.Context c, iGuiRootContext rootContext) { _context = c; _root = rootContext; var bindings = gameObject.GetComponentsInChildren<iGuiBinding>(); foreach (var binding in bindings) { binding.SetContext(this); } var multiBindings = gameObject.GetComponentsInChildren<iGuiMultiBinding>(); foreach (var binding in multiBindings) { binding.SetContext(this); } }
protected override GameObject OnItemInsert(int position, EZData.Context item, string smartObject) { if (_listBox == null) return null; for (var i = 0; i < _listBox.items.Length; ++i) { if (_listBox.items[i].order >= position) { _listBox.items[i].setOrder(_listBox.items[i].order + 1); _listBox.items[i].name = (_listBox.items[i].order + 1).ToString() + "-Item"; } } var r = _listBox.addSmartObject(smartObject); if (r == null) return null; r.setOrder(position); r.name = (_listBox.items[position].order + 1).ToString() + "-Item"; return r.gameObject; }
public GameObject Instantiate(EZData.Context itemContext, int index, int groupNumber) { if (Template == null) { return null; } GameObject instance; instance = (GameObject)Instantiate(Template); var subTemplates = instance.GetComponentsInChildren<NguiListItemTemplate>(); foreach (var st in subTemplates) { if (st.Template == instance) st.Template = Template; } foreach(UIDragCamera cd in instance.GetComponentsInChildren<UIDragCamera>()) { if (cd.draggableCamera == null && DraggableCamera != null) cd.draggableCamera = DraggableCamera; } var itemData = instance.AddComponent<NguiItemDataContext>(); instance.transform.SetParent(transform); itemData.SetContext(itemContext); instance.transform.SetParent(null); itemData.SetIndex(index); var toggle = itemData.GetComponent<UIToggle> (); if (toggle != null) { toggle.group = groupNumber; } return instance; }
private EZData.Property<string> GetDisplayValueProperty(EZData.Context item) { if (item == null) return null; EZData.Property<string> property = null; if (_displayValuesCache.TryGetValue(item, out property)) return property; property = item.FindProperty<string>(DisplayValuePath, this); if (property != null) _displayValuesCache.Add(item, property); return property; }
protected override void OnItemInsert(int position, EZData.Context item) { base.OnItemInsert(position, item); _uiPopupList.items.Insert(position, GetDisplayValueProperty(item).GetValue()); AssignValue(GetItemDisplayValue(_collection.SelectedIndex)); }
public void SetContext(EZData.IContext context) { _context = context; }
private void CleanupChangeCallback(EZData.Context key) { if (_labelTextsCache.ContainsKey(key)) _labelTextsCache[key].OnChange -= OnOptionDataChange; if (_labelTooltipsCache.ContainsKey(key)) _labelTooltipsCache[key].OnChange -= OnOptionDataChange; if (_labelImagesCache.ContainsKey(key)) _labelImagesCache[key].OnChange -= OnOptionDataChange; if (_valuesCache.ContainsKey(key)) _valuesCache[key].OnChange -= OnOptionDataChange; }
private Texture2D GetTextureValue(EZData.Context item, string path, Dictionary<EZData.Context, EZData.Property<Texture2D>> cache) { if (item == null) return null; EZData.Property<Texture2D> property = null; if (cache.TryGetValue(item, out property)) return property.GetValue(); property = item.FindProperty<Texture2D>(path, this); if (property == null) return null; property.OnChange += OnOptionDataChange; cache.Add(item, property); return property.GetValue(); }
private bool GetBoolValue(EZData.Context item, string path, Dictionary<EZData.Context, EZData.Property<bool>> cache) { if (item == null) return false; EZData.Property<bool> property = null; if (cache.TryGetValue(item, out property)) return property.GetValue(); property = item.FindProperty<bool>(path, this); if (property == null) return false; property.OnChange += OnOptionDataChange; cache.Add(item, property); return property.GetValue(); }
protected abstract GameObject OnItemInsert(int position, EZData.Context item, string smartObject);
private void OnOptionDataChange(int fakeItemIndex, EZData.Context fakeItem) { for (var i = 0; i < _tabPanel.titles.Count; ++i) { var item = (i == fakeItemIndex) ? fakeItem : _collection.GetBaseItem((i > fakeItemIndex) ? i - 1 : i); Debug.Log("Setting item " + i + " to " + GetStringValue(item, TitleTextPath, _titleTextsCache)); _tabPanel.titles[i].text = GetStringValue(item, TitleTextPath, _titleTextsCache); _tabPanel.titles[i].image = (TitleImagePath.Length > 0) ? GetTextureValue(item, TitleImagePath, _titleImagesCache) : null; _tabPanel.titles[i].tooltip = (TitleTooltipPath.Length > 0) ? GetStringValue(item, TitleTooltipPath, _titleTooltipsCache) : string.Empty; } }
private void CleanupChangeCallback(EZData.Context key) { if (_titleTextsCache.ContainsKey(key)) _titleTextsCache[key].OnChange -= OnOptionDataChange; if (_titleTooltipsCache.ContainsKey(key)) _titleTooltipsCache[key].OnChange -= OnOptionDataChange; if (_titleImagesCache.ContainsKey(key)) _titleImagesCache[key].OnChange -= OnOptionDataChange; }