aboutsummaryrefslogtreecommitdiff
path: root/data/plugins/scale.lua
diff options
context:
space:
mode:
authorJefferson González <jgmdev@gmail.com>2022-05-30 16:12:49 -0400
committerGitHub <noreply@github.com>2022-05-30 16:12:49 -0400
commit7dc069aa8f360bfb9cb6d85c527785c52997d9b1 (patch)
tree225004fb7fe478371700c0e5561b15484d3ae316 /data/plugins/scale.lua
parentc92c545fb9e413fbcbec6d023dc6cf8b1531ed59 (diff)
parent8bbca7c0b086032799aee328aa4581c11cccb314 (diff)
downloadpragtical-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.lua48
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,