| [6746] | 1 | -- Returns a new menu sheet | 
|---|
 | 2 | -- See MenuSheet.new for details about the parameters | 
|---|
 | 3 | function 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 | 
|---|
 | 7 | end | 
|---|
 | 8 |  | 
|---|
 | 9 | -- Returns a new HUD sheet | 
|---|
 | 10 | function 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 | 
|---|
 | 14 | end | 
|---|
 | 15 |  | 
|---|
| [6145] | 16 | function openDecisionPopup( text, callbackPtr ) | 
|---|
| [6746] | 17 |     showMenuSheet("DecisionPopup", false, true) | 
|---|
| [6266] | 18 |     DecisionPopup.setCallback(callbackPtr) | 
|---|
| [6145] | 19 |     DecisionPopup.setText(text) | 
|---|
| [6266] | 20 | end | 
|---|
 | 21 |  | 
|---|
| [6311] | 22 | function openInfoPopup(text, functionPtr, closeButton, arguments) | 
|---|
| [6746] | 23 |     showMenuSheet("InfoPopup", false, true) | 
|---|
| [6311] | 24 |     InfoPopup.execute(functionPtr, arguments) | 
|---|
| [6266] | 25 |     InfoPopup.setText(text) | 
|---|
| [6283] | 26 |     InfoPopup.setCloseButton(closeButton) | 
|---|
| [6266] | 27 | end | 
|---|
| [6355] | 28 |  | 
|---|
 | 29 | function getMinTextSize(window) | 
|---|
 | 30 |     local size = {} | 
|---|
| [6387] | 31 |  | 
|---|
| [6355] | 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() | 
|---|
| [6387] | 35 |  | 
|---|
| [6355] | 36 |     table.insert(size, height) | 
|---|
 | 37 |     table.insert(size, width) | 
|---|
 | 38 |     return size | 
|---|
 | 39 | end | 
|---|
 | 40 |  | 
|---|
 | 41 | function 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 | 
|---|
 | 46 | end | 
|---|
| [7163] | 47 |  | 
|---|
 | 48 | function getStaticTextWindowHeight(window) | 
|---|
 | 49 |     local lookAndFeel = CEGUI.WidgetLookManager:getSingleton():getWidgetLook(window:getLookNFeel()) | 
|---|
 | 50 |     local formattedArea = lookAndFeel:getNamedArea("WithFrameTextRenderArea"):getArea():getPixelRect(window) | 
|---|
 | 51 |     local frameHeight = window:getUnclippedPixelRect():getHeight() - formattedArea:getHeight() | 
|---|
 | 52 |     local lines = window:getFont():getFormattedLineCount(window:getText(), formattedArea, CEGUI.WordWrapLeftAligned) | 
|---|
 | 53 |     local height = lines * window:getFont():getLineSpacing() + frameHeight | 
|---|
 | 54 |     return height | 
|---|
 | 55 | end | 
|---|