Class: Cosmos::SelectDialog

Inherits:
Object show all
Defined in:
lib/cosmos/gui/dialogs/select_dialog.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(parent, label_text, items, title = 'Select Item') ⇒ SelectDialog

Returns a new instance of SelectDialog.



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# File 'lib/cosmos/gui/dialogs/select_dialog.rb', line 20

def initialize(parent, label_text, items, title = 'Select Item')
  @result = nil

  dialog = Qt::Dialog.new(parent, Qt::WindowTitleHint | Qt::WindowSystemMenuHint)
  dialog.setWindowTitle(title)
  dialog_layout = Qt::VBoxLayout.new

  chooser = ComboboxChooser.new(dialog, label_text, items)
  dialog_layout.addWidget(chooser)

  button_layout = Qt::HBoxLayout.new
  ok = Qt::PushButton.new("Ok")
  ok.connect(SIGNAL('clicked()')) do
    dialog.accept()
  end
  button_layout.addWidget(ok)
  cancel = Qt::PushButton.new("Cancel")
  cancel.connect(SIGNAL('clicked()')) do
    dialog.reject()
  end
  button_layout.addWidget(cancel)
  dialog_layout.addLayout(button_layout)

  dialog.setLayout(dialog_layout)
  dialog.raise
  if dialog.exec == Qt::Dialog::Accepted
    @result = chooser.string
  else
    @result = nil
  end
  dialog.dispose
end

Instance Attribute Details

#resultObject

Returns the value of attribute result.



18
19
20
# File 'lib/cosmos/gui/dialogs/select_dialog.rb', line 18

def result
  @result
end