mirror of
https://github.com/airstruck/luigi.git
synced 2025-12-19 02:16:43 +00:00
Formalize type attribute and support it in styles
This commit is contained in:
0
example/layout/about.lua
Normal file
0
example/layout/about.lua
Normal file
30
example/layout/license.lua
Normal file
30
example/layout/license.lua
Normal file
@@ -0,0 +1,30 @@
|
||||
return { style = 'dialog',
|
||||
{ style = 'dialogHead', text = 'License' },
|
||||
{ style = 'dialogBody', text = [[
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2015 airstruck
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
]] },
|
||||
{ style = 'dialogFoot',
|
||||
{}, -- spacer
|
||||
{ style = 'dialogButton', id = 'closeButton', text = 'Close' }
|
||||
}
|
||||
}
|
||||
76
example/layout/main.lua
Normal file
76
example/layout/main.lua
Normal file
@@ -0,0 +1,76 @@
|
||||
return { id = 'mainWindow', type = 'panel',
|
||||
{ type = 'menu', id = 'menubar', flow = 'x',
|
||||
{ text = 'File',
|
||||
{ text = 'Save', id = 'menuSave', key = 'ctrl-s' },
|
||||
{ text = 'Quit', id = 'menuQuit', key = 'escape' },
|
||||
},
|
||||
{ text = 'Edit',
|
||||
{ text = 'Cut', key = 'ctrl-c' },
|
||||
{ text = 'Copy', key = 'ctrl-x' },
|
||||
{ text = 'Paste', key = 'ctrl-v' },
|
||||
{ type = 'slider' },
|
||||
},
|
||||
{ text = 'View',
|
||||
{ text = 'Theme',
|
||||
{ text = 'Light', key = 'ctrl-l', id = 'themeLight', },
|
||||
{ text = 'Dark', key = 'ctrl-d', id = 'themeDark' },
|
||||
},
|
||||
{ text = 'Style',
|
||||
{ text = 'Default' },
|
||||
},
|
||||
},
|
||||
{ text = 'Help',
|
||||
{ id = 'about', text = 'About Luigi', icon = 'icon/16px/Book.png', key = 'f1', },
|
||||
{ id = 'aboutDemo', text = 'About Luigi Demo', icon = 'icon/16px/Book Red.png', key = 'f2' },
|
||||
{ id = 'license', text = 'License', key = 'f3' },
|
||||
},
|
||||
},
|
||||
{ type = 'panel', id = 'toolbar', style = 'toolbar', flow = 'x',
|
||||
{ type = 'button', id = 'newButton', style = 'toolButton', key = 'z',
|
||||
icon = 'icon/32px/Blueprint.png' },
|
||||
{ type = 'button', id = 'loadButton', style = 'toolButton',
|
||||
icon = 'icon/32px/Calendar.png' },
|
||||
{ type = 'button', id = 'saveButton', style = 'toolButton',
|
||||
icon = 'icon/32px/Harddrive.png' },
|
||||
},
|
||||
{ flow = 'x',
|
||||
{ id = 'leftSideBox', width = 200, minwidth = 64, scroll = true,
|
||||
{ text = 'Hi, I\'m centered middle. ', style = 'listThing',
|
||||
align = 'middle center' },
|
||||
{ text = 'Hi, I\'m right bottom.\nAlso two lines, woopdy woop.Hi, I\'m right bottom.\nAlso two lines, woopdy woop.Hi, I\'m right bottom.\nAlso two lines, woopdy woop.', style = 'listThing',
|
||||
align = 'bottom right' },
|
||||
{ text = 'Hi, I\'m centered top. ', style = 'listThing',
|
||||
align = 'top center' },
|
||||
{ text = 'A man, a plan, a canal: Panama!', style = 'listThing' },
|
||||
},
|
||||
{ type = 'sash', width = 4, },
|
||||
{ id = 'mainCanvas' },
|
||||
{ type = 'sash', width = 4, },
|
||||
{ type = 'panel', id = 'rightSideBox', width = 200, minwidth = 64,
|
||||
{ type = 'panel', text = 'A slider', align = 'bottom', height = 24, padding = 4 },
|
||||
{ type = 'slider', height = 32, margin = 4, id = 'slidey', value = 0 },
|
||||
{ type = 'panel', text = 'A stepper', align = 'bottom', height = 24, padding = 4 },
|
||||
{ type = 'stepper', height = 32, margin = 4,
|
||||
{ value = 1, text = 'Thing One' },
|
||||
{ value = 2, text = 'Thing Two' },
|
||||
{ value = 3, text = 'Thing Three' },
|
||||
},
|
||||
{ type = 'panel', text = 'A progress bar', align = 'bottom', height = 24, padding = 4 },
|
||||
{ type = 'progress', height = 32, margin = 4, id = 'progressBar', },
|
||||
{ type = 'panel', text = 'A check box', align = 'bottom', height = 24, padding = 4 },
|
||||
{ type = 'check', text = 'Check it out', height = 32, padding = 4, id = 'checkBox', },
|
||||
{ type = 'panel', text = 'Some radio widgets', align = 'bottom', height = 24, padding = 4 },
|
||||
{ type = 'radio', text = 'One fish', height = 32, padding = 4, },
|
||||
{ type = 'radio', text = 'Two fish', height = 32, padding = 4, },
|
||||
{ type = 'radio', text = 'Red fish', height = 32, padding = 4, },
|
||||
{ type = 'radio', text = 'Blue fish', height = 32, padding = 4, },
|
||||
},
|
||||
},
|
||||
{ type = 'sash', height = 4, },
|
||||
{ type = 'panel', flow = 'x', height = 48, padding = 2,
|
||||
{ type = 'text', id = 'aTextField', text = 'Testing «ταБЬℓσ»: 1<2 & 4+1>3, now 20% off!' },
|
||||
{ type = 'button', key='return', width = 80, id = 'aButton', text = 'Styling!',
|
||||
font = 'font/DejaVuSansMono.ttf' },
|
||||
},
|
||||
{ type = 'panel', id = 'statusbar', height = 24, padding = 4, color = { 255, 0, 0 } },
|
||||
}
|
||||
Reference in New Issue
Block a user