Example #1
0
        private void DrawTrack(Rect rect)
        {
            using (new GUI.ClipScope(new Rect(rect.x, rect.y, rect.width, rect.height)))
            {
                int startY = Mathf.FloorToInt(DrawerConfig.ScrollPosY / DrawerConfig.TrackLineHeight);
                int endY   = Mathf.CeilToInt((DrawerConfig.ScrollPosY + rect.height) / DrawerConfig.TrackLineHeight);

                float maxWidth = m_GroupData.Length * DrawerConfig.WidthForSecond;

                for (int i = startY; i < endY; ++i)
                {
                    float y = DrawerConfig.TrackLineHeight * i - DrawerConfig.ScrollPosY;

                    if (i >= m_TrackDrawers.Count)
                    {
                        break;
                    }

                    Rect trackRect = new Rect(0, y, rect.width, DrawerConfig.TrackLineHeight);
                    trackRect.width = Mathf.Min(rect.width, maxWidth - DrawerConfig.ScrollPosX);
                    if (SelectTrackIndex == i)
                    {
                        EditorGUIUtil.DrawAreaLine(trackRect, Color.green);
                    }

                    m_TrackDrawers[i].OnGUI(trackRect);
                }
            }
        }
Example #2
0
    private void SearchArea()
    {
        GUI.Label(new Rect(0f, 0f, position.width, m_ToolbarHeight), GUIContent.none, m_Styles.toolbarBack);
        bool flag = Event.current.type == EventType.KeyDown && Event.current.keyCode == KeyCode.Escape;

        GUI.SetNextControlName("SearchFilter");
        string text = EditorGUIUtil.SearchField(new Rect(5f, 5f, position.width - 10f, 15f), m_SearchFilter);

        if (flag && Event.current.type == EventType.Used)
        {
            if (m_SearchFilter == string.Empty)
            {
                Cancel();
            }
            m_FocusSearchFilter = true;
        }
        if (text != m_SearchFilter || m_FocusSearchFilter)
        {
            m_SearchFilter = text;
            FilterSettingsChanged();
            Repaint();
        }
        if (m_FocusSearchFilter)
        {
            EditorGUI.FocusTextInControl("SearchFilter");
            m_FocusSearchFilter = false;
        }

        GUILayout.BeginArea(new Rect(0f, 26f, position.width, m_ToolbarHeight - 26f));
        GUILayout.BeginHorizontal();
        GUILayout.Toggle(true, m_FolderPath, m_Styles.tab);
        GUILayout.EndHorizontal();
        GUILayout.EndArea();
    }
        public void OnGUI(Rect rect)
        {
            if (m_EndStageData == null)
            {
                EditorGUI.HelpBox(rect, "Data is Null", MessageType.Error);
                return;
            }
            float deltaHeight     = 0.0f;
            Rect  isScaleTimeRect = new Rect(rect.x, rect.y + deltaHeight, rect.width, EditorGUIUtility.singleLineHeight);

            m_EndStageData.IsScaleByTime = EditorGUI.Toggle(isScaleTimeRect, "Is Scale By Time", m_EndStageData.IsScaleByTime);

            deltaHeight += isScaleTimeRect.height;

            Rect groupRect = new Rect(rect.x, rect.y + deltaHeight, rect.width, (rect.height - deltaHeight) * .6f);

            EditorGUIUtil.DrawAreaLine(groupRect, Color.gray);
            groupDrawer.OnGUI(groupRect);

            deltaHeight += groupRect.height;

            Rect breakGroupRect = new Rect(rect.x, rect.y + deltaHeight, rect.width, rect.height - deltaHeight);

            EditorGUIUtil.DrawAreaLine(breakGroupRect, Color.gray);
            breakGroupDrawer.OnGUI(breakGroupRect);
        }
        public bool OnInspectorGUI()
        {
            Animation anim    = script.GetComponent <Animation>();
            bool      changed = false;

            EditorGUI.indentLevel++;
            foreach (string varName in clipVars)
            {
                AnimationClip val = ReflectionUtil.GetFieldValue <AnimationClip>(script, varName);
                if (anim != null)
                {
                    if (EditorGUIUtil.PopupNullable <AnimationClip>(varName, ref val, anim.GetAllClips().ToArray()))
                    {
                        ReflectionUtil.SetFieldValue(script, varName, val);
                        changed = true;
                    }
                }
                else
                {
                    if (val != null)
                    {
                        ReflectionUtil.SetFieldValue <AnimationClip>(script, varName, null);
                        changed = true;
                    }
                }
            }
            EditorGUI.indentLevel--;
            if (changed)
            {
                EditorUtil.SetDirty(script);
            }
            return(changed);
        }
Example #5
0
 private void VisualizeDups()
 {
     if (dups.Count == 0)
     {
         return;
     }
     EditorGUILayout.LabelField("Duplicates", EditorStyles.boldLabel);
     EditorGUI.indentLevel += 2;
     foreach (UIWidgetClassifier.WidgetType widgetType in EnumUtil.Values <UIWidgetClassifier.WidgetType>())
     {
         MultiMap <string, DupEntry> map = null;
         if (dups.TryGetValue(widgetType, out map) && map.Count > 0)
         {
             EditorGUILayout.LabelField(widgetType.ToString(), EditorStyles.boldLabel);
             EditorGUI.indentLevel += 2;
             foreach (KeyValuePair <string, List <DupEntry> > slot in map)
             {
                 EditorGUIUtil.ObjectFieldList(slot.Value);
                 EditorGUILayout.Space();
             }
             EditorGUI.indentLevel -= 2;
         }
     }
     EditorGUI.indentLevel -= 2;
 }
Example #6
0
 public override void OnInspectorGUI()
 {
     GUI.enabled = true;
     EditorGUILayout.BeginHorizontal();
     if (EditorGUIUtil.ObjectField <GameObject>("Root", ref root, true))
     {
         Classify(ref root);
     }
     if (GUILayout.Button("Refresh", GUILayout.ExpandWidth(false)) || root == null)
     {
         Classify(ref root);
     }
     GUI.enabled = root != null;
     if (GUILayout.Button("Rename", GUILayout.ExpandWidth(false)))
     {
         Rename();
     }
     GUI.enabled = true;
     EditorGUILayout.EndHorizontal();
     scroll = EditorGUILayout.BeginScrollView(scroll);
     VisualizeGroup();
     EditorGUIUtil.DrawSeparator();
     VisualizeDups();
     EditorGUILayout.EndScrollView();
 }
Example #7
0
        private void OnPropertyGUI(Rect rect)
        {
            GUILayout.BeginArea(rect);
            {
                EditorGUILayout.LabelField("Property", m_PropertyStyle);
                m_PropertyScrollPos = EditorGUILayout.BeginScrollView(m_PropertyScrollPos, GUILayout.Width(rect.width - 17));
                {
                    EditorGUIUtil.BeginLabelWidth(100);
                    {
                        float timeLen = EditorGUILayout.FloatField("Time Length", m_GroupData.Length);
                        if (timeLen != m_GroupData.Length)
                        {
                            m_GroupData.Length      = timeLen;
                            DrawerConfig.TimeLength = timeLen;
                        }

                        EditorGUILayout.Space();

                        if (SelectTrackIndex >= 0 && SelectTrackIndex < m_TrackDrawers.Count)
                        {
                            m_TrackDrawers[SelectTrackIndex].OnPropertyGUI(m_IsShowDesc());
                        }
                    }
                    EditorGUIUtil.EndLableWidth();
                }
                EditorGUILayout.EndScrollView();
            }
            GUILayout.EndArea();
        }
Example #8
0
        private bool DrawRowHeader()
        {
            bool changed = false;

            EditorGUILayout.BeginVertical();
            changed |= EditorGUIUtil.ObjectField <UITableCell>(ref table.defaultPrefab, true, W_Option, H_Option);
            EditorGUILayout.LabelField("Align", EditorStyles.boldLabel, H_Option);
            EditorGUILayout.LabelField("Size", EditorStyles.boldLabel, H_Option);
            EditorGUILayout.LabelField("Index", EditorStyles.boldLabel, H_Option);
            int row = table.isVertical? table.GetMaxPerLine(): table.rowCount;

            table.InitArray();
            for (int r = 0; r < row; r++)
            {
                EditorGUILayout.BeginHorizontal();
                changed |= EditorGUIUtil.ObjectField <UITableCell>(ref table.rowPrefab[r], true, GUILayout.Width(WIDTH - 20), H_Option);
                changed |= EditorGUIUtil.Popup <UITableLayout.VAlign>(ref table.valigns[r], EnumUtil.Values <UITableLayout.VAlign>(), GUILayout.Width(40), H_Option);
                changed |= EditorGUIUtil.IntField(null, ref table.rowHeight[r], GUILayout.Width(WIDTH - 30), H_Option);
                EditorGUILayout.LabelField((r + 1).ToString(), EditorStyles.boldLabel, GUILayout.Width(20), H_Option);
                EditorGUILayout.EndHorizontal();
            }
            if (!IsHorizontal())
            {
                EditorGUILayout.LabelField("", W_Option);
                EditorGUILayout.LabelField("", W_Option);
                EditorGUILayout.LabelField("", W_Option);
            }
            EditorGUILayout.EndVertical();
            if (changed)
            {
                table.InitArray();
            }
            return(changed);
        }
    protected override bool OnInspectorGUI(FontChangeData data, int i)
    {
        bool changed = false;

        EditorGUILayout.BeginVertical();
        if (EditorGUIUtil.ObjectField <Font>("DynamicFont", ref data.font, false))
        {
            changed = true;
            if (data.font != null)
            {
                data.uiFont = null;
            }
        }
        if (EditorGUIUtil.ObjectField <UIFont>("Reference Font", ref data.uiFont, false))
        {
            changed = true;
            if (data.uiFont != null)
            {
                data.font = null;
            }
        }
        ArrayDrawer <UIFont> arr = null;

        if (!arrMap.TryGetValue(data, out arr))
        {
            arr = new ArrayDrawer <UIFont>(data, "references");
            arr.allowSceneObject = false;
            arrMap[data]         = arr;
        }
        arr.OnInspectorGUI();
        EditorGUILayout.EndVertical();
        return(changed);
    }
Example #10
0
        private bool DrawTableStructure()
        {
            bool changed = false;

            if (NGUIEditorTools.DrawHeader("Table Structure"))
            {
                NGUIEditorTools.BeginContents();
                EditorGUILayout.HelpBox("Modifying structure values may occur unintented result", MessageType.Warning);
                changed = EditorGUIUtil.PopupEnum <UITableLayout.Arrangement>("Orientation", ref grid.arrangement, GUILayout.ExpandWidth(false));
                string rowCol = grid.isHorizontal? "Column Size": "Row Size";
                if (EditorGUIUtil.IntField(rowCol, ref grid.maxPerLine, GUILayout.ExpandWidth(false)))
                {
                    if (grid.maxPerLine <= 0)
                    {
                        grid.maxPerLine = 1;
                    }
                    changed = true;
                }
                changed |= EditorGUIUtil.IntField("Row Header", ref grid.rowHeader, GUILayout.ExpandWidth(false));
                changed |= EditorGUIUtil.IntField("Column Header", ref grid.columnHeader, GUILayout.ExpandWidth(false));
                changed |= EditorGUIUtil.Toggle("Reuse Cell", ref grid.reuseCell, GUILayout.ExpandWidth(false));
                NGUIEditorTools.EndContents();
            }
            if (changed)
            {
                grid.InitArray();
            }
            return(changed);
        }
Example #11
0
        private void DrawConfigList(Rect configListRect)
        {
            GUILayout.BeginArea(configListRect);
            {
                EditorGUILayout.LabelField("Flyer Data List", boldCenterStyle, GUILayout.Width(configListRect.width));

                m_ScrollListPos = EditorGUILayout.BeginScrollView(m_ScrollListPos, false, true, GUILayout.Width(configListRect.width));
                {
                    foreach (var kvp in m_DataDic)
                    {
                        if (!string.IsNullOrEmpty(m_SelectedDataFullPath) && kvp.Key == m_SelectedDataFullPath)
                        {
                            EditorGUIUtil.BeginGUIBackgroundColor(Color.cyan);
                            {
                                if (GUILayout.Button(Path.GetFileNameWithoutExtension(kvp.Key)))
                                {
                                    SelectedDataFullPath = kvp.Key;
                                }
                            }
                            EditorGUIUtil.EndGUIBackgroundColor();
                        }
                        else
                        {
                            if (GUILayout.Button(Path.GetFileNameWithoutExtension(kvp.Key)))
                            {
                                SelectedDataFullPath = kvp.Key;
                            }
                        }
                    }
                }
                EditorGUILayout.EndScrollView();
            }
            GUILayout.EndArea();
        }
Example #12
0
        private void OnGUI()
        {
            Rect toolbarRect = new Rect(0, 0, position.width, TOOLBAR_HEIGHT);

            DrawToolbar(toolbarRect);

            Rect configListRect = new Rect(1, TOOLBAR_HEIGHT, CONFIG_LIST_WIDTH, position.height - TOOLBAR_HEIGHT - 1);

            EditorGUIUtil.DrawAreaLine(configListRect, Color.gray);

            configListRect.x      += 2;
            configListRect.y      += 2;
            configListRect.width  -= 4;
            configListRect.height -= 4;
            DrawConfigList(configListRect);

            Rect tabPageRect = new Rect(CONFIG_LIST_WIDTH, TOOLBAR_HEIGHT, position.width - CONFIG_LIST_WIDTH, TAB_PAGE_HEIGHT);

            DrawTabPages(tabPageRect);

            Rect tabContentRect = new Rect(CONFIG_LIST_WIDTH, TOOLBAR_HEIGHT + TAB_PAGE_HEIGHT, position.width - CONFIG_LIST_WIDTH - 1, position.height - TAB_PAGE_HEIGHT - TOOLBAR_HEIGHT - 1);

            EditorGUIUtil.DrawAreaLine(tabContentRect, Color.yellow);

            tabContentRect.x      += 1;
            tabContentRect.y      += 1;
            tabContentRect.width  -= 2;
            tabContentRect.height -= 2;
            DrawTabContent(tabContentRect);
        }
Example #13
0
    /// <summary>
    /// 添加新的模块
    /// </summary>
    private void onAddNewModuleGUI()
    {
        EditorGUIUtil.DrawHeader("Add New Module");
        //添加模块视图
        GUILayout.BeginHorizontal("AS TextArea", GUILayout.Height(30));
        selectEnum = (ActModuleEnum)EditorGUILayout.EnumPopup("新模块", selectEnum, GUILayout.MaxWidth(Screen.width * 0.5f));

        GUI.backgroundColor = Color.green;
        if (GUILayout.Button("Add", GUILayout.Width(60)))
        {
            if (string.IsNullOrEmpty(actName))
            {
                return;
            }

            EditorWidgetState widget = new EditorWidgetState();
            widget.Entity  = Activator.CreateInstance(moduleMap[selectEnum]);
            widget.FoldOut = true;

            EditorGUIUtil.FindAllWidget(new List <EditorWidgetState>(), widget, widget.Entity);

            widgetList.Add(widget);
        }
        GUI.backgroundColor = Color.white;

        GUILayout.EndHorizontal();
    }
Example #14
0
    /// <summary>
    /// 初始化ACT项的属性,从文件目录加载配置
    /// </summary>
    /// <param name="groupName">Act 的分组</param>
    /// <param name="actName">Act 的名称</param>
    public void InitActItemProperty(string groupName, string actName)
    {
        this.actGroup = groupName;
        this.actName  = actName;

        //加载文件
        string relativePath = string.Concat("Act/", groupName, "/", actName, ".act");

        object[] property = localDataHelper.Import(relativePath);
        widgetList.Clear();

        if (property == null)
        {
            return;                         //新建的文件没有本地数据
        }
        int index = 0;

        foreach (object obj in property)
        {
            EditorWidgetState widget = new EditorWidgetState();
            widget.Entity  = obj;
            widget.FoldOut = index == 0;

            EditorGUIUtil.FindAllWidget(new List <EditorWidgetState>(), widget, widget.Entity);

            index++;
            widgetList.Add(widget);
        }
    }
Example #15
0
        private bool DrawTextMod()
        {
            bool changed = false;
            int  row     = grid.rowCount;
            int  col     = grid.columnCount;

            mod = EditorGUILayout.Foldout(mod, "Text Mod");
            if (mod)
            {
                EditorGUI.indentLevel += 2;
                for (int r = 0; r < row; r++)
                {
                    EditorGUILayout.BeginHorizontal();
                    for (int c = 0; c < col; c++)
                    {
                        UITableCell cell = grid.GetCell(r, c);
                        UILabel     l    = cell != null?cell.GetComponentInChildren <UILabel>() : null;

                        string s = l != null? l.text: "";
                        if (EditorGUIUtil.TextField(null, ref s, GUILayout.Width(70)) && l != null)
                        {
                            l.SetText(s);
                            changed = true;
                        }
                    }
                    EditorGUILayout.EndHorizontal();
                }
                EditorGUI.indentLevel -= 2;
            }
            return(changed);
        }
Example #16
0
    private void OnGUIFSMState()
    {
        if (m_curFsmStateSet == null)
        {
            return;
        }

        EditorGUILayout.BeginVertical("box", GUILayout.MinWidth(200), GUILayout.MinHeight(200));
        {
            GUILayout.Label("State List", EditorStyles.boldLabel);
            m_stateScrollPosition = GUILayout.BeginScrollView(m_stateScrollPosition);
            {
                var stateElementList = m_curFsmStateSet.stateElementList;
                for (int i = 0; i < stateElementList.Count; ++i)
                {
                    string name = stateElementList[i].StateName;

                    bool selected = i == m_selectedStateIndex;
                    EditorGUIUtil.Label(name, selected, 0, 2, EditorGUIUtil.GetSelectedTextColorByEditorSkin(selected));

                    if (EditorGUIEventUtil.IsLastRectClicked())
                    {
                        SelectState(i);
                    }
                }
            }
            GUILayout.EndScrollView();
        }
        EditorGUILayout.EndVertical();
    }
Example #17
0
            private void DrawPropertyChildrenRecursive(SerializedProperty property, SerializedProperty propertyReference)
            {
                SerializedProperty endProperty          = property.GetEndProperty();
                SerializedProperty endReferenceProperty = (propertyReference != null) ? propertyReference.GetEndProperty() : null;

                // go into the children of the property
                property.NextVisible(enterChildren: true);
                if (propertyReference != null)
                {
                    propertyReference.NextVisible(enterChildren: true);
                }

                EditorGUI.indentLevel++;
                do
                {
                    bool changed = this.ArePropertyValuesChanged(property, propertyReference);
                    EditorGUIUtil.SetBoldDefaultFont(changed);

                    EditorGUILayout.PropertyField(property);

                    if (property.hasVisibleChildren && property.isExpanded)
                    {
                        this.DrawPropertyChildrenRecursive(property.Copy(), (propertyReference != null) ? propertyReference.Copy() : null);
                    }
                } while (this.EnterNextVisibleForProperties(property, ref propertyReference, endReferenceProperty, enterChildren: false) && !SerializedProperty.EqualContents(property, endProperty));

                EditorGUI.indentLevel--;
            }
Example #18
0
 public void OnInspectorGUI()
 {
     if (EditorGUIUtil.ObjectField <GameObject>("Empty Obj", ref grid.emptyObj, true))
     {
         EditorUtil.SetDirty(grid.emptyObj);
     }
     OnGridGUI();
 }
Example #19
0
 private void DrawSceneListHeader(Rect rect)
 {
     rect.y += 1;
     rect    = EditorGUIUtil.DrawReorderableListHeaderIndex(rect);
     float[] widths = GetOtherListColumnWidth(rect);
     EditorGUI.LabelField(new Rect(rect.x, rect.y, widths[0] - space, lineHeight), "路径");
     rect.x += widths[0];
     EditorGUI.LabelField(new Rect(rect.x, rect.y, widths[1] - space, lineHeight), "忽略");
 }
Example #20
0
        protected override bool OnInspectorGUI(RenderQueueElement info, int i)
        {
            float width   = GetWidth();
            bool  changed = false;

            changed |= EditorGUIUtil.TextField(null, ref info.name, GUILayout.MinWidth(width * 0.5F));
            changed |= EditorGUIUtil.IntField(null, ref info.value, GUILayout.MinWidth(width * 0.3F));
            return(changed);
        }
Example #21
0
        private void DrawExcludeListHeader(Rect rect)
        {
            rect.y += 1;
            rect    = EditorGUIUtil.DrawReorderableListHeaderIndex(rect);
            float width   = Mathf.Min(200, rect.width);
            float residue = rect.width - width;

            EditorGUI.LabelField(new Rect(rect.x, rect.y, width + residue - space, lineHeight), "资源路径(非目录)");
        }
Example #22
0
        /// <summary>
        /// 绘制当前使用的BundleNode的信息
        /// </summary>
        private void DrawBundleNodes()
        {
            foreach (var node in m_BundleNodes)
            {
                string bundlePath = node.AsDynamic().m_BundlePath;
                if (!m_BundleNodeFoldoutDic.TryGetValue(bundlePath, out bool isFoldout))
                {
                    isFoldout = false;
                    m_BundleNodeFoldoutDic.Add(bundlePath, isFoldout);
                }

                bool isDone = node.AsDynamic().IsDone;
                if (!isDone)
                {
                    bundlePath += "(Loading)";
                }

                m_BundleNodeFoldoutDic[bundlePath] = EditorGUILayout.Foldout(isFoldout, bundlePath);
                if (isFoldout)
                {
                    EditorGUIUtil.BeginGUIBackgroundColor(m_NodeBGColor);
                    {
                        EditorGUILayout.BeginVertical(EditorStyles.helpBox);
                        {
                            EditorGUIUtil.BeginIndent();
                            {
                                EditorGUILayout.LabelField("Bundle Node:");
                                EditorGUIUtil.BeginIndent();
                                {
                                    DrawBundleNode(node);
                                }
                                EditorGUIUtil.EndIndent();

                                if (m_IsShowBundleNodeDirect)
                                {
                                    EditorGUILayout.LabelField("Direct Bundle:");
                                    string[] depends = m_AssetBundleManifest.GetDirectDependencies(bundlePath);
                                    EditorGUIUtil.BeginIndent();
                                    {
                                        foreach (var depend in depends)
                                        {
                                            BundleNode dependNode = m_BundleNodeDic[depend];
                                            DrawBundleNode(dependNode);
                                            EditorGUILayout.Space();
                                        }
                                    }
                                    EditorGUIUtil.EndIndent();
                                }
                            }
                            EditorGUIUtil.EndIndent();
                        }
                        EditorGUILayout.EndVertical();
                    }
                    EditorGUIUtil.EndGUIBackgroundColor();
                }
            }
        }
Example #23
0
        protected override void OnGUI()
        {
            if (boldCenterStyle == null)
            {
                boldCenterStyle           = new GUIStyle(EditorStyles.boldLabel);
                boldCenterStyle.alignment = TextAnchor.MiddleCenter;
                boldCenterStyle.fontSize  = 16;
            }

            base.OnGUI();
            EditorGUILayout.BeginVertical();
            {
                EditorGUILayout.LabelField("New Data Creater", boldCenterStyle);
                EditorGUILayout.Space();
                EditorGUIUtil.BeginLabelWidth(60);
                {
                    id = EditorGUILayout.IntField("Input ID:", id);
                }
                EditorGUIUtil.EndLableWidth();
                GUILayout.FlexibleSpace();
                if (!string.IsNullOrEmpty(errorMsg))
                {
                    EditorGUILayout.HelpBox(errorMsg, MessageType.Error);
                }
                EditorGUILayout.BeginHorizontal();
                {
                    if (GUILayout.Button("Create"))
                    {
                        if (checkCallback != null)
                        {
                            if (checkCallback(id))
                            {
                                createCallback?.Invoke(id);
                                createCallback = null;
                                Close();
                            }
                            else
                            {
                                errorMsg = "Error ID";
                            }
                        }
                        else
                        {
                            createCallback?.Invoke(id);
                            Close();
                        }
                    }
                    if (GUILayout.Button("Cancel"))
                    {
                        Close();
                    }
                }
                EditorGUILayout.EndHorizontal();
            }
            EditorGUILayout.EndVertical();
        }
 public void OnGUI(Rect rect)
 {
     if (m_FlyingStageData == null)
     {
         EditorGUI.HelpBox(rect, "Data is Null", MessageType.Error);
         return;
     }
     EditorGUIUtil.DrawAreaLine(rect, Color.gray);
     groupDrawer.OnGUI(rect);
 }
Example #25
0
    /// <summary>
    /// 右边的技能列表
    /// </summary>
    private void onRightActListGUI(EditorScrollWidgetState <object> scrollWidget)
    {
        GUILayout.BeginVertical();
        EditorGUIUtil.DrawHeader("技能列表");
        scrollWidget.Pos = GUILayout.BeginScrollView(scrollWidget.Pos);


        GUILayout.EndScrollView();
        GUILayout.EndVertical();
    }
Example #26
0
 private void DrawFindLexiconGUI()
 {
     EditorGUILayout.BeginHorizontal();
     EditorGUIUtil.TextField("Lexicon Keys", ref lexiconKeys);
     if (GUILayout.Button("Find") && lexiconKeys.IsNotEmpty())
     {
         Debug.Log(UIBuildScript.FindTextKey(lexiconKeys));
     }
     EditorGUILayout.EndHorizontal();
 }
Example #27
0
        private bool DrawColumn()
        {
            bool changed     = false;
            int  columnSize  = table.isHorizontal? table.GetMaxPerLine(): table.columnCount;
            int  contentSize = table.columnCount;

            for (int c = 0; c < columnSize; c++)
            {
                EditorGUILayout.BeginVertical();
                changed |= EditorGUIUtil.ObjectField <UITableCell>(ref table.columnPrefab[c], true, GUILayout.ExpandWidth(false), H_Option);
                changed |= EditorGUIUtil.Popup <UITableLayout.HAlign>(ref table.haligns[c], EnumUtil.Values <UITableLayout.HAlign>(), GUILayout.Width(WIDTH - 20), H_Option);
                changed |= EditorGUIUtil.IntField(null, ref table.columnWidth[c], GUILayout.Width(WIDTH - 20), H_Option);
                EditorGUILayout.LabelField(c.ToString(), EditorStyles.boldLabel, W_Option, H_Option);
                int row = table.rowCount;
                if (c < contentSize)
                {
                    for (int r = 0; r < row; r++)
                    {
                        changed |= DrawCell(r, c);
                    }

                    // Draw Column +/- buttons
                    EditorGUILayout.BeginHorizontal();
                    if (GUILayout.Button(new GUIContent("A", "Add Selected"), GUILayout.ExpandWidth(false), H_Option))
                    {
                        AddSelected(c, UITableLayout.Arrangement.Vertical);
                        changed = true;
                    }
                    if (GUILayout.Button("+", GUILayout.ExpandWidth(false), H_Option))
                    {
                        #pragma warning disable 0618
                        table.AddColumn(c + 1, new UITableCell[table.rowCount]);
                        #pragma warning restore 0618
                        changed = true;
                    }
                    GUI.enabled = c >= table.columnHeader;
                    if (GUILayout.Button("-", GUILayout.ExpandWidth(false), H_Option))
                    {
                        if (EditorUtility.DisplayDialog("Confirm", "Delete column " + (c + 1), "OK", "Cancel"))
                        {
                            #pragma warning disable 0618
                            table.RemoveColumn(c);
                            #pragma warning restore 0618
                            table.Reposition();
                            changed = true;
                        }
                    }
                    GUI.enabled = true;
                    EditorGUILayout.EndHorizontal();
                }

                EditorGUILayout.EndVertical();
            }
            return(changed);
        }
Example #28
0
		public override void OnHeaderGUI(List<Object> found)
		{
			EditorGUIUtil.TextArea ("Exclude", ref exclude);
			EditorGUIUtil.Toggle("Exclude TexLoader", ref excludeTexLoader);
			EditorGUILayout.BeginHorizontal();
			EditorGUIUtil.TextField(null, ref filter);
			if (GUILayout.Button("Search")) {
				SetExclude(exclude);
				Search();
			}
			EditorGUILayout.EndHorizontal();
		}
Example #29
0
        private void DrawExcludeListElement(Rect rect, int index, bool isActive, bool isFocused)
        {
            rect.y += 1;
            rect    = EditorGUIUtil.DrawReorderableListIndex(rect, m_excludes, index);

            SerializedProperty m_exclude = m_excludes.GetArrayElementAtIndex(index);

            float width   = Mathf.Min(200, rect.width);
            float residue = rect.width - width;

            EditorGUI.PropertyField(new Rect(rect.x, rect.y, width + residue - space, lineHeight), m_exclude, GUIContent.none);
        }
Example #30
0
        private bool DrawCell(int r, int c)
        {
            bool        changed = false;
            UITableCell cell    = table.GetCell(r, c);

            if (EditorGUIUtil.ObjectField <UITableCell>(ref cell, true, W_Option, GUILayout.Height(HEIGHT - 1)))
            {
                table.SetCell(r, c, cell);
                changed = true;
            }
            return(changed);
        }