コード例 #1
0
    public override void OnInspectorGUI()
    {
        serializedObject.Update();         // Обновление иследуменого скрипта


        #region Отрисовка контролов
        // --- [ Кнопка "Открыть в редакторе" ] --- //
        if (GUILayout.Button("Открыть в редакторе"))
        {
            BoardDataEditorWindow.Open((BoardData)target);
        }
        EditorGUILayout.Space(10);


        // --- [   Поля "Столбца / строки"    ] --- //
        DrawInputTableFields();
        EditorGUILayout.Space();


        // --- [      Кнопка "To Upper"       ] --- //
        ToUpperButton();


        // --- [     Таблица с символами      ] --- //
        if (DataInstance.Board != null && DataInstance.Columns > 0 && DataInstance.Rows > 0)
        {
            DrawTable();
        }
        EditorGUILayout.Space(10);


        // --- [     Кнопка "Очистиить"      ] --- //
        EditorGUILayout.BeginHorizontal();
        ClearBoardButton();


        // --- [    "Заполнить случайными"   ] --- //
        FillUpWithRandomLetters();
        EditorGUILayout.EndHorizontal();
        EditorGUILayout.Space(10);


        // --- [         Список слов          ] --- //
        _dataOrder.DoLayoutList();
        #endregion


        // Применение изменений и отметка для сцены, что состояние изменено
        serializedObject.ApplyModifiedProperties();
        if (GUI.changed)
        {
            EditorUtility.SetDirty(DataInstance);
        }
    }
コード例 #2
0
ファイル: AssetHandler.cs プロジェクト: Gitenax/WordGame_demo
    public static bool OpenEditor(int instance, int line)
    {
        var selected = EditorUtility.InstanceIDToObject(instance);


        if (selected as BoardData != null)
        {
            BoardDataEditorWindow.Open((BoardData)selected);
            return(true);
        }
        else if (selected as TempData != null)
        {
            TempDataEditorWindow.Open((TempData)selected);
            return(true);
        }

        return(false);
    }