Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/gamestates2/data/gui/scripts/GUITools.lua @ 6720

Last change on this file since 6720 was 6718, checked in by rgrieder, 14 years ago

Moved BasicGUI.lua to GUISheet.lua and derived MenuSheet.lua as well as HUDSheet.lua from it.
Also, to make a new GUI sheet, use either createHUDSheet or createMenuSheet.
Also removed bShowCursor from the showGUI function. This is now always a value directed by the GUI sheet.

  • Property svn:eol-style set to native
File size: 1.9 KB
Line 
1-- Returns a new menu sheet
2-- See MenuSheet.new for details about the parameters
3function createMenuSheet(name, bHidePrevious, tShowCursor, tUseKeyboard, bBlockJoyStick)
4    local sheet = require("MenuSheet").new(name, bHidePrevious, tShowCursor, tUseKeyboard, bBlockJoyStick)
5    _G[sheet.name] = sheet -- Global access required because of the event handlers
6    return sheet
7end
8
9-- Returns a new HUD sheet
10function createHUDSheet(name)
11    local sheet = require("HUDSheet").new(name)
12    _G[sheet.name] = sheet -- Global access required because of the event handlers
13    return sheet
14end
15
16function openDecisionPopup( text, callbackPtr )
17    showGUI("DecisionPopup", false, true)
18    DecisionPopup.setCallback(callbackPtr)
19    DecisionPopup.setText(text)
20end
21
22function openInfoPopup(text, functionPtr, closeButton, arguments)
23    showGUI("InfoPopup", false, true)
24    InfoPopup.execute(functionPtr, arguments)
25    InfoPopup.setText(text)
26    InfoPopup.setCloseButton(closeButton)
27end
28
29function getMinTextSize(window)
30    local size = {}
31
32    local lookAndFeel = CEGUI.WidgetLookManager:getSingleton():getWidgetLook(window:getLookNFeel())
33    local height = window:getFont():getLineSpacing() + window:getUnclippedPixelRect():getHeight() - lookAndFeel:getNamedArea("WithFrameTextRenderArea"):getArea():getPixelRect(window):getHeight()
34    local width =  window:getFont():getTextExtent(window:getText()) + window:getUnclippedPixelRect():getWidth() - lookAndFeel:getNamedArea("WithFrameTextRenderArea"):getArea():getPixelRect(window):getWidth()
35
36    table.insert(size, height)
37    table.insert(size, width)
38    return size
39end
40
41function getScrollingStepSize(window)
42    local height = window:getUnclippedPixelRect():getHeight()
43    local maxHeight = CEGUI.System:getSingleton():getGUISheet():getUnclippedPixelRect():getHeight()
44    local ratio = height/maxHeight
45    return 0.008*ratio/0.3204
46end
Note: See TracBrowser for help on using the repository browser.