/** ********************************************************************************
        * @summary リロードボタン - reload btn.
        ***********************************************************************************/
        private void DrawButtons()
        {
            if (treeView == null)
            {
                return;
            }
            if (GUILayout.Button("Reload"))
            {
                CreateTreeView();
                ReloadTexture();

                headerState.ResetSearch();

                treeView.SetTexture(textures, textureImporters);
                treeView.Reload(); // Reloadを呼ぶとBuildRootが実行され、次にBuildRowsが実行されます。

                EditorApplication.delayCall += () => treeView.searchString = TextureTreeView.defaultSearchString;
            }
            GUI.backgroundColor = new Color(0.5F, 1F, 0.3F, 1);

            // if (GUILayout.Button(nameof(Generate), GUILayout.MaxWidth(120)))

            if (GUILayout.Button("Recommended texture formats"))
            {
                Application.OpenURL("https://docs.unity3d.com/Manual/class-TextureImporterOverride.html");
            }
        }
        /** ********************************************************************************
        * @summary TreeView の更新 Update
        ***********************************************************************************/
        private void CreateTreeView()
        {
            if (treeView != null)
            {
                return;
            }

            if (isCreatingTreeView)
            {
                return;
            }

            isCreatingTreeView = true;
            Repaint();

            EditorApplication.delayCall += () =>
            {
                if (columnSearchStates == null || columnSearchStates.Length != ToolConfig.HeaderColumnNum)
                {
                    columnSearchStates = new SearchState[ToolConfig.HeaderColumnNum];
                    for (int i = 0; i < ToolConfig.HeaderColumnNum; i++)
                    {
                        columnSearchStates[i] = new SearchState();
                    }
                }


                treeViewState = treeViewState ?? new TextureTreeViewState();
                headerState   = headerState ?? new TextureColumnHeaderState(ToolConfig.HeaderColumns, columnSearchStates);
                headerState.ResetSearch();

                // TreeView作成
                treeView = treeView ?? new TextureTreeView(treeViewState, headerState);
                treeView.searchString = TextureTreeView.defaultSearchString;
                treeView.Reload(); // Reloadを呼ぶとBuildRootが実行され、次にBuildRowsが実行されます。

                // SearchFieldを初期化
                searchField = new SearchField();
                searchField.downOrUpArrowKeyPressed += treeView.SetFocusAndEnsureSelectedItem;

                isCreatingTreeView = false;
            };
        }
Exemple #3
0
        /** ********************************************************************************
        * @summary リロードボタン
        ***********************************************************************************/
        private void DrawReloadButton()
        {
            if (treeView == null)
            {
                return;
            }

            if (GUILayout.Button("Reload", EditorStyles.toolbarButton))
            {
                CreateTreeView();
                ReloadTexture();

                headerState.ResetSearch();

                treeView.SetTexture(textures, textureImporters);
                treeView.Reload(); // Reloadを呼ぶとBuildRootが実行され、次にBuildRowsが実行されます。


                EditorApplication.delayCall += () => treeView.searchString = TextureTreeView.defaultSearchString;
            }
        }