Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

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

Last change on this file since 6284 was 6251, checked in by cmueri, 15 years ago

The menu is now able to switch between normal and derive mouse input.

File size: 4.1 KB
RevLine 
[6206]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
[6238]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
[6206]44
[6238]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)
[6206]50    end
51end
52
[6238]53function P.MouseControlsMouseNormalScrollbar_started(e)
54    mousenormalscrollbar_active = true
[6206]55end
56
[6238]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
[6206]62end
63
[6238]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
[6206]70end
71
[6238]72function P.MouseControlsMouseDeriveScrollbar_started(e)
73    mousederivescrollbar_active = true
[6206]74end
75
[6238]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
[6239]88        orxonox.CommandExecutor:execute("config KeyBinder bDeriveMouseInput_ false")
[6238]89    end
90end
91
92function P.MouseDeriveButton_clicked(e)
93    if block == false then
94        block = true
95        normalwindow:setSelected(false)
96        block = false
[6239]97        orxonox.CommandExecutor:execute("config KeyBinder bDeriveMouseInput_ true")
[6238]98    end
99end
100
101function P.MouseInvertCheckbox_clicked(e)
102    -- invert mouse
103end
104
[6206]105function P.MouseControlsBackButton_clicked(e)
106    hideGUI(P.filename)
107end
108
109return P
110
Note: See TracBrowser for help on using the repository browser.