Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/notifications/data/gui/scripts/GUISheet.lua @ 7621

Last change on this file since 7621 was 7395, checked in by dafrick, 14 years ago

Finished EditMode, needs some polish (no not the language…) though.
Took better advantage of lua tables in NotificationLayer.lua
Fixed a lot of bugs, it really is a miracle that the Notifications worked as well as they did.

  • Property svn:eol-style set to native
File size: 1.4 KB
RevLine 
[6718]1-- GUISheet.lua
[5491]2
3local P = {}
[6718]4_G[_REQUIREDNAME or "GUISheet"] = P
5P.__index = P
[5491]6
[6718]7-- Don't use directly --> use HUDSheet.new or MenuSheet.new
8function P.new(_name)
9    local newSheet = { name = _name }
10    setmetatable(newSheet, P)
11    return newSheet
[5491]12end
13
[6718]14-- Override this function if you need to do work on load
[6720]15function P:onLoad()
[5523]16end
17
[6747]18-- show function for the GUI
19function P:show()
20    self.window:show()
21    self.bVisible = true
22
23    self:onShow()
24end
25
26-- Override this function if you need to do work on show
27function P:onShow()
28end
29
[5491]30-- hide function for the GUI
[6595]31function P:hide()
[5491]32    self.window:hide()
[6718]33    self.bVisible = false
[6747]34
35    self:onHide()
[5491]36end
37
[6747]38-- Override this function if you need to do work on hide
39function P:onHide()
[5491]40end
41
[7395]42-- Override this function if you need to do work just after the sheet has been hidden
43function P:afterHide()
44end
45
[6595]46function P:load()
[6718]47    -- Load the layout that describes the sheet
[6704]48    self.window = winMgr:loadWindowLayout(self.name .. ".layout")
[6718]49    if self.window == nil then
50        error("Could not load layout file for GUI sheet '"..self.name.."'")
51    end
52    -- Hide it at first
53    self:hide()
54    -- Allow sheets to do some work upon loading
[6720]55    self:onLoad()
[6748]56
57    -- Also load additional sheets to avoid display lags
58    if self.loadAlong then
59        for k, sheet in pairs(self.loadAlong) do
60            loadSheet(sheet)
61        end
62    end
[5559]63    return self
[5491]64end
65
[5661]66return P
Note: See TracBrowser for help on using the repository browser.