Example #1
0
    void OnGUI()
    {
        InitBase();

        SetEditorStyles();

        scrollPos = EditorGUILayout.BeginScrollView(scrollPos);

        for (int i = 0; i < Data.Count; i++)
        {
            DisplayData(Data[i]);
        }

        EditorGUILayout.EndScrollView();

        GUILayout.Space(12);
        GUILayout.FlexibleSpace();
        EditorGUILayout.BeginHorizontal();
        GUILayout.Space(6);
        if (GUILayout.Button("Refresh Data"))
        {
            LoadData();
        }

        GUILayout.FlexibleSpace();

        if (GUILayout.Button("New " + type.ToString()))
        {
            ContractFormBase newEditor = EditorInitMethod.Invoke(null, null) as ContractFormBase;
            newEditor.OnClose = ReloadContent;
        }
        GUILayout.Space(6);
        EditorGUILayout.EndHorizontal();
        GUILayout.Space(6);
    }
Example #2
0
    protected void ControlsArea(T content)
    {
        EditorGUILayout.BeginHorizontal();
        {
            //Buttons to move contract up and down
            if (GUILayout.Button("▲"))
            {
                MoveUp(content);
            }
            GUILayout.Space(6);

            if (GUILayout.Button("▼"))
            {
                MoveDown(content);
            }
            GUILayout.Space(6);

            GUILayout.FlexibleSpace();

            //Edit and delete buttons in their own horizontal across the bottom
            if (GUILayout.Button("Edit"))
            {
                int index = Data.IndexOf(content);
                ContractFormBase genericEditor = EditorInitWithObjectMethod.Invoke(null, new object[] { content, index }) as ContractFormBase;

                genericEditor.OnClose = ReloadContent;
            }
            if (GUILayout.Button("Delete"))
            {
                if (EditorUtility.DisplayDialog("Deleting Content", "You can't get this back if you delete it. Are you sure you want to delete it?", "Yes I hate this"))
                {
                    Data.Remove(content);
                    WriteData();
                }
            }
            GUILayout.Space(6);
        }
        EditorGUILayout.EndHorizontal();
        GUILayout.Space(6);
    }