Sha256: a33ed38c09ea3f7bf43b7b1c1ed4fb91d5d05bd1970a626d7bbf65db7e8a50fc

Contents?: true

Size: 1.54 KB

Versions: 17

Compression:

Stored size: 1.54 KB

Contents

## Glimmer Style Guide

- Widgets are declared with underscored lowercase versions of their SWT names minus the SWT package name.
- Widget declarations may optionally have arguments and be followed by a block (to contain properties and content)
- Widget blocks are always declared with curly braces
- Widget arguments are always wrapped inside parentheses
- Widget properties are declared with underscored lowercase versions of the SWT properties
- Widget property declarations always have arguments and never take a block
- Widget property arguments are never wrapped inside parentheses
- Widget listeners are always declared starting with `on_` prefix and affixing listener event method name afterwards in underscored lowercase form. Their multi-line blocks rely on the `do; end` style.
- Widget listeners are always followed by a block using curly braces (Only when declared in DSL. When invoked on widget object directly outside of GUI declarations, standard Ruby conventions apply)
- Data-binding is done via `bind` keyword, which always takes arguments wrapped in parentheses
- Custom widget/shell/shape `body` blocks open and close with curly braces.
- Custom widget/shell/shape `before_body` and `after_body` blocks are declared as `do; end` blocks.
- Custom widgets receive additional keyword arguments called options, which come after the SWT styles.
- Pure logic multi-line blocks that do not constitute GUI DSL view elements (such as `Thread.new`, `loop`, `each` and `observe` blocks) rely on the `do; end` style to clearly separate logic code from view code.

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
glimmer-dsl-swt-4.20.15.4 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.15.3 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.15.2 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.15.1 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.15.0 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.14.2 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.14.1 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.14.0 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.13.18 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.13.17 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.13.16 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.13.15 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.13.14 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.13.13 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.13.12 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.13.11 docs/reference/GLIMMER_STYLE_GUIDE.md
glimmer-dsl-swt-4.20.13.10 docs/reference/GLIMMER_STYLE_GUIDE.md