{
    "layout1": {
        "type": "layout",
        "pages": ["page1", "page2", "page3", "page4", "page5"],
        "page1": {
            "type": "page",
            "title": "Visible settings",
            "sections": ["section0", "section1", "section2"]
        },
        "page2": {
            "type": "page",
            "title": "Choosers",
            "sections": ["section3", "section4", "section6"]
        },
        "page3": {
            "type": "page",
            "title": "Command settings",
            "sections": ["section5"]
        },
        "page4": {
            "type": "page",
            "title": "Editable list settings",
            "sections": ["section7"]
        },
        "page5": {
            "type": "page",
            "title": "Dependencies",
            "sections": ["section8", "section9"]
        },
        "section0": {
            "type": "section",
            "title": "Info",
            "keys": ["label-info"]
        },
        "section1": {
            "type": "section",
            "title": "Panel settings",
            "keys": ["icon-name", "use-custom-label", "custom-label", "color", "spinner-number"]
        },
        "section3": {
            "type": "section",
            "title": "File choosers",
            "keys": ["file-select", "directory-select", "sound-select"]
        },
        "section2": {
            "type": "section",
            "title": "Menu settings",
            "keys": ["combo-selection", "scale-demo"]
        },
        "section4": {
            "type": "section",
            "title": "Animation settings",
            "keys": ["tween-function", "effect-style"]
        },
        "section5": {
            "type": "section",
            "title": "Command settings",
            "keys": ["signal-test", "keybinding-test", "demo-button", "long-text", "custom-widget"]
        },
        "section6": {
            "type": "section",
            "title": "Other choosers",
            "keys": ["font-select", "date-select", "time-select"]
        },
        "section7": {
            "type": "section",
            "title": "My list",
            "keys": ["tree"]
        },
        "section8": {
            "type": "section",
            "title": "Show dependencies section",
            "keys": ["show-deps-section"]
        },
        "section9": {
            "type": "section",
            "title": "Dependencies section",
            "dependency": "show-deps-section",
            "keys": ["deps-info", "dep-combo", "dep-combo-info1", "dep-combo-info2", "dep-spin", "dep-spin-info1", "dep-spin-info2"]
        }
    },
    "label-info" : {
        "type" : "label",
        "description" : "Play with these widgets and see the automatic reaction in the panel applet.\n\nThis is a label, and the content can't be modified nor accessed. You may want to use a label to show additional hints or instructions, for example."
    },
    "icon-name": {
        "type": "iconfilechooser",
        "default" : "help",
        "description" : "The icon to use in the panel",
        "tooltip" : "Select an icon file, or you can type an icon name into the entry box"
    },
    "color" : {
        "type": "colorchooser",
        "default" : "grey",
        "description" : "The background color for the applet",
        "tooltip" : "Click the button to select a new background color for this applet"
    },
    "spinner-number" : {
        "type": "spinbutton",
        "default" : 250,
        "min" : 0,
        "max" : 400,
        "step" : 5,
        "units" : "pixels",
        "description" : "Applet width in the panel",
        "tooltip" : "Increase or decrease this spinner value to make the applet wider or narrower in the panel"
    },
    "combo-selection" : {
        "type": "combobox",
        "default" : "option 1",
        "description" : "Please pick an option",
        "options" : {
            "First Choice" : "option 1",
            "Second Choice" : "option 2",
            "Third Choice" : "option 3",
            "Fourth Choice" : "option 4"
        },
        "tooltip" : "A combo selection can select between int, boolean, float, and string values"
    },
    "scale-demo" : {
        "type" : "scale",
        "default" : 0.5,
        "min" : 0.0,
        "max" : 1.0,
        "step" : 0.05,
        "show-value" : false,
        "description" : "Here is a demonstration of bidirectional control",
        "tooltip" : "If you adjust this scale, it updates in the applet.  If you adjust the scale in the applet, it updates here"
    },
    "use-custom-label" : {
        "type" : "switch",
        "default" : false,
        "description": "Check this to use a custom label",
        "tooltip": "Checking this box allows you to set a custom label in the field below - this demonstrates setting dependencies"
    },
    "custom-label" : {
        "type" : "entry",
        "default" : "custom",
        "description" : "Custom Applet Label",
        "dependency" : "use-custom-label",
        "tooltip" : "Set your custom label here.  This field is unavailable unless the switch above is enabled"
    },
    "tween-function" : {
        "type" : "tween",
        "default" : "EaseNone",
        "description" : "Animation type",
        "tooltip": "A tween chooser has as value a string, which you can pass as transition to Tweener.addTween()"
    },
    "effect-style" : {
        "type" : "effect",
        "description" : "Effect type",
        "default" : "none",
        "possible" : ["none", "scale", "fade", "blend", "move", "flyUp", "flyDown", "traditional"]
    },
    "demo-button" : {
        "type" : "button",
        "description" : "Don't Press This Button!!!",
        "callback" : "on_config_button_pressed",
        "tooltip" : "Pressing this button activates a callback method in the applet - go ahead, press it."
    },
    "signal-test" : {
        "type" : "switch",
        "description" : "This is a test widget for individual key signal firing",
        "default" : false
    },
    "keybinding-test" : {
        "type" : "keybinding",
        "description" : "Set the keybinding here to activate an action",
        "default" : "<Control>F8"
    },
    "file-select" : {
        "type" : "filechooser",
        "description" : "Choose a file",
        "default" : "~/",
        "select-dir" : false
    },
    "directory-select" : {
        "type" : "filechooser",
        "description" : "Choose a directory",
        "default" : "",
        "select-dir" : true
    },
    "sound-select" : {
        "type" : "soundfilechooser",
        "description" : "Choose a sound",
        "default" : ""
    },
    "font-select" : {
        "type" : "fontchooser",
        "description" : "Choose a font",
        "default" : "sans 12"
    },
    "long-text" : {
        "type" : "textview",
        "description" : "You can type paragraphs and lists here",
        "default" : "",
        "tooltip" : "This setting type is useful for multi-line lists, and text that is too long to fit in an entry widget.\nYou can manually set the height of the text view with the 'height' property. This one is set to 150. Default is 200.",
        "height" : 150
    },
    "date-select" : {
        "type" : "datechooser",
        "description" : "Choose a Date",
        "default" : {
            "d" : 1,
            "m" : 1,
            "y" : 2000
        }
    },
    "time-select" : {
        "type" : "timechooser",
        "description" : "Choose a Time",
        "default" : {
            "h" : 12,
            "m" : 0,
            "s" : 0
        }
    },
    "tree" : {
        "type" : "list",
        "description" : "Custom tree widget",
        "columns" : [
            {"id": "name", "title": "Name", "type": "string"},
            {"id": "resident", "title": "Resident", "type": "boolean"},
            {"id": "address", "title": "Address", "type": "string", "default": "none"},
            {"id": "number", "title": "Id number", "type": "integer", "align": 0.5, "min": 0, "max": 100},
            {"id": "icon", "title": "Icon", "type": "icon"},
            {"id": "key", "title": "Shortcut key", "type": "keybinding"},
            {"id": "file", "title": "File Path", "type": "file", "select-dir": false},
            {"id": "color", "title": "Color", "type": "integer", "default": 5, "options": {
                    "red": 5,
                    "blue": 4,
                    "green": 3
                }}
        ],
        "default" : []
    },
    "show-deps-section" : {
        "type" : "switch",
        "default" : true,
        "description": "Show the dependencies section",
        "tooltip": "Checking this box shows the Dependencies section below. Unchecking hides it."
    },
    "deps-info" : {
        "type" : "label",
        "description" : "You can see this section because the switch above is on. Try switching it off and see what happens."
    },
    "dep-combo" : {
        "type" : "combobox",
        "description" : "Show info",
        "default" : "option1",
        "options" : {
            "Show info #1" : "option1",
            "Show info #2" : "option2",
            "Don't show info #1 or #2" : "option3"
        }
    },
    "dep-combo-info1" : {
        "type" : "label",
        "description" : "Info #1: You are seeing this info because the first option is selected in the combo box above. Try selecting different options to see different information.",
        "dependency" : "dep-combo=option1"
    },
    "dep-combo-info2" : {
        "type" : "label",
        "description" : "Info #2: You are seeing different text now because you selected the second option in the combo box above.",
        "dependency" : "dep-combo=option2"
    },
    "dep-spin" : {
        "type" : "spinbutton",
        "description" : "Number value",
        "min" : 0,
        "max" : 10,
        "step" : 1,
        "units" : "",
        "default" : 0
    },
    "dep-spin-info1" : {
        "type" : "label",
        "description" : "The value of the spinner above is less than 5",
        "dependency" : "dep-spin<5"
    },
    "dep-spin-info2" : {
        "type" : "label",
        "description" : "The value of the spinner above is greater than or equal to 5",
        "dependency" : "dep-spin>=5"
    },
    "custom-widget": {
        "type" : "custom",
        "file" : "CustomWidget.py",
        "widget" : "MyWidget",
        "description" : "Try out this custom widget!",
        "default" : "5"
    }
}
