Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/kicklib/data/gui/scripts/MenuSheet.lua @ 8298

Last change on this file since 8298 was 7689, checked in by dafrick, 14 years ago

Merging menu branch to trunk.

  • Property svn:eol-style set to native
File size: 1.3 KB
Line 
1-- MenuSheet.lua
2-- Base class for all GUI sheets that represent a menu.
3-- Inherits itself from GUISheet
4
5local P = {}  -- Local alias, always use it in this file
6MenuSheet = P -- Global name
7setmetatable(P, require("GUISheet")) -- Inherit from GUISheet
8P.__index = P -- Provide class character
9
10-- Use this function to construct a new MenuSheet.
11-- Parameters:
12-- Except for _name, you can provide nil. Then the default value will be used.
13-- For _tShowCusor and _tUseKeyboard you can specify TriBool.Dontcare if the value doesn't matter at all. Then the value of the underlaying sheet will be used.
14function P.new(_name, _bHidePrevious, _tShowCursor, _tUseKeyboard, _bBlockJoyStick)
15    local newSheet = GUISheet.new(_name)
16    newSheet.bHidePrevious  = handleDefArg(_bHidePrevious,  true)
17    newSheet.tShowCursor    = handleDefArg(_tShowCusor,     TriBool.True)
18    newSheet.tUseKeyboard   = handleDefArg(_tUseKeyboard,   TriBool.True)
19    newSheet.bBlockJoyStick = handleDefArg(_bBlockJoyStick, false)
20
21    setmetatable(newSheet, P)
22    return newSheet
23end
24
25function P:load()
26    -- Create the input state
27    self.inputState = guiMgr:createInputState("GUI_" .. self.name,
28        self.tShowCursor, self.tUseKeyboard, self.bBlockJoyStick)
29
30    -- load() of base 'class'
31    GUISheet.load(self)
32
33    return self
34end
35
36return P
Note: See TracBrowser for help on using the repository browser.