From 8c03cb788422147b843af34c7884b36ee288da7a Mon Sep 17 00:00:00 2001 From: Matthias Melcher Date: Wed, 25 Oct 2023 14:28:17 +0200 Subject: [PATCH] FLUID: Updates file format documentation --- fluid/README_fl.txt | 60 +++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 58 insertions(+), 2 deletions(-) diff --git a/fluid/README_fl.txt b/fluid/README_fl.txt index 1845a1f12..3e101dea6 100644 --- a/fluid/README_fl.txt +++ b/fluid/README_fl.txt @@ -155,6 +155,8 @@ an Option is missing, a default value is assumed. "i18n_type" : integer 0=default=none, 1=gettext, 2=catgets +--- the following list is valid until June 2023 + "i18n_function" : function name, e.g. “gettext” "i18n_static_function" : function name, e.g. “gettext_noop” @@ -163,6 +165,18 @@ an Option is missing, a default value is assumed. "i18n_set" : string +--- the following list is valid from June 2023 + + "i18n_gnu_function" : function name, e.g. “gettext” + + "i18n_gnu_static_function" : function name, e.g. “gettext_noop” + + "i18n_pos_file" : file name + + "i18n_pos_set" : string + +--- end of June 2023 changes + "i18n_include" : file name, e.g. “” "i18n_conditional" : string @@ -174,9 +188,10 @@ an Option is missing, a default value is assumed. "code_name" : can be the full filename, or just the extension e.g. “.cxx” - "snap" : starting in V1.4 since May 2023, the 'snap' keyword can be + "snap" : starting in V1.4 from May 2023, the 'snap' keyword can be used to store the selected layout and preset and include more suites - of presets. The format looks like this: + of presets. The following block can be skipped by reading it as a + single word. The format looks like this: snap { optional snap Word since 5.2023 ver 1 version of following data @@ -196,6 +211,23 @@ an Option is missing, a default value is assumed. "gridy" : ignored + "shell_commands" : starting in V1.4 from Sep 2023, the 'shell_commands' + keyword can be used to store user configurable shell commands in a + project file. The following block can be skipped by reading it as a + single word. + + shell_commands { + command { + name + label + shortcut (optional if not 0) + condition (optional if not 0, see Fd_Shell_Command enum) + condition_data (optional if not "") + command (optional, but usually there) + flags (optional if not 0, see Fd_Shell_Command 2nd enum) + } ( repeat as needed) + } + Note: There is no keyword that marks the end of the Options section. The Option list ends when a Word is not in the Options list and it is in the list of known Types. @@ -283,6 +315,7 @@ The list of known Types and their inheritance is: | | +-- Fl_Scroll | | +-- Fl_Tile | | +-- Fl_Wizard + | | +-- Fl_Grid | +-- Fl_Menu_Type (note: can't be written) | | +-- Fl_Menu_Button | | +-- Fl_Choice @@ -337,6 +370,10 @@ mutually exclusive. Note: It is possible that the same property by name has different arguments when used in a different Type. +Every node can have properties that it holds for its parent. Parent properties +are stored as "parent_properties { ...list... }". If a node encounters this +property tag, it must ask its parent to interpret the contents of that list. +See Fl_Grid for an example. Type Fl_Type @@ -472,6 +509,25 @@ Type "Fl_Window" : C++ variable name it ensures that window is not created as a subwindow. ... : inherits more from Fl_Widget (not Fl_Group) +Type "Fl_Grid" : C++ variable name + + "dimensions" : {int rows, int cols} + "margin" : {int left, int top, int right, int bottom} + "gap" : {int row gap, int col gap} + "rowheights" : {int h, ...*rows} + "rowweights" : {int h, ...*rows} + "rowgaps" : {int h, ...*rows} + "colwidths" : {int h, ...*cols} + "colweights" : {int h, ...*cols} + "colgaps" : {int h, ...*cols} + + Fl_Grid can also produce parent properties in their children + + "location" : {int row, int col} + "colspan" " + "rowspan" + "align" : see Fl_Grid_Align enum + "min_size" : {int width, int height} Please report errors and omissions to the fltk.coredev or fltk.general Google group. Thank you.