Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/presentation2/data/gui/scripts/MouseControlsMenu.lua @ 6239

Last change on this file since 6239 was 6239, checked in by scheusso, 14 years ago

setting bDeriveMouseInput_ now possible from withing the mouse control menu

File size: 4.1 KB
Line 
1-- MouseControlsMenu.lua
2
3BasicGUI = require("BasicGUI")
4local P = BasicGUI:new() --inherit everything from the gui package
5if _REQUIREDNAME == nil then
6    MouseControlsMenu = P
7else
8    _G[_REQUIREDNAME] = P
9end
10
11P.filename = "MouseControlsMenu"
12P.layoutString = "MouseControlsMenu.layout"
13
14function P:init()
15    block = false
16    mousenormalscrollbarwindow = tolua.cast(winMgr:getWindow("orxonox/MouseNormalScrollbar"),"CEGUI::Scrollbar")
17    mousederivescrollbarwindow = tolua.cast(winMgr:getWindow("orxonox/MouseDeriveScrollbar"),"CEGUI::Scrollbar")
18    normalwindow = tolua.cast(winMgr:getWindow("orxonox/MouseNormalButton"),"CEGUI::RadioButton")
19    derivewindow = tolua.cast(winMgr:getWindow("orxonox/MouseDeriveButton"),"CEGUI::RadioButton")
20    invertwindow = tolua.cast(winMgr:getWindow("orxonox/MouseInvertCheckbox"),"CEGUI::Checkbox")
21    mousenormalscrollbar_active = false
22    mousederivescrollbar_active = false
23    derive_active = orxonox.getConfig("KeyBinder","bDeriveMouseInput_")
24    invert_active = false
25    mousenormalsensitivity = orxonox.getConfig("KeyBinder","mouseSensitivity_")
26    mousederivesensitivity = orxonox.getConfig("KeyBinder","mouseSensitivityDerived_")
27    mousenormalscrollbarwindow:setScrollPosition((math.log(14*mousenormalsensitivity-6))/(6*math.log(2)))
28    mousederivescrollbarwindow:setScrollPosition((math.log(14*mousederivesensitivity-6))/(6*math.log(2)))
29    if derive_active == "true" then
30        normal_active = false
31        derive_active = true
32        derivewindow:setSelected(derive_active)
33    else
34        normal_active = true
35        derive_active = false
36        normalwindow:setSelected(normal_active)
37    end
38    if invert_active == "true" then
39        invert_active = true
40    else
41        invert_active = false
42    end
43end
44
45function P.MouseControlsMouseNormalScrollbar_changed(e)
46    if mousenormalscrollbar_active == false then
47        scrollposition = mousenormalscrollbarwindow:getScrollPosition()
48        mousenormalsensitivity = (math.pow(64,scrollposition)+6)/14
49        orxonox.CommandExecutor:execute("config KeyBinder mouseSensitivity_ " .. mousenormalsensitivity)
50    end
51end
52
53function P.MouseControlsMouseNormalScrollbar_started(e)
54    mousenormalscrollbar_active = true
55end
56
57function P.MouseControlsMouseNormalScrollbar_ended(e)
58    scrollposition = mousenormalscrollbarwindow:getScrollPosition()
59    mousenormalsensitivity = (math.pow(64,scrollposition)+6)/14
60    orxonox.CommandExecutor:execute("config KeyBinder mouseSensitivity_ " .. mousenormalsensitivity)
61    mousenormalscrollbar_active = false
62end
63
64function P.MouseControlsMouseDeriveScrollbar_changed(e)
65    if mousederivescrollbar_active == false then
66        scrollposition = mousederivescrollbarwindow:getScrollPosition()
67        mousederivesensitivity = (math.pow(64,scrollposition)+6)/14
68        orxonox.CommandExecutor:execute("config KeyBinder mouseSensitivityDerived_ " .. mousederivesensitivity)
69    end
70end
71
72function P.MouseControlsMouseDeriveScrollbar_started(e)
73    mousederivescrollbar_active = true
74end
75
76function P.MouseControlsMouseDeriveScrollbar_ended(e)
77    scrollposition = mousederivescrollbarwindow:getScrollPosition()
78    mousederivesensitivity = (math.pow(64,scrollposition)+6)/14
79    orxonox.CommandExecutor:execute("config KeyBinder mouseSensitivityDerived_ " .. mousederivesensitivity)
80    mousederivescrollbar_active = false
81end
82
83function P.MouseNormalButton_clicked(e)
84    if block == false then
85        block = true
86        derivewindow:setSelected(false)
87        block = false
88        -- normal mouse input
89        orxonox.CommandExecutor:execute("config KeyBinder bDeriveMouseInput_ false")
90    end
91end
92
93function P.MouseDeriveButton_clicked(e)
94    if block == false then
95        block = true
96        normalwindow:setSelected(false)
97        block = false
98        -- derive mouse input
99        orxonox.CommandExecutor:execute("config KeyBinder bDeriveMouseInput_ true")
100    end
101end
102
103function P.MouseInvertCheckbox_clicked(e)
104    -- invert mouse
105    debug("event: invert mouse")
106end
107
108function P.MouseControlsBackButton_clicked(e)
109    hideGUI(P.filename)
110end
111
112return P
113
Note: See TracBrowser for help on using the repository browser.