mirror of
https://github.com/kepler155c/opus
synced 2024-09-28 15:08:41 +00:00
7224d441ca
* canvas overhaul * minor tweaks * list mode for overview * bugfixes + tweaks for editor 2.0 * minor tweaks * more editor work * refactor + new transitions * use layout() where appropriate and cleanup * mouse triple click + textEntry scroll ind * cleanup * cleanup + theme editor * color rework + cleanup * changes for deprecated ui methods * can now use named colors
50 lines
1.0 KiB
Lua
50 lines
1.0 KiB
Lua
local class = require('opus.class')
|
|
local UI = require('opus.ui')
|
|
|
|
UI.Dialog = class(UI.SlideOut)
|
|
UI.Dialog.defaults = {
|
|
UIElement = 'Dialog',
|
|
height = 7,
|
|
noFill = true,
|
|
okEvent ='dialog_ok',
|
|
cancelEvent = 'dialog_cancel',
|
|
}
|
|
function UI.Dialog:postInit()
|
|
self.y = -self.height
|
|
self.titleBar = UI.TitleBar({ event = self.cancelEvent, title = self.title })
|
|
end
|
|
|
|
function UI.Dialog:eventHandler(event)
|
|
if event.type == 'dialog_cancel' then
|
|
self:hide()
|
|
end
|
|
return UI.SlideOut.eventHandler(self, event)
|
|
end
|
|
|
|
function UI.Dialog.example()
|
|
return UI.Dialog {
|
|
title = 'Enter Starting Level',
|
|
height = 7,
|
|
form = UI.Form {
|
|
y = 3, x = 2, height = 4,
|
|
event = 'setStartLevel',
|
|
cancelEvent = 'slide_hide',
|
|
text = UI.Text {
|
|
x = 5, y = 1, width = 20,
|
|
textColor = 'gray',
|
|
},
|
|
textEntry = UI.TextEntry {
|
|
formKey = 'level',
|
|
x = 15, y = 1, width = 7,
|
|
},
|
|
},
|
|
statusBar = UI.StatusBar(),
|
|
enable = function(self)
|
|
require('opus.event').onTimeout(0, function()
|
|
self:show()
|
|
self:sync()
|
|
end)
|
|
end,
|
|
}
|
|
end
|