{
  "$schema": "http://www.lavishsoft.com/schema/lgui2Package.json",
  "templates": {
    "property_header": {
      "type": "panel",
      "borderBrush": {
        "color": "#f4f3ee"
      },
      "borderThickness": [0, 0, 0, 1],
      "margin": [0, 0, 0, 15]
    },
    "property_group": {
      "type": "stackpanel",
      "orientation": "vertical",
      "borderBrush": {
        "color": "#f4f3ee"
      },
      "borderThickness": [1, 1, 1, 1],
      "padding": [5, 5, 5, 5],
      "margin": [5, 5, 5, 5]
    }
  },
  "elements": [
    {
      "type": "window",
      "skin": "mr.dark",
      "title": "MR Quest Writer",
      "name": "mr.quest_writer.window",
      "borderThickness": 2,
      "hideOnClose": false,
      "minSize": {
        "width": 650,
        "height": 350
      },
      "maxSize": {
        "width": 950,
        "height": 650
      },

      "eventHandlers": {
        "onCloseButtonClick": ["method", "MRQuestWriterController", "OnClose"]
      },
      "content": {
        "type": "stackpanel",
        "name": "mr.quest_writer.content",
        "uniform": true,
        "heightFactor": 1,
        "orientation": "horizontal",
        "children": [
          {
            "type": "panel",
            "visibility": "hidden",
            "name": "MRQuestWriterController.events"
          },
          {
            "type": "dockpanel",
            "widthFactor": 0.2,
            "orientation": "vertical",
            "children": [
              {
                "type": "stackpanel",
                "name": "mr.quest_writer.controls",
                "margin": [5, 5, 15, 5],
                "_dock": "top",
                "children": [
                  {
                    "type": "stackpanel",
                    "widthFactor": 1,
                    "children": [
                      {
                        "type": "textblock",
                        "text": "Quest Name:",
                        "horizontalAlignment": "left",
                        "widthFactor": 1
                      },
                      {
                        "type": "textbox",
                        "name": "mr.quest_writer.quest_name",
                        "horizontalAlignment": "left",
                        "widthFactor": 1
                      }
                    ]
                  },
                  {
                    "type": "wrappanel",
                    "widthFactor": 1,
                    "orientation": "horizontal",
                    "childSize": {
                      "width": 75,
                      "height": 35
                    },
                    "children": [
                      {
                        "type": "button",
                        "name": "mr.quest_writer.npc_dialog",
                        "content": "NPC Dialog",
                        "widthFactor": 1,
                        "_stepType": "npc_dialog",
                        "eventHandlers": {
                          "onRelease": [
                            "method",
                            "MRQuestWriterController",
                            "OnConfigureNewStep"
                          ]
                        }
                      },
                      {
                        "type": "button",
                        "name": "mr.quest_writer.run_path",
                        "content": "Run Path",
                        "_stepType": "run_path",
                        "widthFactor": 1,
                        "eventHandlers": {
                          "onRelease": [
                            "method",
                            "MRQuestWriterController",
                            "OnConfigureNewStep"
                          ]
                        }
                      },
                      {
                        "type": "button",
                        "name": "mr.quest_writer.kill_mobs",
                        "content": "Kill Mobs",
                        "_stepType": "kill_mobs",
                        "widthFactor": 1,
                        "eventHandlers": {
                          "onRelease": [
                            "method",
                            "MRQuestWriterController",
                            "OnConfigureNewStep"
                          ]
                        }
                      }
                    ]
                  }
                ]
              },
              {
                "type": "panel",
                "widthFactor": 1,
                "_dock": "bottom",
                "margin": [0, 15, 0, 0],
                "children": [
                  {
                    "type": "button",
                    "content": "Add Step",
                    "widthFactor": 1,
                    "eventHandlers": {
                      "onRelease": [
                        "method",
                        "MRQuestWriterController",
                        "OnAddStepButtonClick"
                      ]
                    }
                  }
                ]
              },
              {
                "type": "panel",
                "widthFactor": 1,
                "_dock": "bottom",
                "name": "mr.quest_writer.properties_panel",
                "children": []
              }
            ]
          },
          {
            "type": "stackpanel",
            "heightFactor": 1,
            "widthFactor": 1,
            "children": [
              {
                "type": "textblock",
                "text": "Quest Steps:",
                "horizontalAlignment": "left",
                "widthFactor": 1
              },
              {
                "type": "listbox",
                "name": "mr.quest_writer.quest_steps",
                "heightFactor": 1,
                "widthFactor": 1,
                "itemsBinding": {
                  "pullFormat": "${MRQuestWriterController.GetQuestStepsForDisplay}",
                  "autoPull": false,
                  "pullHook": {
                    "elementName": "MRQuestWriterController.events",
                    "flags": "global",
                    "event": "onNewStepAdded"
                  }
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
