97 lines
2.8 KiB
Lua
97 lines
2.8 KiB
Lua
-- In this file we define functions that serves as an interface between the framework of the
|
|
-- editor (C++ code), and the ui. Ideally the C++ should never manipulate the ui directly.
|
|
-- It should rather call functions in this interface to do the job.
|
|
-- This allow for easy customisation, because users can replace any function with their
|
|
-- own lua code (possibly forwarding to the previous function).
|
|
-- This file works in close relation with the r2.xml file with contains the actual ui
|
|
|
|
|
|
|
|
-------------
|
|
-------------
|
|
-- GLOBALS --
|
|
-------------
|
|
-------------
|
|
|
|
-- The following table is intended to contain ui related classes & functions
|
|
-- For now the ui stuffs are being migrated into this table
|
|
-- TODO nico : move ui stuff here to 'depolute' the r2 table
|
|
|
|
r2.ui = {}
|
|
|
|
|
|
-----------------
|
|
-----------------
|
|
-- GLOBAL INIT --
|
|
-----------------
|
|
-----------------
|
|
|
|
function r2:initUI()
|
|
self:buildPaletteUI()
|
|
r2.FeatureTree.buildFeatureTreeUI()
|
|
r2:refreshWindowButtons()
|
|
--updateAllLocalisedElements()
|
|
-- init all forms
|
|
for k, form in pairs(r2.Forms) do
|
|
form.NameToProp = {}
|
|
for l, prop in pairs(form.Prop) do
|
|
form.NameToProp[prop.Name] = prop
|
|
end
|
|
end
|
|
-- make the admin window point on the main page (obsolete, replaced by Session Browser)
|
|
-- if browseRingWindowHomePage ~= nil then
|
|
-- browseRingWindowHomePage()
|
|
-- else
|
|
-- debugInfo("---> ERROR: what is browseRingWindowHomePage?")
|
|
-- end
|
|
r2.SelectBar:init()
|
|
local paletteWnd = getUI("ui:interface:r2ed_palette")
|
|
local debugPanel = paletteWnd:find("debug_panel").button_enclosing
|
|
local extDbg = (config.R2EDExtendedDebug == 1)
|
|
|
|
local chooseLocationWnd = getUI("ui:interface:r2ed_acts")
|
|
local ringLevelDebug = chooseLocationWnd:find("ring_level")
|
|
|
|
if debugPanel then
|
|
debugPanel.reset_ed.active = extDbg
|
|
debugPanel.reset_ed_and_reload_ui.active = extDbg
|
|
debugPanel.reload_core.active = extDbg
|
|
debugPanel.inspect_r2.active = extDbg
|
|
debugPanel.reset_display.active = extDbg
|
|
ringLevelDebug.active = extDbg
|
|
-- debugPanel.test.active = extDbg
|
|
-- debugPanel.create_scenario.active = extDbg
|
|
-- debugPanel.create_act.active = extDbg
|
|
-- debugPanel.connect_scenario.active = extDbg
|
|
-- debugPanel.reconnect_scenario.active = extDbg
|
|
-- debugPanel.list_adventures.active = extDbg
|
|
end
|
|
paletteWnd:find("tab2").active = true
|
|
paletteWnd:find("tab2_bm").active = true
|
|
paletteWnd:find("tab4").active = extDbg
|
|
paletteWnd:find("tab4_bm").active = extDbg
|
|
end
|
|
|
|
|
|
-----------
|
|
-----------
|
|
-- TESTS --
|
|
-----------
|
|
-----------
|
|
function testTree()
|
|
local headNode = SNode()
|
|
local rootNode = SNode()
|
|
headNode:addChild(rootNode)
|
|
rootNode.Text = "Root"
|
|
rootNode.Opened = true
|
|
rootNode.Bitmap = "ICO_Atys.tga"
|
|
local tree = getUI(r2.instanceTree);
|
|
for i = 1,3 do
|
|
local son = SNode()
|
|
son.Text = "Node " .. tostring(i)
|
|
rootNode:addChild(son)
|
|
end
|
|
tree:setRootNode(headNode)
|
|
tree:forceRebuild()
|
|
end
|
|
|