Exemplo n.º 1
0
            void UpdateCompList()
            {
                EditorUIBase GenCompEntry(int index)
                {
                    var disp = new EHorizontalLayout()
                               + new EText().Content(index.ToString()).Width(20)
                               + new EText().BindContent(() =>
                    {
                        AssetTypes.ComponentDBPage p = window.GetSelectedPage();
                        if (p != null)
                        {
                            if (p.componentList.Count > index)
                            {
                                return(p.componentList[index].name);
                            }
                        }
                        return("OUT OF SCOPE!");
                    }).RelativeSize(true);

                    var tabs    = new ESwitchTab().Height(100);
                    var element = tabs
                                  //Unselected
                                  + (new EButton().OnClicked((EButton b) => { window.selectedComp = index; window.OpenCompEditTab(); })
                                     + disp
                                     )
                    ;

                    element.OnConstruct(window);
                    return(element);
                }

                AssetTypes.ComponentDBPage page = window.GetSelectedPage();

                if (page == null)
                {
                    compList.children.Clear();
                    return;
                }

                if (compList.children.Count < page.componentList.Count)
                {
                    for (int i = compList.children.Count; i < page.componentList.Count; i++)
                    {
                        compList.children.Add(GenCompEntry(i));
                    }
                }
                else if (page.componentList.Count < compList.children.Count)
                {
                    compList.children.RemoveRange(page.componentList.Count, compList.children.Count - page.componentList.Count);
                }
            }
Exemplo n.º 2
0
            void UpdatePageList()
            {
                EditorUIBase GenPageEntry(int index)
                {
                    var disp = new EHorizontalLayout()
                               + new EText().Content(index.ToString()).Width(20)
                               + new EText().BindContent(() =>
                    {
                        if (window.database.pages.Count > index)
                        {
                            return(window.database.pages[index].pageName);
                        }
                        else
                        {
                            return("OUT OF SCOPE!");
                        }
                    }).RelativeSize(true);

                    var tabs    = new ESwitchTab();
                    var element = tabs
                                  //Unselected
                                  + (new EButton().OnClicked((EButton b) => { SelectPageEntry(index); })
                                     + disp
                                     )
                                  //Selected
                                  + (new ECascade()
                                     + disp
                                     + new EBox()
                                     )

                    ;

                    element.OnConstruct(window);
                    return(element);
                }

                if (dbPageList.children.Count < window.database.pages.Count)
                {
                    for (int i = dbPageList.children.Count; i < window.database.pages.Count; i++)
                    {
                        dbPageList.children.Add(GenPageEntry(i));
                    }
                }
                else if (window.database.pages.Count < dbPageList.children.Count)
                {
                    dbPageList.children.RemoveRange(window.database.pages.Count, dbPageList.children.Count - window.database.pages.Count);
                }

                for (int i = 0; i < dbPageList.children.Count; i++)
                {
                    ESwitchTab entry = (dbPageList.children[i] as ESwitchTab);
                    if (window.selectedPage == i)
                    {
                        if (entry.ActivatedTab() == 0)
                        {
                            entry.ActivateTab(1);
                        }
                    }
                    else
                    {
                        entry.ActivateTab(0);
                    }
                }
            }