# This file serves as documentation for config parameters. One may
# copy and edit this file to configure a new menu layout.
# The snippets in this file may be copied into the main printer.cfg file.
# See the "example.cfg" file for description of common config parameters.

# Available options in menu Jinja2 template context:
# Read-only attributes for menu element:
#   menu.width - element width (number of display columns)
#   menu.ns - element namespace
#   menu.event - name of the event that triggered the script
#   menu.input - input value, only available in input script context
# List of actions for menu element:
#   menu.back(force, update) - will execute menu back command, optional boolean parameters <force> and <update>.
#                      When <force> is set True then it will also stop editing. Default value is False
#                      When <update> is set False then parent container items are not updated. Default value is True
#   menu.exit(force) - will execute menu exit command, optional boolean parameter <force> default value False
#                      When <force> is set True then it will also stop editing. Default value is False

# Common parameters available for all menu config sections.
#[menu some_name]
#type:
#   One of command, input, list, text:
#       command - basic menu element with various script triggers
#       input   - same like 'command' but has value changing capabilities.
#                 Press will start/stop edit mode.
#       list    - it allows for menu items to be grouped together in a scrollable list.
#                 Add to the list by creating menu configurations
#                 using "some_list" as a prefix - for example: [menu some_list some_item_in_the_list]
#       vsdlist - same as 'list' but will append files from virtual sdcard (will be removed in the future)
#name:
#   Name of menu item - evaluated as a template.
#enable:
#   Template that evaluates to True or False.
#index:
#   Position where an item needs to be inserted in list
#   By default the item is added at the end. This parameter is optional.

#[menu some_list]
#type: list
#name:
#enable:

#[menu some_list some_command]
#type: command
#name:
#enable:
#gcode:
#   Script to run on button click or long click. Evaluated as a template.

#[menu some_list some_input]
#type: input
#name:
#enable:
#input:
#   Initial value to use when editing - evaluated as a template.
#   Result must be float.
#input_min:
#   Minimum value of range - evaluated as a template.
#   Default -99999.
#input_max:
#   Maximum value of range - evaluated as a template.
#   Default 99999.
#input_step:
#   Editing step - Must be a positive integer or float value.
#   It has internal fast rate step. When (input_max - input_min) / input_step > 100
#   then fast rate step is  10 * input_step else fast rate step is same input_step
#realtime:
#   This attribute accepts static boolean value.
#   When enabled then gcode script is run after each value change.
#   The default is False. This parameter is optional.
#gcode:
#   Script to run on button click, long click or value change. Evaluated as a template.
#   The button click will trigger the edit mode start or end.