diff options
| author | Alexander Gavrilov | 2012-08-24 13:28:34 +0400 |
|---|---|---|
| committer | Alexander Gavrilov | 2012-08-24 13:28:34 +0400 |
| commit | 296f82b02fcd0801d6614bb45da05c88ed7c88d2 (patch) | |
| tree | 4d13745e4d88ea48a9fb7168abf832d740a7dec6 /scripts | |
| parent | e825dc5ddb1f2c0798b571ebcb02a52e184fc689 (diff) | |
| download | dfhack-296f82b02fcd0801d6614bb45da05c88ed7c88d2.tar.gz dfhack-296f82b02fcd0801d6614bb45da05c88ed7c88d2.tar.bz2 dfhack-296f82b02fcd0801d6614bb45da05c88ed7c88d2.tar.xz | |
Try using the Objective-C 'alloc + init' idiom for lua screen objects.
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/gui/hello-world.lua | 2 | ||||
| -rw-r--r-- | scripts/gui/mechanisms.lua | 18 |
2 files changed, 10 insertions, 10 deletions
diff --git a/scripts/gui/hello-world.lua b/scripts/gui/hello-world.lua index b67e5012..80986bbf 100644 --- a/scripts/gui/hello-world.lua +++ b/scripts/gui/hello-world.lua @@ -17,6 +17,6 @@ local screen = mkinstance(gui.FramedScreen, { self:dismiss() end end -}) +}):init() screen:show() diff --git a/scripts/gui/mechanisms.lua b/scripts/gui/mechanisms.lua index 3b40ffbd..d33d55a9 100644 --- a/scripts/gui/mechanisms.lua +++ b/scripts/gui/mechanisms.lua @@ -52,15 +52,16 @@ MechanismList = defclass(MechanismList, guidm.MenuOverlay) MechanismList.focus_path = 'mechanisms' -function MechanismList.new(building) - local self = { - links = {}, - selected = 1 +function MechanismList:init(building) + self:init_fields{ + links = {}, selected = 1 } - return mkinstance(MechanismList, self):init(building) + guidm.MenuOverlay.init(self) + self:fillList(building) + return self end -function MechanismList:init(building) +function MechanismList:fillList(building) local links = listMechanismLinks(building) links[1].viewport = self:getViewport() @@ -71,7 +72,6 @@ function MechanismList:init(building) self.links = links self.selected = 1 - return self end local colors = { @@ -133,7 +133,7 @@ function MechanismList:onInput(keys) end elseif keys.SELECT_ALL then if self.selected > 1 then - self:init(self.links[self.selected].obj) + self:fillList(self.links[self.selected].obj) end elseif keys.SELECT then self:dismiss() @@ -146,6 +146,6 @@ if dfhack.gui.getCurFocus() ~= 'dwarfmode/QueryBuilding/Some' then qerror("This script requires the main dwarfmode view in 'q' mode") end -local list = MechanismList.new(df.global.world.selected_building) +local list = mkinstance(MechanismList):init(df.global.world.selected_building) list:show() list:changeSelected(1) |
