欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  资讯频道

Glimmer:使用Ruby创建SWT用户界面

程序员文章站 2022-03-03 15:39:25
...
Glimmer是一个JRuby DSL,能够让开发者使用强大的平*立的Eclipse SWT库 简单有效的创建用户界面。Glimmer拥有内建的数据捆绑支持,使得同步UI和领域模型非常便捷。Glimmer的目标是在Eclipse顶尖技术上创建一个JRuby框架,进入桌面开发领域发展Ruby语言(Ruby现在在UI桌面方面还很薄弱)。Glimmer正式成为Eclipse项目,让我们了解一下它的功能。

Philosophy 宗旨

1。简捷和不要重复 Concise and DRY

2。只需要最小的信息就能完成任务

3。约定大于配置 (类似Rails)

4。尽可能对于SWT开发者方便使用

Conventions 规定

既然Glimmer依赖Ruby,那么语法和规定和Java SWT开发是不同的,比如 Java-vs-Ruby example: show() => show

下载:https://rubyforge.org/projects/glimmer/

Tutorial

下面是一个建达的Glimmer Hellow World例子:

   shell {  
     label { text “Hello World!” }  
   }  


显示结果:

Glimmer:使用Ruby创建SWT用户界面


更复杂的例子:

shell {
  text "User Profile"
  composite {
    layout GridLayout.new(2, false)
    group {
      text "Name"
      layout GridLayout.new(2, false)
      layout_data GridData.new(fill, fill, true, true)
      label {text "First"}; text {text "Bullet"}
      label {text "Last"}; text {text "Tooth"}  
    }
    group {
      layout_data GridData.new(fill, fill, true, true)
      text "Gender"
      button(radio) {text "Male"; selection true}
      button(radio) {text "Female"}  
    }
    group {
      layout_data GridData.new(fill, fill, true, true)
      text "Role"
      button(check) {text "Student"; selection true}
      button(check) {text "Employee"; selection true}  
    }
    group {
      text "Experience"
      layout RowLayout.new
      layout_data GridData.new(fill, fill, true, true)
      spinner {selection 5}; label {text "years"}
    }
    button {
      text "save"
      layout_data GridData.new(right, center, true, true)
    }
    button {
      text "close"
      layout_data GridData.new(left, center, true, true)
    }
  }
}.open


显示结果:

Glimmer:使用Ruby创建SWT用户界面
相关标签: Ruby Eclipse