diff options
| author | Jefferson González <jgmdev@gmail.com> | 2022-05-30 16:12:49 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-05-30 16:12:49 -0400 |
| commit | 7dc069aa8f360bfb9cb6d85c527785c52997d9b1 (patch) | |
| tree | 225004fb7fe478371700c0e5561b15484d3ae316 /data/plugins/scale.lua | |
| parent | c92c545fb9e413fbcbec6d023dc6cf8b1531ed59 (diff) | |
| parent | 8bbca7c0b086032799aee328aa4581c11cccb314 (diff) | |
| download | pragtical-7dc069aa8f360bfb9cb6d85c527785c52997d9b1.tar.gz pragtical-7dc069aa8f360bfb9cb6d85c527785c52997d9b1.zip | |
Merge pull request #995 from jgmdev/PR/plugins-settings-gui
plugins: added settings gui support
Diffstat (limited to 'data/plugins/scale.lua')
| -rw-r--r-- | data/plugins/scale.lua | 48 |
1 files changed, 44 insertions, 4 deletions
diff --git a/data/plugins/scale.lua b/data/plugins/scale.lua index cc9db5bf..a09fde77 100644 --- a/data/plugins/scale.lua +++ b/data/plugins/scale.lua @@ -9,8 +9,43 @@ local RootView = require "core.rootview" local CommandView = require "core.commandview" config.plugins.scale = common.merge({ + -- The method used to apply the scaling: "code", "ui" mode = "code", - use_mousewheel = true + -- Allow using CTRL + MouseWheel for changing the scale. + use_mousewheel = true, + -- The config specification used by gui generators + config_spec = { + name = "Scale", + { + label = "Mode", + description = "The method used to apply the scaling.", + path = "mode", + type = "selection", + default = "code", + values = { + {"Code Only", "code"}, + {"Everything", "ui"} + } + }, + { + label = "Use MouseWheel", + description = "Allow using CTRL + MouseWheel for changing the scale.", + path = "use_mousewheel", + type = "toggle", + default = true, + on_apply = function(enabled) + if enabled then + keymap.add { + ["ctrl+wheelup"] = "scale:increase", + ["ctrl+wheeldown"] = "scale:decrease" + } + else + keymap.unbind("ctrl+wheelup", "scale:increase") + keymap.unbind("ctrl+wheeldown", "scale:decrease") + end + end + } + } }, config.plugins.scale) local scale_steps = 0.05 @@ -89,11 +124,16 @@ command.add(nil, { keymap.add { ["ctrl+0"] = "scale:reset", ["ctrl+-"] = "scale:decrease", - ["ctrl+="] = "scale:increase", - ["ctrl+wheelup"] = "scale:increase", - ["ctrl+wheeldown"] = "scale:decrease" + ["ctrl+="] = "scale:increase" } +if config.plugins.scale.use_mousewheel then + keymap.add { + ["ctrl+wheelup"] = "scale:increase", + ["ctrl+wheeldown"] = "scale:decrease" + } +end + return { ["set"] = set_scale, ["get"] = get_scale, |
