Sha256: cabe00f7c2ecd9905447d8663126bac9f173b59c07bb6f44076980664c7d24e4

Contents?: true

Size: 1.75 KB

Versions: 8

Compression:

Stored size: 1.75 KB

Contents

require_relative "contact_manager_presenter"
require_relative "../../lib/glimmer"

class RWidget
  include_package 'org.eclipse.jface.viewers'
end

class ContactManager
  extend Glimmer

  include_package 'org.eclipse.swt'
  include_package 'org.eclipse.swt.widgets'
  include_package 'org.eclipse.swt.layout'
  include_package 'org.eclipse.jface.viewers'
  
  contact_manager_presenter = ContactManagerPresenter.new
  
  shell {
    text "Contact Manager"
    composite {
      composite {
        layout GridLayout.new(2, false)
        label {text "First &Name: "}
        text {
          text bind(contact_manager_presenter, :first_name)
        }
        label {text "&Last Name: "}
        text {
          text bind(contact_manager_presenter, :last_name)
        }
        label {text "&Email: "}
        text {
          text bind(contact_manager_presenter, :email)
        }
      }
      
      table {
        layout_data GridData.new(:fill.swt_constant, :fill.swt_constant, true, true)
        table_column {
          text "First Name"
          width 80
        }
        table_column {
          text "Last Name"
          width 80
        }
        table_column {
          text "Email"
          width 120
        }
        items bind(contact_manager_presenter, :results), 
              column_properties(:first_name, :last_name, :email)
      }
      composite {
        layout GridLayout.new(2, false)
        button {
          text "&List"
          on_widget_selected {
            contact_manager_presenter.list
          }
        }
        button {
          text "&Find"
          on_widget_selected {
            contact_manager_presenter.find
          }
        }
      }
    }
  }.open
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
glimmer-0.1.11.SWT4.14 samples/contactmanager/contact_manager.rb
glimmer-0.1.11.470 samples/contactmanager/contact_manager.rb
glimmer-0.1.10.470 samples/contactmanager/contact_manager.rb
glimmer-0.1.9.470 samples/contactmanager/contact_manager.rb
glimmer-0.1.8.470 samples/contactmanager/contact_manager.rb
glimmer-0.1.5.470 samples/contactmanager/contact_manager.rb
glimmer-0.1.4.470 samples/contactmanager/contact_manager.rb
glimmer-0.1.4.swt.pre.4.7.0 samples/contactmanager/contact_manager.rb