From 1f204c6dac0978d9f5ec547390b188c58c14846a Mon Sep 17 00:00:00 2001 From: Cooldude2606 Date: Tue, 17 Sep 2019 21:09:15 +0100 Subject: [PATCH] Added some structor concepts --- README.md | 3 +- docs/addons/Advanced-Start.html | 2 +- docs/addons/Chat-Popups.html | 2 +- docs/addons/Chat-Reply.html | 2 +- docs/addons/Compilatron.html | 2 +- docs/addons/Damage-Popups.html | 2 +- docs/addons/Death-Logger.html | 2 +- docs/addons/Discord-Alerts.html | 2 +- docs/addons/Player-Colours.html | 2 +- docs/addons/Pollution-Grading.html | 2 +- docs/addons/Scorched-Earth.html | 2 +- docs/addons/Spawn-Area.html | 2 +- docs/commands/Admin-Chat.html | 2 +- docs/commands/Bonus.html | 2 +- docs/commands/Cheat-Mode.html | 2 +- docs/commands/Clear-Inventory.html | 2 +- docs/commands/Debug.html | 2 +- docs/commands/Find.html | 2 +- docs/commands/Help.html | 2 +- docs/commands/Home.html | 2 +- docs/commands/Interface.html | 2 +- docs/commands/Jail.html | 2 +- docs/commands/Kill.html | 2 +- docs/commands/Me.html | 2 +- docs/commands/Rainbow.html | 2 +- docs/commands/Repair.html | 2 +- docs/commands/Reports.html | 2 +- docs/commands/Roles.html | 2 +- docs/commands/Spawn.html | 2 +- docs/commands/Tag.html | 2 +- docs/commands/Teleport.html | 2 +- docs/commands/Warnings.html | 2 +- docs/configs/Advanced-Start.html | 2 +- docs/configs/Bonuses.html | 2 +- docs/configs/Chat-Reply.html | 2 +- docs/configs/Commands-Auth-Admin.html | 2 +- docs/configs/Commands-Auth-Roles.html | 2 +- .../Commands-Auth-Runtime-Disable.html | 2 +- docs/configs/Commands-Parse-Roles.html | 2 +- docs/configs/Commands-Parse.html | 2 +- docs/configs/Compilatron.html | 2 +- docs/configs/Death-Logger.html | 2 +- docs/configs/Discord-Alerts.html | 2 +- docs/configs/File-Loader.html | 2 +- docs/configs/Permission-Groups.html | 2 +- docs/configs/Player-List.html | 2 +- docs/configs/Pollution-Grading.html | 2 +- docs/configs/Popup-Messages.html | 2 +- docs/configs/Preset-Player-Colours.html | 2 +- docs/configs/Repair.html | 2 +- docs/configs/Rockets.html | 2 +- docs/configs/Roles.html | 2 +- docs/configs/Science.html | 2 +- docs/configs/Scorched-Earth.html | 2 +- docs/configs/Spawn-Area.html | 2 +- docs/configs/Tasks.html | 2 +- docs/configs/Warnings.html | 2 +- docs/configs/Warps.html | 2 +- docs/control/Jail.html | 2 +- docs/control/Production.html | 2 +- docs/control/Reports.html | 2 +- docs/control/Rockets.html | 2 +- docs/control/Tasks.html | 2 +- docs/control/Warnings.html | 2 +- docs/control/Warps.html | 2 +- docs/core/Commands.html | 2 +- docs/core/Common-Library.html | 2 +- docs/core/Gui.html | 512 +++++++++++++++++- docs/core/Permissions-Groups.html | 2 +- docs/core/Roles.html | 2 +- docs/core/Store.html | 2 +- docs/core/Sudo.html | 2 +- docs/core/Toolbar.html | 2 +- docs/guis/Player-List.html | 2 +- docs/guis/Rocket-Info.html | 2 +- docs/guis/Science-Info.html | 2 +- docs/guis/Task-List.html | 2 +- docs/guis/Warps-List.html | 2 +- docs/index.html | 2 +- docs/modules/control.html | 2 +- .../utils.alien_evolution_progress.html | 2 +- docs/modules/utils.core.html | 2 +- docs/modules/utils.debug.html | 8 +- docs/modules/utils.dump_env.html | 2 +- docs/modules/utils.event.html | 2 +- docs/modules/utils.event_core.html | 2 +- docs/modules/utils.math.html | 23 +- docs/modules/utils.recipe_locker.html | 2 +- docs/modules/utils.state_machine.html | 12 +- docs/modules/utils.table.html | 54 +- docs/modules/utils.task.html | 2 +- docs/modules/utils.timestamp.html | 2 +- docs/topics/license.html | 2 +- docs/topics/readme.md.html | 2 +- expcore/gui.lua | 7 + expcore/gui/concepts/button.lua | 2 +- expcore/gui/concepts/checkbox.lua | 2 +- expcore/gui/concepts/dropdown.lua | 2 +- expcore/gui/concepts/elem_button.lua | 2 +- expcore/gui/concepts/empty.lua | 26 + expcore/gui/concepts/flow.lua | 32 ++ expcore/gui/concepts/frame.lua | 4 +- expcore/gui/concepts/label.lua | 29 + expcore/gui/concepts/line.lua | 25 + expcore/gui/concepts/progress_bar.lua | 2 +- expcore/gui/concepts/scroll.lua | 37 ++ expcore/gui/concepts/slider.lua | 2 +- expcore/gui/concepts/table.lua | 48 ++ expcore/gui/concepts/textbox.lua | 2 +- expcore/gui/concepts/textfield.lua | 2 +- utils/debug.lua | 2 +- utils/math.lua | 3 +- utils/state_machine.lua | 4 +- utils/table.lua | 12 +- 114 files changed, 880 insertions(+), 153 deletions(-) create mode 100644 expcore/gui/concepts/empty.lua create mode 100644 expcore/gui/concepts/flow.lua create mode 100644 expcore/gui/concepts/label.lua create mode 100644 expcore/gui/concepts/line.lua create mode 100644 expcore/gui/concepts/scroll.lua create mode 100644 expcore/gui/concepts/table.lua diff --git a/README.md b/README.md index 2c9d02e7..8ff71f05 100644 --- a/README.md +++ b/README.md @@ -44,7 +44,7 @@ Explosive Gaming (often ExpGaming) is a server hosting community with a strong f ## Contributing -All are welcome to make pull requests and issues for this scenario, if you are in any doubt please ask someone in our [discord]. If you do not know lua and don't feel like learning you can always make a [feature request]. Please keep in mind while making code changes: +All are welcome to make pull requests and issues for this scenario, if you are in any doubt please ask someone in our [discord]. If you do not know lua and don't feel like learning you can always make a [feature request]. All our docs can be found [here][docs]. Please keep in mind while making code changes: * New features should have the branch names: `feature/feature-name` * New features are merged into `dev` after it has been completed. @@ -111,6 +111,7 @@ All are welcome to make pull requests and issues for this scenario, if you are i The Explosive Gaming codebase is licensed under the [GNU General Public License v3.0](LICENSE) +[docs]: https://explosivegaming.github.io/scenario/ [issues]: https://github.com/explosivegaming/scenario/issues/new/choose [website]: https://explosivegaming.nl [discord]: https://discord.explosivegaming.nl diff --git a/docs/addons/Advanced-Start.html b/docs/addons/Advanced-Start.html index 355bc495..faf5372f 100644 --- a/docs/addons/Advanced-Start.html +++ b/docs/addons/Advanced-Start.html @@ -349,7 +349,7 @@ generated by LDoc diff --git a/docs/addons/Chat-Popups.html b/docs/addons/Chat-Popups.html index 6a9a5437..1cb898d6 100644 --- a/docs/addons/Chat-Popups.html +++ b/docs/addons/Chat-Popups.html @@ -350,7 +350,7 @@ generated by LDoc diff --git a/docs/addons/Chat-Reply.html b/docs/addons/Chat-Reply.html index ba20d5c1..be26fd7b 100644 --- a/docs/addons/Chat-Reply.html +++ b/docs/addons/Chat-Reply.html @@ -377,7 +377,7 @@ generated by LDoc diff --git a/docs/addons/Compilatron.html b/docs/addons/Compilatron.html index c9aa9a5a..c1102fc7 100644 --- a/docs/addons/Compilatron.html +++ b/docs/addons/Compilatron.html @@ -586,7 +586,7 @@ generated by LDoc diff --git a/docs/addons/Damage-Popups.html b/docs/addons/Damage-Popups.html index 9768b669..10d6f5e9 100644 --- a/docs/addons/Damage-Popups.html +++ b/docs/addons/Damage-Popups.html @@ -350,7 +350,7 @@ generated by LDoc diff --git a/docs/addons/Death-Logger.html b/docs/addons/Death-Logger.html index 781142d9..a58f573c 100644 --- a/docs/addons/Death-Logger.html +++ b/docs/addons/Death-Logger.html @@ -405,7 +405,7 @@ generated by LDoc diff --git a/docs/addons/Discord-Alerts.html b/docs/addons/Discord-Alerts.html index 7a218c04..bec86481 100644 --- a/docs/addons/Discord-Alerts.html +++ b/docs/addons/Discord-Alerts.html @@ -461,7 +461,7 @@ generated by LDoc diff --git a/docs/addons/Player-Colours.html b/docs/addons/Player-Colours.html index 6ef982b9..dc617ebf 100644 --- a/docs/addons/Player-Colours.html +++ b/docs/addons/Player-Colours.html @@ -405,7 +405,7 @@ generated by LDoc diff --git a/docs/addons/Pollution-Grading.html b/docs/addons/Pollution-Grading.html index 46544811..5cc620da 100644 --- a/docs/addons/Pollution-Grading.html +++ b/docs/addons/Pollution-Grading.html @@ -321,7 +321,7 @@ generated by LDoc diff --git a/docs/addons/Scorched-Earth.html b/docs/addons/Scorched-Earth.html index 88da4c0a..3132f77a 100644 --- a/docs/addons/Scorched-Earth.html +++ b/docs/addons/Scorched-Earth.html @@ -405,7 +405,7 @@ generated by LDoc diff --git a/docs/addons/Spawn-Area.html b/docs/addons/Spawn-Area.html index 2faa81dc..5f29f43e 100644 --- a/docs/addons/Spawn-Area.html +++ b/docs/addons/Spawn-Area.html @@ -377,7 +377,7 @@ generated by LDoc diff --git a/docs/commands/Admin-Chat.html b/docs/commands/Admin-Chat.html index 54195af8..3f32bbfe 100644 --- a/docs/commands/Admin-Chat.html +++ b/docs/commands/Admin-Chat.html @@ -389,7 +389,7 @@ generated by LDoc diff --git a/docs/commands/Bonus.html b/docs/commands/Bonus.html index 450e04f6..72e63565 100644 --- a/docs/commands/Bonus.html +++ b/docs/commands/Bonus.html @@ -501,7 +501,7 @@ generated by LDoc diff --git a/docs/commands/Cheat-Mode.html b/docs/commands/Cheat-Mode.html index 7a662f0a..e3d0fe61 100644 --- a/docs/commands/Cheat-Mode.html +++ b/docs/commands/Cheat-Mode.html @@ -362,7 +362,7 @@ generated by LDoc diff --git a/docs/commands/Clear-Inventory.html b/docs/commands/Clear-Inventory.html index 62f59464..cf5e879b 100644 --- a/docs/commands/Clear-Inventory.html +++ b/docs/commands/Clear-Inventory.html @@ -389,7 +389,7 @@ generated by LDoc diff --git a/docs/commands/Debug.html b/docs/commands/Debug.html index 74239e71..943927e9 100644 --- a/docs/commands/Debug.html +++ b/docs/commands/Debug.html @@ -366,7 +366,7 @@ generated by LDoc diff --git a/docs/commands/Find.html b/docs/commands/Find.html index 84387d0a..eade86b7 100644 --- a/docs/commands/Find.html +++ b/docs/commands/Find.html @@ -361,7 +361,7 @@ generated by LDoc diff --git a/docs/commands/Help.html b/docs/commands/Help.html index 21b3aeaa..ba5015dd 100644 --- a/docs/commands/Help.html +++ b/docs/commands/Help.html @@ -405,7 +405,7 @@ generated by LDoc diff --git a/docs/commands/Home.html b/docs/commands/Home.html index d8637e6f..2be91e72 100644 --- a/docs/commands/Home.html +++ b/docs/commands/Home.html @@ -459,7 +459,7 @@ generated by LDoc diff --git a/docs/commands/Interface.html b/docs/commands/Interface.html index 224c35ee..9f411202 100644 --- a/docs/commands/Interface.html +++ b/docs/commands/Interface.html @@ -417,7 +417,7 @@ generated by LDoc diff --git a/docs/commands/Jail.html b/docs/commands/Jail.html index 432028b8..fdef4831 100644 --- a/docs/commands/Jail.html +++ b/docs/commands/Jail.html @@ -612,7 +612,7 @@ generated by LDoc diff --git a/docs/commands/Kill.html b/docs/commands/Kill.html index 1d35117f..6c3d62f5 100644 --- a/docs/commands/Kill.html +++ b/docs/commands/Kill.html @@ -390,7 +390,7 @@ generated by LDoc diff --git a/docs/commands/Me.html b/docs/commands/Me.html index aebe8ab4..ddb01af6 100644 --- a/docs/commands/Me.html +++ b/docs/commands/Me.html @@ -361,7 +361,7 @@ generated by LDoc diff --git a/docs/commands/Rainbow.html b/docs/commands/Rainbow.html index 37baf73b..beb18d54 100644 --- a/docs/commands/Rainbow.html +++ b/docs/commands/Rainbow.html @@ -389,7 +389,7 @@ generated by LDoc diff --git a/docs/commands/Repair.html b/docs/commands/Repair.html index 8b302752..8cb83cdf 100644 --- a/docs/commands/Repair.html +++ b/docs/commands/Repair.html @@ -322,7 +322,7 @@ generated by LDoc diff --git a/docs/commands/Reports.html b/docs/commands/Reports.html index dc80bff6..f5464b40 100644 --- a/docs/commands/Reports.html +++ b/docs/commands/Reports.html @@ -586,7 +586,7 @@ generated by LDoc diff --git a/docs/commands/Roles.html b/docs/commands/Roles.html index da4ffc81..30cdb86f 100644 --- a/docs/commands/Roles.html +++ b/docs/commands/Roles.html @@ -558,7 +558,7 @@ generated by LDoc diff --git a/docs/commands/Spawn.html b/docs/commands/Spawn.html index 738a91ee..b8135072 100644 --- a/docs/commands/Spawn.html +++ b/docs/commands/Spawn.html @@ -390,7 +390,7 @@ generated by LDoc diff --git a/docs/commands/Tag.html b/docs/commands/Tag.html index eb224a4e..650b981d 100644 --- a/docs/commands/Tag.html +++ b/docs/commands/Tag.html @@ -444,7 +444,7 @@ generated by LDoc diff --git a/docs/commands/Teleport.html b/docs/commands/Teleport.html index 0641f54e..d4b5c5c0 100644 --- a/docs/commands/Teleport.html +++ b/docs/commands/Teleport.html @@ -485,7 +485,7 @@ generated by LDoc diff --git a/docs/commands/Warnings.html b/docs/commands/Warnings.html index 33a5203a..79b3982a 100644 --- a/docs/commands/Warnings.html +++ b/docs/commands/Warnings.html @@ -570,7 +570,7 @@ generated by LDoc diff --git a/docs/configs/Advanced-Start.html b/docs/configs/Advanced-Start.html index 054b7703..3ee81b26 100644 --- a/docs/configs/Advanced-Start.html +++ b/docs/configs/Advanced-Start.html @@ -507,7 +507,7 @@ generated by LDoc diff --git a/docs/configs/Bonuses.html b/docs/configs/Bonuses.html index a11c7015..4f24d85e 100644 --- a/docs/configs/Bonuses.html +++ b/docs/configs/Bonuses.html @@ -238,7 +238,7 @@ generated by LDoc diff --git a/docs/configs/Chat-Reply.html b/docs/configs/Chat-Reply.html index 9ffe93c5..dc328519 100644 --- a/docs/configs/Chat-Reply.html +++ b/docs/configs/Chat-Reply.html @@ -486,7 +486,7 @@ generated by LDoc diff --git a/docs/configs/Commands-Auth-Admin.html b/docs/configs/Commands-Auth-Admin.html index dea29ffd..93162e2f 100644 --- a/docs/configs/Commands-Auth-Admin.html +++ b/docs/configs/Commands-Auth-Admin.html @@ -295,7 +295,7 @@ generated by LDoc diff --git a/docs/configs/Commands-Auth-Roles.html b/docs/configs/Commands-Auth-Roles.html index a344862c..33fae8e3 100644 --- a/docs/configs/Commands-Auth-Roles.html +++ b/docs/configs/Commands-Auth-Roles.html @@ -321,7 +321,7 @@ generated by LDoc diff --git a/docs/configs/Commands-Auth-Runtime-Disable.html b/docs/configs/Commands-Auth-Runtime-Disable.html index dff32e2e..8f244e55 100644 --- a/docs/configs/Commands-Auth-Runtime-Disable.html +++ b/docs/configs/Commands-Auth-Runtime-Disable.html @@ -443,7 +443,7 @@ generated by LDoc diff --git a/docs/configs/Commands-Parse-Roles.html b/docs/configs/Commands-Parse-Roles.html index 60343ebc..c190f4f7 100644 --- a/docs/configs/Commands-Parse-Roles.html +++ b/docs/configs/Commands-Parse-Roles.html @@ -355,7 +355,7 @@ generated by LDoc diff --git a/docs/configs/Commands-Parse.html b/docs/configs/Commands-Parse.html index 1361775e..11843168 100644 --- a/docs/configs/Commands-Parse.html +++ b/docs/configs/Commands-Parse.html @@ -339,7 +339,7 @@ see ./expcore/commands.lua for more details

generated by LDoc diff --git a/docs/configs/Compilatron.html b/docs/configs/Compilatron.html index 37ca361d..f509d0f0 100644 --- a/docs/configs/Compilatron.html +++ b/docs/configs/Compilatron.html @@ -355,7 +355,7 @@ generated by LDoc diff --git a/docs/configs/Death-Logger.html b/docs/configs/Death-Logger.html index c8c36fab..ee2283be 100644 --- a/docs/configs/Death-Logger.html +++ b/docs/configs/Death-Logger.html @@ -417,7 +417,7 @@ generated by LDoc diff --git a/docs/configs/Discord-Alerts.html b/docs/configs/Discord-Alerts.html index 233d45df..18a6d7a5 100644 --- a/docs/configs/Discord-Alerts.html +++ b/docs/configs/Discord-Alerts.html @@ -238,7 +238,7 @@ generated by LDoc diff --git a/docs/configs/File-Loader.html b/docs/configs/File-Loader.html index aba7b05d..2944ffe3 100644 --- a/docs/configs/File-Loader.html +++ b/docs/configs/File-Loader.html @@ -241,7 +241,7 @@ generated by LDoc diff --git a/docs/configs/Permission-Groups.html b/docs/configs/Permission-Groups.html index 8656a1f1..0fc205fb 100644 --- a/docs/configs/Permission-Groups.html +++ b/docs/configs/Permission-Groups.html @@ -296,7 +296,7 @@ generated by LDoc diff --git a/docs/configs/Player-List.html b/docs/configs/Player-List.html index 239f7169..e94579ed 100644 --- a/docs/configs/Player-List.html +++ b/docs/configs/Player-List.html @@ -813,7 +813,7 @@ generated by LDoc diff --git a/docs/configs/Pollution-Grading.html b/docs/configs/Pollution-Grading.html index 3603fe03..bf22c696 100644 --- a/docs/configs/Pollution-Grading.html +++ b/docs/configs/Pollution-Grading.html @@ -385,7 +385,7 @@ generated by LDoc diff --git a/docs/configs/Popup-Messages.html b/docs/configs/Popup-Messages.html index be1095c3..3e57f2a9 100644 --- a/docs/configs/Popup-Messages.html +++ b/docs/configs/Popup-Messages.html @@ -415,7 +415,7 @@ generated by LDoc diff --git a/docs/configs/Preset-Player-Colours.html b/docs/configs/Preset-Player-Colours.html index 133879c0..c81608c3 100644 --- a/docs/configs/Preset-Player-Colours.html +++ b/docs/configs/Preset-Player-Colours.html @@ -325,7 +325,7 @@ generated by LDoc diff --git a/docs/configs/Repair.html b/docs/configs/Repair.html index 88f593ff..59645f20 100644 --- a/docs/configs/Repair.html +++ b/docs/configs/Repair.html @@ -415,7 +415,7 @@ generated by LDoc diff --git a/docs/configs/Rockets.html b/docs/configs/Rockets.html index 35df56b4..c41acf9c 100644 --- a/docs/configs/Rockets.html +++ b/docs/configs/Rockets.html @@ -835,7 +835,7 @@ generated by LDoc diff --git a/docs/configs/Roles.html b/docs/configs/Roles.html index c57368c1..43545c64 100644 --- a/docs/configs/Roles.html +++ b/docs/configs/Roles.html @@ -293,7 +293,7 @@ generated by LDoc diff --git a/docs/configs/Science.html b/docs/configs/Science.html index f52b2fbe..1b4dd89a 100644 --- a/docs/configs/Science.html +++ b/docs/configs/Science.html @@ -355,7 +355,7 @@ generated by LDoc diff --git a/docs/configs/Scorched-Earth.html b/docs/configs/Scorched-Earth.html index b7af3a39..77513933 100644 --- a/docs/configs/Scorched-Earth.html +++ b/docs/configs/Scorched-Earth.html @@ -389,7 +389,7 @@ generated by LDoc diff --git a/docs/configs/Spawn-Area.html b/docs/configs/Spawn-Area.html index 6853d015..9b34fe0d 100644 --- a/docs/configs/Spawn-Area.html +++ b/docs/configs/Spawn-Area.html @@ -745,7 +745,7 @@ generated by LDoc diff --git a/docs/configs/Tasks.html b/docs/configs/Tasks.html index cd84fc0c..57848caa 100644 --- a/docs/configs/Tasks.html +++ b/docs/configs/Tasks.html @@ -385,7 +385,7 @@ generated by LDoc diff --git a/docs/configs/Warnings.html b/docs/configs/Warnings.html index d298e402..4da0c948 100644 --- a/docs/configs/Warnings.html +++ b/docs/configs/Warnings.html @@ -356,7 +356,7 @@ generated by LDoc diff --git a/docs/configs/Warps.html b/docs/configs/Warps.html index ccdb5910..a6c100b1 100644 --- a/docs/configs/Warps.html +++ b/docs/configs/Warps.html @@ -685,7 +685,7 @@ generated by LDoc diff --git a/docs/control/Jail.html b/docs/control/Jail.html index 3858e706..340552b7 100644 --- a/docs/control/Jail.html +++ b/docs/control/Jail.html @@ -1209,7 +1209,7 @@ generated by LDoc diff --git a/docs/control/Production.html b/docs/control/Production.html index 9eab886b..1c4aaf2d 100644 --- a/docs/control/Production.html +++ b/docs/control/Production.html @@ -1330,7 +1330,7 @@ generated by LDoc diff --git a/docs/control/Reports.html b/docs/control/Reports.html index d7397705..8751f13d 100644 --- a/docs/control/Reports.html +++ b/docs/control/Reports.html @@ -1111,7 +1111,7 @@ generated by LDoc diff --git a/docs/control/Rockets.html b/docs/control/Rockets.html index 9f196c46..95acf774 100644 --- a/docs/control/Rockets.html +++ b/docs/control/Rockets.html @@ -985,7 +985,7 @@ generated by LDoc diff --git a/docs/control/Tasks.html b/docs/control/Tasks.html index fb62ed5f..ae05745d 100644 --- a/docs/control/Tasks.html +++ b/docs/control/Tasks.html @@ -1040,7 +1040,7 @@ generated by LDoc diff --git a/docs/control/Warnings.html b/docs/control/Warnings.html index 0343a416..d20d5fca 100644 --- a/docs/control/Warnings.html +++ b/docs/control/Warnings.html @@ -1466,7 +1466,7 @@ generated by LDoc diff --git a/docs/control/Warps.html b/docs/control/Warps.html index b11de74d..54cdd303 100644 --- a/docs/control/Warps.html +++ b/docs/control/Warps.html @@ -1414,7 +1414,7 @@ generated by LDoc diff --git a/docs/core/Commands.html b/docs/core/Commands.html index e72da3ba..d20487b8 100644 --- a/docs/core/Commands.html +++ b/docs/core/Commands.html @@ -1973,7 +1973,7 @@ generated by LDoc diff --git a/docs/core/Common-Library.html b/docs/core/Common-Library.html index 5d3f775f..d2ca792f 100644 --- a/docs/core/Common-Library.html +++ b/docs/core/Common-Library.html @@ -2747,7 +2747,7 @@ Common.table_insert(tbl,50,tbl2) generated by LDoc diff --git a/docs/core/Gui.html b/docs/core/Gui.html index 861627e8..ee72f51c 100644 --- a/docs/core/Gui.html +++ b/docs/core/Gui.html @@ -323,39 +323,63 @@ button:clone('CustomButton') button - The basic button element + Clickable elements that fire on_gui_click when clicked. checkbox - The basic checkbox element + Clickable elements with a cross in the middle that can be turned off or on. dropdown - The basic dropdown element + A drop down list of other elements. elem_button - The basic dropdown element + A button that lets the player pick one of an: item, entity, tile, or signal similar to the filter-select window. + + + empty + A empty widget that just exists. + + + flow + Invisible containers that lay out children either horizontally or vertically. frame - The basic frame element + Grey semi-transparent boxes that contain other elements. + + + frame + A piece of text. + + + line + A vertical or horizontal line. progress_bar - The basic checkbox element + Indicate progress by displaying a partially filled bar. + + + scroll + Similar to a flow but includes the ability to show and use scroll bars. slider - The basic slider element + A number picker. + + + table + An invisible container that lays out children in a specific number of columns. text_box - The text box element + A multi-line text box that supports selection and copy-paste. text_field - The text field element + Boxes of text the user can type in. @@ -636,7 +660,7 @@ button:clone('CustomButton')
-

The basic button element

+

Clickable elements that fire on_gui_click when clicked.

@@ -780,7 +804,7 @@ Gui.clone_concept('button','spr
-

The basic checkbox element

+

Clickable elements with a cross in the middle that can be turned off or on.

@@ -902,7 +926,7 @@ Gui.clone_concept('checkbox','b
-

The basic dropdown element

+

A drop down list of other elements.

@@ -1038,7 +1062,7 @@ Gui.clone_concept('dropdown','d
-

The basic dropdown element

+

A button that lets the player pick one of an: item, entity, tile, or signal similar to the filter-select window.

@@ -1115,6 +1139,121 @@ Gui.clone_concept('elem_button',end) +
+
+
+
+ # + empty +
+
+
+
+ +

A empty widget that just exists.

+

The root GUI element screen is an empty-widget.

+ + + Properties / Events: + +
    + + + + + +
  • + + style + + : + + (string) + + the style that the element will have + +
  • + + +
+ + + + + + + + + + + + Usage: +
-- Making a draggable space styled widget
+local draggable_space =
+Gui.clone_concept('empty','draggable_space')
+:set_style('draggable_space')
+ + +
+
+
+
+ # + flow +
+
+
+
+ +

Invisible containers that lay out children either horizontally or vertically.

+

The root GUI elements (top, left and center; see LuaGui) are flows.

+ + + Properties / Events: + +
    + + + + + +
  • + + direction + + : + + (string) + + the direction that children will be added + +
  • + + +
+ + + + + + + + + + + + Usage: +
-- Making a basic flow, contains a label with hello world
+local basic_flow =
+Gui.clone_concept('flow','basic_flow')
+:define_draw(function(properties,parent,element)
+    element.add{
+        type = 'label',
+        caption = 'Hello, World!'
+    }
+end)
+ +
@@ -1126,8 +1265,8 @@ Gui.clone_concept('elem_button',
-

The basic frame element

-

+

Grey semi-transparent boxes that contain other elements.

+

They have a caption, and, just like flows, they lay out children either horizontally or vertically.

Properties / Events: @@ -1182,7 +1321,7 @@ Gui.clone_concept('elem_button',Usage:
-- Making a basic frame, contains a label with hello world
 local basic_frame =
-Gui.clone_concept('dropdown','basic_frame')
+Gui.clone_concept('frame','basic_frame')
 :set_title('Basic Frame')
 :define_draw(function(properties,parent,element)
     element.add{
@@ -1192,6 +1331,131 @@ Gui.clone_concept('dropdown','b
 end)
+ +
+
+
+ # + frame +
+
+
+
+ +

A piece of text.

+

+ + + Properties / Events: + +
    + + + + + +
  • + + caption + + : + + (string or LocalisedString) + + the caption that will show in the label + +
  • + + + + + +
  • + + description + + : + + (string or LocalisedString) + + the description that will show on the label + +
  • + + +
+ + + + + + + + + + + + Usage: +
-- Making a basic label
+local basic_label =
+Gui.clone_concept('label','basic_label')
+:set_caption('Hello, World!')
+ + +
+
+
+
+ # + line +
+
+
+
+ +

A vertical or horizontal line.

+

+ + + Properties / Events: + +
    + + + + + +
  • + + direction + + : + + (string) + + the direction that children will be added + +
  • + + +
+ + + + + + + + + + + + Usage: +
-- Making a basic frame, contains a label with hello world
+local basic_line =
+Gui.clone_concept('line','basic_line')
+ +
@@ -1203,7 +1467,7 @@ Gui.clone_concept('dropdown','b
-

The basic checkbox element

+

Indicate progress by displaying a partially filled bar.

@@ -1319,6 +1583,85 @@ Gui.clone_concept('progress_bar',end) +
+
+
+
+ # + scroll +
+
+
+
+ +

Similar to a flow but includes the ability to show and use scroll bars.

+

+ + + Properties / Events: + +
    + + + + + +
  • + + horizontal_scroll + + : + + (string) + + the horizontal scroll policy for this scroll pane + +
  • + + + + + +
  • + + vertical_scroll + + : + + (string) + + the vertical scroll policy for this scroll pane + +
  • + + +
+ + + + + + + + + + + + Usage: +
-- Making a basic flow, contains a label with hello world
+local basic_scroll =
+Gui.clone_concept('scroll','basic_scroll')
+:define_draw(function(properties,parent,element)
+    element.style.hieght = 50
+    for i = 1,10 do
+        element.add{
+            type = 'label',
+            caption = i
+        }
+    end
+end)
+ +
@@ -1330,7 +1673,7 @@ Gui.clone_concept('progress_bar', -

The basic slider element

+

A number picker.

@@ -1449,6 +1792,133 @@ Gui.clone_concept('slider','dis end) + +
+
+
+ # + table +
+
+
+
+ +

An invisible container that lays out children in a specific number of columns.

+

Column width is given by the largest element contained in that row.

+ + + Properties / Events: + +
    + + + + + +
  • + + column_count + + : + + (number or function) + + the column count of the table or a function that returns the count being given then parent element + +
  • + + + + + +
  • + + vertical_lines + + : + + (boolean) + + when true vertical lines will be drawn on the table + +
  • + + + + + +
  • + + horizontal_lines + + : + + (boolean) + + when true horizontal lines will be drawn on the table + +
  • + + + + + +
  • + + header_lines + + : + + (boolean) + + when true horizontal lines will be drawn under the first row + +
  • + + + + + +
  • + + vertical_centering + + : + + (boolean) + + when true element will be vertically centered with in the table + +
  • + + +
+ + + + + + + + + + + + Usage: +
-- Making a basic table, contains 25 labels
+local basic_table =
+Gui.clone_concept('table','basic_table')
+:set_column_count(5)
+:define_draw(function(properties,parent,element)
+    for i = 1,25 do
+        element.add{
+            type = 'lable',
+            caption = i
+        }
+    end
+end)
+ +
@@ -1460,7 +1930,7 @@ Gui.clone_concept('slider','dis
-

The text box element

+

A multi-line text box that supports selection and copy-paste.

@@ -1618,7 +2088,7 @@ Gui.clone_concept('text_box','e
-

The text field element

+

Boxes of text the user can type in.

@@ -5040,7 +5510,7 @@ Gui.get_concept('CustomButton') generated by LDoc
diff --git a/docs/core/Permissions-Groups.html b/docs/core/Permissions-Groups.html index e10f905a..dca3001a 100644 --- a/docs/core/Permissions-Groups.html +++ b/docs/core/Permissions-Groups.html @@ -1433,7 +1433,7 @@ generated by LDoc diff --git a/docs/core/Roles.html b/docs/core/Roles.html index 40948b8d..8e43f424 100644 --- a/docs/core/Roles.html +++ b/docs/core/Roles.html @@ -3153,7 +3153,7 @@ generated by LDoc diff --git a/docs/core/Store.html b/docs/core/Store.html index e56e6911..43bad538 100644 --- a/docs/core/Store.html +++ b/docs/core/Store.html @@ -1146,7 +1146,7 @@ Store.register(team_scores,function(value,key) generated by LDoc diff --git a/docs/core/Sudo.html b/docs/core/Sudo.html index 4f88af42..d62ac99e 100644 --- a/docs/core/Sudo.html +++ b/docs/core/Sudo.html @@ -545,7 +545,7 @@ generated by LDoc diff --git a/docs/core/Toolbar.html b/docs/core/Toolbar.html index 0da30385..5cbcc8c2 100644 --- a/docs/core/Toolbar.html +++ b/docs/core/Toolbar.html @@ -1630,7 +1630,7 @@ Gui.clone_concept('toolbar-frame',LDoc diff --git a/docs/guis/Player-List.html b/docs/guis/Player-List.html index 439db206..a54cf7a5 100644 --- a/docs/guis/Player-List.html +++ b/docs/guis/Player-List.html @@ -627,7 +627,7 @@ generated by LDoc diff --git a/docs/guis/Rocket-Info.html b/docs/guis/Rocket-Info.html index 0f113473..ac686677 100644 --- a/docs/guis/Rocket-Info.html +++ b/docs/guis/Rocket-Info.html @@ -630,7 +630,7 @@ generated by LDoc diff --git a/docs/guis/Science-Info.html b/docs/guis/Science-Info.html index b26e1560..b0c720f8 100644 --- a/docs/guis/Science-Info.html +++ b/docs/guis/Science-Info.html @@ -450,7 +450,7 @@ generated by LDoc diff --git a/docs/guis/Task-List.html b/docs/guis/Task-List.html index f6d43bb5..80723b00 100644 --- a/docs/guis/Task-List.html +++ b/docs/guis/Task-List.html @@ -633,7 +633,7 @@ generated by LDoc diff --git a/docs/guis/Warps-List.html b/docs/guis/Warps-List.html index 545bb8b4..3a5ec1ac 100644 --- a/docs/guis/Warps-List.html +++ b/docs/guis/Warps-List.html @@ -838,7 +838,7 @@ generated by LDoc diff --git a/docs/index.html b/docs/index.html index 372ce97b..f233e4a5 100644 --- a/docs/index.html +++ b/docs/index.html @@ -514,7 +514,7 @@ see ./expcore/commands.lua for more details generated by LDoc diff --git a/docs/modules/control.html b/docs/modules/control.html index 6d625e00..7295da0f 100644 --- a/docs/modules/control.html +++ b/docs/modules/control.html @@ -352,7 +352,7 @@ generated by LDoc diff --git a/docs/modules/utils.alien_evolution_progress.html b/docs/modules/utils.alien_evolution_progress.html index 1cfaeb22..2fa36dc8 100644 --- a/docs/modules/utils.alien_evolution_progress.html +++ b/docs/modules/utils.alien_evolution_progress.html @@ -420,7 +420,7 @@ fraction will decide a chance to spawn. 1 alien for 2 spawner's will have 50% on generated by LDoc diff --git a/docs/modules/utils.core.html b/docs/modules/utils.core.html index 9dda491f..ef39ec65 100644 --- a/docs/modules/utils.core.html +++ b/docs/modules/utils.core.html @@ -1165,7 +1165,7 @@ generated by LDoc diff --git a/docs/modules/utils.debug.html b/docs/modules/utils.debug.html index b3c9bca3..5304675f 100644 --- a/docs/modules/utils.debug.html +++ b/docs/modules/utils.debug.html @@ -242,7 +242,7 @@ - Debug.print(message, stack_traceback) + Debug.print(message, trace_levels) Shows the given message if debug is enabled. @@ -281,7 +281,7 @@
# - Debug.print(message, stack_traceback) + Debug.print(message, trace_levels)
@@ -316,7 +316,7 @@
  • - stack_traceback + trace_levels : @@ -655,7 +655,7 @@ generated by LDoc diff --git a/docs/modules/utils.dump_env.html b/docs/modules/utils.dump_env.html index b4da436e..598d76da 100644 --- a/docs/modules/utils.dump_env.html +++ b/docs/modules/utils.dump_env.html @@ -324,7 +324,7 @@ generated by LDoc diff --git a/docs/modules/utils.event.html b/docs/modules/utils.event.html index 13a7680e..fc1ddfad 100644 --- a/docs/modules/utils.event.html +++ b/docs/modules/utils.event.html @@ -1293,7 +1293,7 @@ generated by LDoc diff --git a/docs/modules/utils.event_core.html b/docs/modules/utils.event_core.html index 90ced63a..c5782040 100644 --- a/docs/modules/utils.event_core.html +++ b/docs/modules/utils.event_core.html @@ -435,7 +435,7 @@ generated by LDoc diff --git a/docs/modules/utils.math.html b/docs/modules/utils.math.html index b4f8fd77..fada2288 100644 --- a/docs/modules/utils.math.html +++ b/docs/modules/utils.math.html @@ -242,7 +242,7 @@ - calculate_y_intercept(x, slope) + calculate_y_intercept(x, y, slope) Calculates the y-intercept of a line @@ -258,7 +258,7 @@
    # - calculate_y_intercept(x, slope) + calculate_y_intercept(x, y, slope)
    @@ -283,7 +283,22 @@ : - , y numbers - coordinates of point on line + number - coordinates of point on line + +
  • + + + + + +
  • + + y + + : + + + number - coordinates of point on line
  • @@ -339,7 +354,7 @@ generated by LDoc diff --git a/docs/modules/utils.recipe_locker.html b/docs/modules/utils.recipe_locker.html index 34d5d12a..8f6f7dbd 100644 --- a/docs/modules/utils.recipe_locker.html +++ b/docs/modules/utils.recipe_locker.html @@ -442,7 +442,7 @@ generated by LDoc diff --git a/docs/modules/utils.state_machine.html b/docs/modules/utils.state_machine.html index d3325639..17e16970 100644 --- a/docs/modules/utils.state_machine.html +++ b/docs/modules/utils.state_machine.html @@ -277,7 +277,7 @@ NOTICE: This function will invoke an error if called after init. - Module.register_transition_callback(self, state, state, callback) + Module.register_transition_callback(self, old, new, callback) Register a handler that will be invoked by StateMachine.transition You may register multiple handlers for the same transition NOTICE: This function will invoke an error if called after init. @@ -591,7 +591,7 @@
    # - Module.register_transition_callback(self, state, state, callback) + Module.register_transition_callback(self, old, new, callback)
    @@ -628,12 +628,12 @@
  • - state + old : - number/string entering state + number/string exiting state
  • @@ -643,7 +643,7 @@
  • - state + new : @@ -753,7 +753,7 @@ generated by LDoc diff --git a/docs/modules/utils.table.html b/docs/modules/utils.table.html index c76d0411..6c672172 100644 --- a/docs/modules/utils.table.html +++ b/docs/modules/utils.table.html @@ -290,12 +290,12 @@ because this uses math.random, it cannot be used outside of events - get_random_weighted(weight_table, item_index, weight_index) + get_random_weighted(weighted_table, item_index, weight_index) Chooses a random entry from a weighted table because this uses math.random, it cannot be used outside of events - shuffle_table(t) + shuffle_table(t, rng) Creates a fisher-yates shuffle of a sequential number-indexed table because this uses math.random, it cannot be used outside of events if no rng is supplied from: http://www.sdknews.com/cross-platform/corona/tutorial-how-to-shuffle-table-items @@ -552,6 +552,12 @@ + Returns: +
      +
    • + the index of the element or nil +
    • +
    @@ -616,6 +622,12 @@ + Returns: +
      +
    • + the index of the element or nil +
    • +
    @@ -680,6 +692,12 @@ + Returns: +
      +
    • + indicating success +
    • +
    @@ -744,6 +762,12 @@ + Returns: +
      +
    • + indicating success +
    • +
    @@ -908,7 +932,7 @@
    # - get_random_weighted(weight_table, item_index, weight_index) + get_random_weighted(weighted_table, item_index, weight_index)
    @@ -929,7 +953,7 @@
  • - weight_table + weighted_table : @@ -984,9 +1008,6 @@ - See also: -
      -
    @@ -997,7 +1018,7 @@
    # - shuffle_table(t) + shuffle_table(t, rng)
    @@ -1029,6 +1050,21 @@
  • + + + +
  • + + rng + + : + + + to provide random numbers + +
  • + + @@ -1383,7 +1419,7 @@ generated by LDoc diff --git a/docs/modules/utils.task.html b/docs/modules/utils.task.html index ce165620..e84592f2 100644 --- a/docs/modules/utils.task.html +++ b/docs/modules/utils.task.html @@ -652,7 +652,7 @@ generated by LDoc diff --git a/docs/modules/utils.timestamp.html b/docs/modules/utils.timestamp.html index 5c227954..0d1c8dd5 100644 --- a/docs/modules/utils.timestamp.html +++ b/docs/modules/utils.timestamp.html @@ -443,7 +443,7 @@ generated by LDoc diff --git a/docs/topics/license.html b/docs/topics/license.html index 757e9dcd..dd724347 100644 --- a/docs/topics/license.html +++ b/docs/topics/license.html @@ -790,7 +790,7 @@ Public License instead of this License. But first, please read generated by LDoc diff --git a/docs/topics/readme.md.html b/docs/topics/readme.md.html index 1d767ad7..08252a53 100644 --- a/docs/topics/readme.md.html +++ b/docs/topics/readme.md.html @@ -333,7 +333,7 @@ generated by LDoc diff --git a/expcore/gui.lua b/expcore/gui.lua index 54c8d512..50bcce3b 100644 --- a/expcore/gui.lua +++ b/expcore/gui.lua @@ -68,6 +68,13 @@ custom_button:draw(game.player.gui.left) local Gui = require 'expcore.gui.core' Gui.require_concept('frame') +Gui.require_concept('flow') +Gui.require_concept('table') +Gui.require_concept('label') +Gui.require_concept('line') +Gui.require_concept('scroll') +Gui.require_concept('empty') + Gui.require_concept('button') Gui.require_concept('checkbox') Gui.require_concept('dropdown') diff --git a/expcore/gui/concepts/button.lua b/expcore/gui/concepts/button.lua index 196cc117..a23fd3e4 100644 --- a/expcore/gui/concepts/button.lua +++ b/expcore/gui/concepts/button.lua @@ -5,7 +5,7 @@ local Gui = require 'expcore.gui.core' ---[[-- The basic button element +--[[-- Clickable elements that fire on_gui_click when clicked. @element button @param on_click fired when the player clicks the button @param on_left_click fired when the player clicks with the left mouse button diff --git a/expcore/gui/concepts/checkbox.lua b/expcore/gui/concepts/checkbox.lua index 0de6befc..cf24f231 100644 --- a/expcore/gui/concepts/checkbox.lua +++ b/expcore/gui/concepts/checkbox.lua @@ -5,7 +5,7 @@ local Gui = require 'expcore.gui.core' ---[[-- The basic checkbox element +--[[-- Clickable elements with a cross in the middle that can be turned off or on. @element checkbox @param on_state_changed fired when the state of the element is changed @tparam ?string|Concepts.LocalisedString caption the message that is shown next to the checkbox diff --git a/expcore/gui/concepts/dropdown.lua b/expcore/gui/concepts/dropdown.lua index c4e651df..646fdd5e 100644 --- a/expcore/gui/concepts/dropdown.lua +++ b/expcore/gui/concepts/dropdown.lua @@ -6,7 +6,7 @@ local Gui = require 'expcore.gui.core' local array_insert = ext_require('expcore.common','array_insert') ---[[-- The basic dropdown element +--[[-- A drop down list of other elements. @element dropdown @param on_selection_changed fired when the selected value is changed @tparam ?string|Concepts.LocalisedString|function default the option which is selected by default, or a function which returns the default diff --git a/expcore/gui/concepts/elem_button.lua b/expcore/gui/concepts/elem_button.lua index 6b51fbf1..5e711369 100644 --- a/expcore/gui/concepts/elem_button.lua +++ b/expcore/gui/concepts/elem_button.lua @@ -5,7 +5,7 @@ local Gui = require 'expcore.gui.core' ---[[-- The basic dropdown element +--[[-- A button that lets the player pick one of an: item, entity, tile, or signal similar to the filter-select window. @element elem_button @param on_selection_changed fired when the selected value is changed @tparam ?string|Concepts.SignalID|function default the option which is selected by default, or a function which returns the default diff --git a/expcore/gui/concepts/empty.lua b/expcore/gui/concepts/empty.lua new file mode 100644 index 00000000..61cda963 --- /dev/null +++ b/expcore/gui/concepts/empty.lua @@ -0,0 +1,26 @@ +--[[-- Core Module - Gui + @module Gui + @alias Gui +]] + +local Gui = require 'expcore.gui.core' + +--[[-- A empty widget that just exists. The root GUI element screen is an empty-widget. +@element empty +@tparam string style the style that the element will have +@usage-- Making a draggable space styled widget +local draggable_space = +Gui.clone_concept('empty','draggable_space') +:set_style('draggable_space') +]] +Gui.new_concept('empty') +:new_property('style') +:define_draw(function(properties,parent,element) + element = parent.add{ + name = properties.name, + type = 'empty-widget', + style = properties.style + } + + return element +end) \ No newline at end of file diff --git a/expcore/gui/concepts/flow.lua b/expcore/gui/concepts/flow.lua new file mode 100644 index 00000000..e8ecdce2 --- /dev/null +++ b/expcore/gui/concepts/flow.lua @@ -0,0 +1,32 @@ +--[[-- Core Module - Gui + @module Gui + @alias Gui +]] + +local Gui = require 'expcore.gui.core' + +--[[-- Invisible containers that lay out children either horizontally or vertically. The root GUI elements (top, left and center; see LuaGui) are flows. +@element flow +@tparam string direction the direction that children will be added +@usage-- Making a basic flow, contains a label with hello world +local basic_flow = +Gui.clone_concept('flow','basic_flow') +:define_draw(function(properties,parent,element) + element.add{ + type = 'label', + caption = 'Hello, World!' + } +end) +]] +Gui.new_concept('flow') +:new_property('direction') +:define_draw(function(properties,parent,element) + element = parent.add{ + name = properties.name, + type = 'flow', + caption = properties.title, + direction = properties.direction + } + + return element +end) \ No newline at end of file diff --git a/expcore/gui/concepts/frame.lua b/expcore/gui/concepts/frame.lua index a7b69f93..e3598778 100644 --- a/expcore/gui/concepts/frame.lua +++ b/expcore/gui/concepts/frame.lua @@ -5,13 +5,13 @@ local Gui = require 'expcore.gui.core' ---[[-- The basic frame element +--[[-- Grey semi-transparent boxes that contain other elements. They have a caption, and, just like flows, they lay out children either horizontally or vertically. @element frame @tparam ?string|Concepts.LocalisedString title the title that will show in the frame @tparam string direction the direction that children will be added @usage-- Making a basic frame, contains a label with hello world local basic_frame = -Gui.clone_concept('dropdown','basic_frame') +Gui.clone_concept('frame','basic_frame') :set_title('Basic Frame') :define_draw(function(properties,parent,element) element.add{ diff --git a/expcore/gui/concepts/label.lua b/expcore/gui/concepts/label.lua new file mode 100644 index 00000000..692192c5 --- /dev/null +++ b/expcore/gui/concepts/label.lua @@ -0,0 +1,29 @@ +--[[-- Core Module - Gui + @module Gui + @alias Gui +]] + +local Gui = require 'expcore.gui.core' + +--[[-- A piece of text. +@element frame +@tparam ?string|Concepts.LocalisedString caption the caption that will show in the label +@tparam ?string|Concepts.LocalisedString description the description that will show on the label +@usage-- Making a basic label +local basic_label = +Gui.clone_concept('label','basic_label') +:set_caption('Hello, World!') +]] +Gui.new_concept('label') +:new_property('caption') +:new_property('description') +:define_draw(function(properties,parent,element) + element = parent.add{ + name = properties.name, + type = 'label', + caption = properties.caption, + description = properties.description + } + + return element +end) \ No newline at end of file diff --git a/expcore/gui/concepts/line.lua b/expcore/gui/concepts/line.lua new file mode 100644 index 00000000..2ff4544b --- /dev/null +++ b/expcore/gui/concepts/line.lua @@ -0,0 +1,25 @@ +--[[-- Core Module - Gui + @module Gui + @alias Gui +]] + +local Gui = require 'expcore.gui.core' + +--[[-- A vertical or horizontal line. +@element line +@tparam string direction the direction that children will be added +@usage-- Making a basic frame, contains a label with hello world +local basic_line = +Gui.clone_concept('line','basic_line') +]] +Gui.new_concept('line') +:new_property('direction') +:define_draw(function(properties,parent,element) + element = parent.add{ + name = properties.name, + type = 'line', + direction = properties.direction + } + + return element +end) \ No newline at end of file diff --git a/expcore/gui/concepts/progress_bar.lua b/expcore/gui/concepts/progress_bar.lua index b85e9500..384c90cb 100644 --- a/expcore/gui/concepts/progress_bar.lua +++ b/expcore/gui/concepts/progress_bar.lua @@ -5,7 +5,7 @@ local Gui = require 'expcore.gui.core' ---[[-- The basic checkbox element +--[[-- Indicate progress by displaying a partially filled bar. @element progress_bar @param on_completion fired when increment reaches the maxium value set by set_maximum @tparam ?string|Concepts.LocalisedString tooltip the tooltip that will show for this element diff --git a/expcore/gui/concepts/scroll.lua b/expcore/gui/concepts/scroll.lua new file mode 100644 index 00000000..5a6cb8f2 --- /dev/null +++ b/expcore/gui/concepts/scroll.lua @@ -0,0 +1,37 @@ +--[[-- Core Module - Gui + @module Gui + @alias Gui +]] + +local Gui = require 'expcore.gui.core' + +--[[-- Similar to a flow but includes the ability to show and use scroll bars. +@element scroll +@tparam string horizontal_scroll the horizontal scroll policy for this scroll pane +@tparam string vertical_scroll the vertical scroll policy for this scroll pane +@usage-- Making a basic flow, contains a label with hello world +local basic_scroll = +Gui.clone_concept('scroll','basic_scroll') +:define_draw(function(properties,parent,element) + element.style.hieght = 50 + for i = 1,10 do + element.add{ + type = 'label', + caption = i + } + end +end) +]] +Gui.new_concept('scroll') +:new_property('horizontal_scroll') +:new_property('vertical_scroll') +:define_draw(function(properties,parent,element) + element = parent.add{ + name = properties.name, + type = 'scroll-pane', + horizontal_scroll_policy = properties.horizontal_scroll, + vertical_scroll_policy = properties.vertical_scroll + } + + return element +end) \ No newline at end of file diff --git a/expcore/gui/concepts/slider.lua b/expcore/gui/concepts/slider.lua index 3cc90dbd..51ff9153 100644 --- a/expcore/gui/concepts/slider.lua +++ b/expcore/gui/concepts/slider.lua @@ -5,7 +5,7 @@ local Gui = require 'expcore.gui.core' ---[[-- The basic slider element +--[[-- A number picker. @element slider @param on_value_changed fired when the value of the slider is changed @tparam number value_step the minimum amount by which the value of the slider can be changed diff --git a/expcore/gui/concepts/table.lua b/expcore/gui/concepts/table.lua new file mode 100644 index 00000000..20474951 --- /dev/null +++ b/expcore/gui/concepts/table.lua @@ -0,0 +1,48 @@ +--[[-- Core Module - Gui + @module Gui + @alias Gui +]] + +local Gui = require 'expcore.gui.core' + +--[[-- An invisible container that lays out children in a specific number of columns. Column width is given by the largest element contained in that row. +@element table +@tparam ?number|function column_count the column count of the table or a function that returns the count being given then parent element +@tparam boolean vertical_lines when true vertical lines will be drawn on the table +@tparam boolean horizontal_lines when true horizontal lines will be drawn on the table +@tparam boolean header_lines when true horizontal lines will be drawn under the first row +@tparam boolean vertical_centering when true element will be vertically centered with in the table +@usage-- Making a basic table, contains 25 labels +local basic_table = +Gui.clone_concept('table','basic_table') +:set_column_count(5) +:define_draw(function(properties,parent,element) + for i = 1,25 do + element.add{ + type = 'lable', + caption = i + } + end +end) +]] +Gui.new_concept('table') +:new_property('column_count') +:new_property('vertical_lines') +:new_property('horizontal_lines') +:new_property('header_lines') +:new_property('vertical_centering') +:define_draw(function(properties,parent,element) + local column_count = Gui.resolve_property(properties.column_count,parent) + + element = parent.add{ + name = properties.name, + type = 'table', + column_count = column_count, + draw_vertical_lines = properties.vertical_lines, + draw_horizontal_lines = properties.horizontal_lines, + draw_horizontal_line_after_headers = properties.header_lines, + vertical_centering = properties.vertical_centering + } + + return element +end) \ No newline at end of file diff --git a/expcore/gui/concepts/textbox.lua b/expcore/gui/concepts/textbox.lua index 3c3945eb..8b8863ec 100644 --- a/expcore/gui/concepts/textbox.lua +++ b/expcore/gui/concepts/textbox.lua @@ -5,7 +5,7 @@ local Gui = require 'expcore.gui.core' ---[[-- The text box element +--[[-- A multi-line text box that supports selection and copy-paste. @element text_box @param on_text_changed fired when the text within the text box is changed @tparam ?string|Concepts.LocalisedString tooltip the tooltip that shows when a player hovers over the text box diff --git a/expcore/gui/concepts/textfield.lua b/expcore/gui/concepts/textfield.lua index 717fe55c..4275ee21 100644 --- a/expcore/gui/concepts/textfield.lua +++ b/expcore/gui/concepts/textfield.lua @@ -5,7 +5,7 @@ local Gui = require 'expcore.gui.core' ---[[-- The text field element +--[[-- Boxes of text the user can type in. @element text_field @param on_text_changed fired when the text within the text field is changed @param on_confirmation fired when the player presses enter with the text field forcused diff --git a/utils/debug.lua b/utils/debug.lua index 1c1a3633..98f85a28 100644 --- a/utils/debug.lua +++ b/utils/debug.lua @@ -31,7 +31,7 @@ end ---Shows the given message if debug is enabled. Uses serpent to print non scalars. -- @param message --- @param stack_traceback levels of stack trace to give, defaults to 1 level if nil +-- @param trace_levels levels of stack trace to give, defaults to 1 level if nil function Debug.print(message, trace_levels) if not _DEBUG then return diff --git a/utils/math.lua b/utils/math.lua index 6876f1c5..179005c9 100644 --- a/utils/math.lua +++ b/utils/math.lua @@ -39,7 +39,8 @@ math.calculate_slope = function(x1, y1, x2, y2) end --- Calculates the y-intercept of a line --- @param x, y numbers - coordinates of point on line +-- @param x number - coordinates of point on line +-- @param y number - coordinates of point on line -- @param slope number - the slope of a line -- @return number - the y-intercept of a line math.calculate_y_intercept = function(x, y, slope) diff --git a/utils/state_machine.lua b/utils/state_machine.lua index 7db455ab..9d298a52 100644 --- a/utils/state_machine.lua +++ b/utils/state_machine.lua @@ -87,8 +87,8 @@ end -- You may register multiple handlers for the same transition -- NOTICE: This function will invoke an error if called after init. Dynamic machine changes are currently unsupported -- @param self StateMachine the machine --- @param state number/string exiting state --- @param state number/string entering state +-- @param old number/string exiting state +-- @param new number/string entering state -- @param callback function function Module.register_transition_callback(self, old, new, callback) if _LIFECYCLE ~= control_stage then diff --git a/utils/table.lua b/utils/table.lua index ea69bbd7..4b1973e2 100644 --- a/utils/table.lua +++ b/utils/table.lua @@ -49,7 +49,7 @@ end --- Checks if a table contains an element -- @param t -- @param e table element --- @returns the index of the element or nil +-- @return the index of the element or nil function table.index_of(t, e) for k, v in pairs(t) do if v == e then @@ -62,7 +62,7 @@ end --- Checks if the arrayed portion of a table contains an element -- @param t
    -- @param e table element --- @returns the index of the element or nil +-- @return the index of the element or nil function table.index_of_in_array(t, e) for i = 1, #t do if t[i] == e then @@ -76,7 +76,7 @@ local index_of = table.index_of --- Checks if a table contains an element -- @param t
    -- @param e table element --- @returns indicating success +-- @return indicating success function table.contains(t, e) return index_of(t, e) and true or false end @@ -85,7 +85,7 @@ local index_of_in_array = table.index_of_in_array --- Checks if the arrayed portion of a table contains an element -- @param t
    -- @param e table element --- @returns indicating success +-- @return indicating success function table.array_contains(t, e) return index_of_in_array(t, e) and true or false end @@ -128,11 +128,10 @@ end --- Chooses a random entry from a weighted table -- because this uses math.random, it cannot be used outside of events --- @param weight_table
    of tables with items and their weights +-- @param weighted_table
    of tables with items and their weights -- @param item_index of the index of items, defaults to 1 -- @param weight_index of the index of the weights, defaults to 2 -- @return table element --- @see features.chat_triggers::hodor function table.get_random_weighted(weighted_table, item_index, weight_index) local total_weight = 0 item_index = item_index or 1 @@ -156,6 +155,7 @@ end -- because this uses math.random, it cannot be used outside of events if no rng is supplied -- from: http://www.sdknews.com/cross-platform/corona/tutorial-how-to-shuffle-table-items -- @param t
    to shuffle +-- @param rng to provide random numbers function table.shuffle_table(t, rng) local rand = rng or math.random local iterations = #t