Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/unity_build/data/gui/scripts/MenuSheet.lua @ 8740

Last change on this file since 8740 was 8687, checked in by rgrieder, 14 years ago

Adjusted implementation of tribool to work well with tolua and integrated it into our GUI code.
Use tribool(true), tribool(false) and tribool(dontcare) in Lua.

  • Property svn:eol-style set to native
File size: 1.3 KB
RevLine 
[7163]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.
[8687]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.
[7163]14function P.new(_name, _bHidePrevious, _tShowCursor, _tUseKeyboard, _bBlockJoyStick)
15    local newSheet = GUISheet.new(_name)
16    newSheet.bHidePrevious  = handleDefArg(_bHidePrevious,  true)
[8687]17    newSheet.tShowCursor    = handleDefArg(_tShowCusor,     tribool(true))
18    newSheet.tUseKeyboard   = handleDefArg(_tUseKeyboard,   tribool(true))
[7163]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.