visualruby 3.0.2 → 3.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. checksums.yaml +4 -4
  2. data/.vr_settings.yaml +27 -0
  3. data/bin/editor/VR_Document.rb +156 -156
  4. data/bin/editor/VR_TabSearch.rb +37 -37
  5. data/bin/editor/VR_Tabs.rb +82 -82
  6. data/bin/editor/VR_TextShell.rb +49 -52
  7. data/bin/editor/VR_TextViewCommon.rb +31 -31
  8. data/bin/main/GemTree.rb +14 -14
  9. data/bin/main/NewProjectGUI.rb +24 -24
  10. data/bin/main/OpenProject.rb +53 -53
  11. data/bin/main/ProjectChooserView.rb +31 -31
  12. data/bin/main/ProjectTree.rb +17 -17
  13. data/bin/main/RubygemsAPI.rb +73 -63
  14. data/bin/main/VR_ENV.rb +29 -29
  15. data/bin/main/VR_ENV_GLOBAL.rb +52 -52
  16. data/bin/main/VR_File_Tree.rb +88 -88
  17. data/bin/main/VR_Local_Gem_Tree.rb +53 -53
  18. data/bin/main/VR_Main.rb +240 -238
  19. data/bin/main/VR_Remote_Gem_Tree.rb +41 -41
  20. data/bin/main/glade/Splash.glade +19 -0
  21. data/bin/tools/VR_Tools.rb +72 -72
  22. data/examples/active_record/.vr_settings.yaml +50 -0
  23. data/examples/active_record/active_record.rb +2 -2
  24. data/examples/active_record/bin/ChoosePerson.rb +10 -10
  25. data/examples/active_record/bin/Person.rb +6 -6
  26. data/examples/active_record2/.vr_settings.yaml +23 -0
  27. data/examples/active_record2/bin/CompanyGUI.rb +42 -42
  28. data/examples/active_record2/bin/Employee.rb +13 -13
  29. data/examples/active_record2/bin/Employer.rb +5 -5
  30. data/examples/active_record2/bin/Paycheck.rb +5 -5
  31. data/examples/active_record2/main.rb +4 -4
  32. data/examples/alert_box/bin/AlertBoxDemo.rb +40 -50
  33. data/examples/alert_box/bin/glade/AlertBoxDemo.glade +14 -45
  34. data/examples/all_widgets/.vr_settings.yaml +18 -0
  35. data/examples/all_widgets/bin/AllWidgets.rb +19 -16
  36. data/examples/calculator/.vr_settings.yaml +18 -0
  37. data/examples/calculator/bin/Calculator.rb +22 -22
  38. data/examples/child_window/.vr_settings.yaml +21 -0
  39. data/examples/child_window/bin/ChildWindowDemo.rb +10 -10
  40. data/examples/child_window/bin/ModalWindow.rb +4 -4
  41. data/examples/child_window/bin/ModelessWindow.rb +4 -4
  42. data/examples/child_window/bin/MyChildClass.rb +10 -10
  43. data/examples/drag_drop/.vr_settings.yaml +16 -0
  44. data/examples/drag_drop/bin/DragDropDemo.rb +28 -28
  45. data/examples/filetreeview/.vr_settings.yaml +20 -0
  46. data/examples/filetreeview/bin/ProjectTree.rb +13 -23
  47. data/examples/filetreeview/bin/ProjectTreeGUI.rb +18 -17
  48. data/examples/listview/.vr_settings.yaml +19 -0
  49. data/examples/listview/bin/SongListView.rb +72 -72
  50. data/examples/listview/bin/SongListViewGUI.rb +52 -52
  51. data/examples/listview_objects/.vr_settings.yaml +19 -0
  52. data/examples/listview_objects/bin/DataObject.rb +23 -23
  53. data/examples/listview_objects/bin/ListViewObjects.rb +29 -29
  54. data/examples/listview_objects/bin/ListViewObjectsGUI.rb +12 -12
  55. data/examples/settings_file/bin/MainApp.rb +25 -25
  56. data/examples/settings_file/bin/SavableSettings.rb +25 -26
  57. data/examples/settings_file/settings.yaml +1 -1
  58. data/examples/simple_ruby_gui/.vr_settings.yaml +20 -0
  59. data/examples/simple_ruby_gui/bin/DataObjectGUI.rb +12 -12
  60. data/examples/treeview/.vr_settings.yaml +17 -0
  61. data/examples/treeview/bin/MyClass.rb +18 -17
  62. data/examples/treeview/bin/glade/MyClass.glade +61 -6
  63. data/skeleton/document/NewWindow.rb +8 -8
  64. data/skeleton/project/.vr_settings.yaml +15 -0
  65. data/skeleton/project/bin/MyClass.rb +7 -7
  66. data/vr +38 -41
  67. data/vrlib/doc/images/add.png +0 -0
  68. data/vrlib/doc/images/arrow_up.png +0 -0
  69. data/vrlib/doc/images/brick.png +0 -0
  70. data/vrlib/doc/images/brick_link.png +0 -0
  71. data/vrlib/doc/images/bug.png +0 -0
  72. data/vrlib/doc/images/bullet_black.png +0 -0
  73. data/vrlib/doc/images/bullet_toggle_minus.png +0 -0
  74. data/vrlib/doc/images/bullet_toggle_plus.png +0 -0
  75. data/vrlib/doc/images/date.png +0 -0
  76. data/vrlib/doc/images/delete.png +0 -0
  77. data/vrlib/doc/images/find.png +0 -0
  78. data/vrlib/doc/images/macFFBgHack.png +0 -0
  79. data/vrlib/doc/images/package.png +0 -0
  80. data/vrlib/doc/images/page_green.png +0 -0
  81. data/vrlib/doc/images/page_white_text.png +0 -0
  82. data/vrlib/doc/images/page_white_width.png +0 -0
  83. data/vrlib/doc/images/plugin.png +0 -0
  84. data/vrlib/doc/images/ruby.png +0 -0
  85. data/vrlib/doc/images/tag_blue.png +0 -0
  86. data/vrlib/doc/images/tag_green.png +0 -0
  87. data/vrlib/doc/images/transparent.png +0 -0
  88. data/vrlib/doc/images/wrench.png +0 -0
  89. data/vrlib/doc/images/wrench_orange.png +0 -0
  90. data/vrlib/doc/images/zoom.png +0 -0
  91. data/vrlib/lib/Alert.rb +98 -55
  92. data/vrlib/lib/DragDrop.rb +43 -43
  93. data/vrlib/lib/GladeGUI.rb +207 -207
  94. data/vrlib/lib/IconHash.rb +10 -10
  95. data/vrlib/lib/SavableClass.rb +38 -38
  96. data/vrlib/lib/SimpleComboBoxEntry.rb +3 -3
  97. data/vrlib/lib/treeview/FileTreeView.rb +71 -70
  98. data/vrlib/lib/treeview/IterMethods.rb +35 -35
  99. data/vrlib/lib/treeview/ListView.rb +25 -25
  100. data/vrlib/lib/treeview/TreeView.rb +15 -15
  101. data/vrlib/lib/treeview/ViewCommon.rb +134 -131
  102. data/vrlib/lib/treeview/columns/CalendarCol.rb +48 -48
  103. data/vrlib/lib/treeview/columns/CellRendererCombo.rb +26 -26
  104. data/vrlib/lib/treeview/columns/CellRendererDate.rb +25 -25
  105. data/vrlib/lib/treeview/columns/CellRendererObject.rb +37 -37
  106. data/vrlib/lib/treeview/columns/CellRendererPhone.rb +25 -25
  107. data/vrlib/lib/treeview/columns/CellRendererPixbuf.rb +8 -8
  108. data/vrlib/lib/treeview/columns/CellRendererProgress.rb +8 -8
  109. data/vrlib/lib/treeview/columns/CellRendererSpin.rb +17 -17
  110. data/vrlib/lib/treeview/columns/CellRendererText.rb +18 -18
  111. data/vrlib/lib/treeview/columns/CellRendererToggle.rb +25 -25
  112. data/vrlib/lib/treeview/columns/ComboCol.rb +12 -12
  113. data/vrlib/lib/treeview/columns/CurrencyCol.rb +13 -13
  114. data/vrlib/lib/treeview/columns/DateCol.rb +10 -10
  115. data/vrlib/lib/treeview/columns/ImageCol.rb +16 -16
  116. data/vrlib/lib/treeview/columns/SpinCol.rb +5 -5
  117. data/vrlib/lib/treeview/columns/TextCol.rb +24 -24
  118. data/vrlib/lib/treeview/columns/TreeViewColumn.rb +71 -76
  119. data/vrlib/rdoc_replace.yaml +36 -36
  120. metadata +43 -6
  121. data/Splash.rb +0 -40
@@ -113,47 +113,47 @@ module VR
113
113
 
114
114
  attr_accessor :vr_renderer, :vr_column
115
115
 
116
- def load_columns(cols) # :nodoc:
117
- @vr_renderer = {}
118
- @vr_column = {}
119
- model_col = 0
120
- cols.each_pair do | sym, type|
121
- col = VR::TreeViewColumn.new(self, model_col, sym, type)
122
- model_col = model_col + (type.class == Hash ? type.size : 1)
123
- self.append_column(col)
124
- end
125
- turn_on_comboboxes()
126
- @column_keys = flatten_hash(cols).keys
127
- end
116
+ def load_columns(cols) # :nodoc:
117
+ @vr_renderer = {}
118
+ @vr_column = {}
119
+ model_col = 0
120
+ cols.each_pair do | sym, type|
121
+ col = VR::TreeViewColumn.new(self, model_col, sym, type)
122
+ model_col = model_col + (type.class == Hash ? type.size : 1)
123
+ self.append_column(col)
124
+ end
125
+ turn_on_comboboxes()
126
+ @column_keys = flatten_hash(cols).keys
127
+ end
128
128
 
129
- def method_missing(meth, *args) # :nodoc:
130
- unless m = /^(ren_|col_)(.+)$/.match(meth.to_s)
131
- super
132
- return
133
- end
134
- if args.first.is_a? Hash
135
- args.first.each_pair { |key, val| method(m[1] + "attr").call(key, m[2] => val) }
136
- else
137
- method(m[1] + "attr").call(m[2] => args.first)
138
- end
129
+ def method_missing(meth, *args) # :nodoc:
130
+ unless m = /^(ren_|col_)(.+)$/.match(meth.to_s)
131
+ super
132
+ return
133
+ end
134
+ if args.first.is_a? Hash
135
+ args.first.each_pair { |key, val| method(m[1] + "attr").call(key, m[2] => val) }
136
+ else
137
+ method(m[1] + "attr").call(m[2] => args.first)
138
+ end
139
139
  end
140
140
 
141
141
  # Sets properties on renderers (and columns) See VR::ViewCommon#col_attr for more.
142
142
 
143
- def ren_attr(*args)
144
- cols = args.select { |arg| !arg.is_a? Hash }
145
- return unless hash = args.detect { |arg| arg.is_a? Hash }
146
- cols = @column_keys if cols.empty?
147
- cols.each do |c|
148
- hash.each_pair do | key, val |
149
- if renderer(c).respond_to?(key.to_s + "=")
150
- renderer(c).send(key.to_s + '=', val)
151
- elsif column(c).respond_to?(key.to_s + "=")
152
- column(c).send(key.to_s + '=', val)
153
- end
154
- end
155
- end
156
- end
143
+ def ren_attr(*args)
144
+ cols = args.select { |arg| !arg.is_a? Hash }
145
+ return unless hash = args.detect { |arg| arg.is_a? Hash }
146
+ cols = @column_keys if cols.empty?
147
+ cols.each do |c|
148
+ hash.each_pair do | key, val |
149
+ if renderer(c).respond_to?(key.to_s + "=")
150
+ renderer(c).send(key.to_s + '=', val)
151
+ elsif column(c).respond_to?(key.to_s + "=")
152
+ column(c).send(key.to_s + '=', val)
153
+ end
154
+ end
155
+ end
156
+ end
157
157
 
158
158
  # Sets properties on many columns at once. It can be called with many columns and many attributes.
159
159
  # Also, if you don't specify any columns, it will set the properties on all of them. There are
@@ -176,20 +176,20 @@ attr_accessor :vr_renderer, :vr_column
176
176
  # In the vast majority of cases, VR::ViewCommon#col_attr and VR::ViewCommon#ren_attr are interchangable.
177
177
 
178
178
 
179
- def col_attr(*args)
180
- cols = args.select { |arg| !arg.is_a? Hash }
181
- return unless hash = args.detect { |arg| arg.is_a? Hash }
182
- cols = @column_keys if cols.empty?
183
- cols.each do |c|
184
- hash.each_pair do | key, val |
185
- if column(c).respond_to?(key.to_s + "=")
186
- column(c).send(key.to_s + '=', val)
187
- elsif renderer(c).respond_to?(key.to_s + "=")
188
- renderer(c).send(key.to_s + '=', val)
189
- end
190
- end
191
- end
192
- end
179
+ def col_attr(*args)
180
+ cols = args.select { |arg| !arg.is_a? Hash }
181
+ return unless hash = args.detect { |arg| arg.is_a? Hash }
182
+ cols = @column_keys if cols.empty?
183
+ cols.each do |c|
184
+ hash.each_pair do | key, val |
185
+ if column(c).respond_to?(key.to_s + "=")
186
+ column(c).send(key.to_s + '=', val)
187
+ elsif renderer(c).respond_to?(key.to_s + "=")
188
+ renderer(c).send(key.to_s + '=', val)
189
+ end
190
+ end
191
+ end
192
+ end
193
193
 
194
194
 
195
195
  # Returns an array of rows that are selected in the VR::TreeView or VR::ListView.
@@ -198,54 +198,54 @@ attr_accessor :vr_renderer, :vr_column
198
198
  # selection mode, it will return an array with one row. These rows are
199
199
  # able to respond to column IDs. They are the same types of rows as returned by
200
200
  # VR::ViewCommon#vr_row.
201
-
202
- def selected_rows()
203
- rows = []
204
- selection.each do |model, path, iter|
205
- rows << vr_row(iter)
206
- end
207
- rows
208
- end
201
+
202
+ def selected_rows()
203
+ rows = []
204
+ selection.each do |model, path, iter|
205
+ rows << vr_row(iter)
206
+ end
207
+ rows
208
+ end
209
209
 
210
- def delete_selected()
211
- refs = []
212
- selection.each do |mod, path, iter|
213
- refs << Gtk::TreeRowReference.new(mod, path)
214
- end
215
- refs.each do |ref|
216
- model.remove(model.get_iter(ref.path))
217
- end
218
- end
210
+ def delete_selected()
211
+ refs = []
212
+ selection.each do |mod, path, iter|
213
+ refs << Gtk::TreeRowReference.new(mod, path)
214
+ end
215
+ refs.each do |ref|
216
+ model.remove(model.get_iter(ref.path))
217
+ end
218
+ end
219
219
 
220
- def turn_on_comboboxes() # :nodoc:
221
- # detect if comboboxes are present:
222
- found = false
223
- self.each_renderer do |r|
224
- if r.is_a? VR::CellRendererCombo
225
- found = true
226
- break
227
- end
228
- end
229
- return unless found
230
- self.signal_connect("cursor_changed") do |view|
231
- next unless iter = view.selection.selected
232
- view.each_renderer do |r|
233
- r.set_model( iter[r.model_col] ) if r.is_a? VR::CellRendererCombo
234
- end
235
- end
236
- end
220
+ def turn_on_comboboxes() # :nodoc:
221
+ # detect if comboboxes are present:
222
+ found = false
223
+ self.each_renderer do |r|
224
+ if r.is_a? VR::CellRendererCombo
225
+ found = true
226
+ break
227
+ end
228
+ end
229
+ return unless found
230
+ self.signal_connect("cursor_changed") do |view|
231
+ next unless iter = view.selection.selected
232
+ view.each_renderer do |r|
233
+ r.set_model( iter[r.model_col] ) if r.is_a? VR::CellRendererCombo
234
+ end
235
+ end
236
+ end
237
237
 
238
- def flatten_hash(hash) # :nodoc:
239
- h = {}
240
- hash.each do | k, v |
241
- if v.class == Hash
242
- v.each_pair { |key, val| h[key] = val }
243
- else
244
- h[k] = v
245
- end
246
- end
247
- return h
248
- end
238
+ def flatten_hash(hash) # :nodoc:
239
+ h = {}
240
+ hash.each do | k, v |
241
+ if v.class == Hash
242
+ v.each_pair { |key, val| h[key] = val }
243
+ else
244
+ h[k] = v
245
+ end
246
+ end
247
+ return h
248
+ end
249
249
 
250
250
  # Enumerates each row in the model and returns an instance of GtkTreeIter.
251
251
  # However, the iters returned have been converted into a "row" using VR::ViewCommon#vr_row
@@ -254,9 +254,12 @@ attr_accessor :vr_renderer, :vr_column
254
254
  # @view.each_row { |row| puts row[:name] } # works!
255
255
  #
256
256
 
257
- def each_row
258
- self.model.each { |mod, pth, itr| yield vr_row(itr) }
259
- end
257
+ def each_row
258
+ self.model.each do |mod, pth, itr|
259
+ iter = model.get_iter(pth) #bug?
260
+ yield vr_row(iter)
261
+ end
262
+ end
260
263
 
261
264
  # Converts a normal GtkTreeIter to use VR's column IDs. You can use it like this:
262
265
  #
@@ -264,17 +267,17 @@ attr_accessor :vr_renderer, :vr_column
264
267
  # row[:name] = "Chester" # works!
265
268
 
266
269
 
267
- def vr_row(iter)
268
- unless iter.respond_to?(:id)
269
- iter.extend(VR::IterMethods)
270
- iter.column_keys = @column_keys
271
- end
272
- return iter
273
- end
270
+ def vr_row(iter)
271
+ unless iter.respond_to?(:id)
272
+ iter.extend(VR::IterMethods)
273
+ iter.column_keys = @column_keys
274
+ end
275
+ return iter
276
+ end
274
277
 
275
- def get_iter(path)
276
- vr_row(model.get_iter(path))
277
- end
278
+ def get_iter(path)
279
+ vr_row(model.get_iter(path))
280
+ end
278
281
 
279
282
 
280
283
  # Returns a VR::TreeViewColumn object for the column. You can pass this method either
@@ -290,17 +293,17 @@ attr_accessor :vr_renderer, :vr_column
290
293
  # methods instead. See VR::ViewCommon for more.
291
294
 
292
295
 
293
- def column(id)
294
- @vr_column[id]
295
- end
296
-
297
- def each_renderer
298
- self.columns.each do |c|
299
- c.cells.each do |r|
300
- yield r
301
- end
302
- end
303
- end
296
+ def column(id)
297
+ @vr_column[id]
298
+ end
299
+
300
+ def each_renderer
301
+ self.columns.each do |c|
302
+ c.cells.each do |r|
303
+ yield r
304
+ end
305
+ end
306
+ end
304
307
 
305
308
  #Returns the renderer for a given column ID.
306
309
  #
@@ -334,16 +337,16 @@ attr_accessor :vr_renderer, :vr_column
334
337
  #
335
338
  #This is perfectly valid even though there are better ways of setting these properties in visualruby.
336
339
 
337
- def renderer(sym)
338
- @vr_renderer[sym]
339
- end
340
+ def renderer(sym)
341
+ @vr_renderer[sym]
342
+ end
340
343
 
341
- # def renderer(id)
342
- # each_renderer do |r|
343
- # return r if r.model_col == id(id)
344
- # end
345
- # return nil
346
- # end
344
+ # def renderer(id)
345
+ # each_renderer do |r|
346
+ # return r if r.model_col == id(id)
347
+ # end
348
+ # return nil
349
+ # end
347
350
 
348
351
  # Returns the number of the given column ID. This is very useful when you're
349
352
  # working with Gtk's methods because they require column numbers (not Column IDs)
@@ -362,9 +365,9 @@ attr_accessor :vr_renderer, :vr_column
362
365
  # you also have the option of converting the whole iter to use column IDs (symbols)
363
366
  # using VR::ViewCommon#vr_row.
364
367
 
365
- def id(id)
366
- return (id.is_a? Fixnum or id.is_a? Integer) ? id : @column_keys.index(id)
367
- end
368
+ def id(id)
369
+ return (id.is_a? Fixnum or id.is_a? Integer) ? id : @column_keys.index(id)
370
+ end
368
371
 
369
372
  end
370
373
  end
@@ -18,72 +18,72 @@ module VR
18
18
  #
19
19
  # See the example project, "listview_objects" for more.
20
20
 
21
- class CalendarCol
21
+ class CalendarCol
22
22
 
23
- include GladeGUI
23
+ include GladeGUI
24
24
 
25
- attr_accessor :date, :date_format, :show_time, :show_calendar
25
+ attr_accessor :date, :date_format, :show_time, :show_calendar
26
26
  #
27
27
  # - datetime - Instance of DateTime class that holds the date value.
28
28
  # - date_format - String that holds the Ruby date format. Default: "%d %b %Y %I:%M%p"
29
29
  # - show_time - true/false If this is false, the time will not appear in the edit window.
30
30
  # - show_calendar - true/false If this is false, Calendar will not appear. Only time will edit.
31
31
  #
32
- def initialize(datetime, flags = {}) #flags = :hide_date => true, hide_time => true, :format => "%d %b %Y %I:%M%p"
33
- @format = flags[:format]
34
- @format ||= flags[:hide_date] ? "%I:%M%p" : "%d %b %Y %I:%M%p"
35
- @format ||= flags[:hide_time] ? "%d %b %Y" : @date_format
36
- @hide_date = flags[:hide_date]
37
- @hide_time = flags[:hide_time]
38
- @show_calendar = show_calendar
39
- @date = datetime
40
- @hour = @date.strftime("%I").to_f
41
- @minute = @date.min()
42
- @am = (@date.hour < 12)
43
- @pm = !@am
44
- end
32
+ def initialize(datetime, flags = {}) #flags = :hide_date => true, hide_time => true, :format => "%d %b %Y %I:%M%p"
33
+ @format = flags[:format]
34
+ @format ||= flags[:hide_date] ? "%I:%M%p" : "%d %b %Y %I:%M%p"
35
+ @format ||= flags[:hide_time] ? "%d %b %Y" : @date_format
36
+ @hide_date = flags[:hide_date]
37
+ @hide_time = flags[:hide_time]
38
+ @show_calendar = show_calendar
39
+ @date = datetime
40
+ @hour = @date.strftime("%I").to_f
41
+ @minute = @date.min()
42
+ @am = (@date.hour < 12)
43
+ @pm = !@am
44
+ end
45
45
 
46
- def show_glade(parent = nil)
47
- super
48
- @builder["hboxTime"].hide if @hide_time
49
- @builder["date"].hide if @hide_date
50
- end
46
+ def show_glade(parent = nil)
47
+ super
48
+ @builder["hboxTime"].hide if @hide_time
49
+ @builder["date"].hide if @hide_date
50
+ end
51
51
 
52
52
  # displays time according to the @date_format instance variable. If you want to
53
53
  # change the appearance of this object, assign a new vale to @date_format.
54
-
55
- def to_s
56
- @date.strftime(@format)
57
- end
54
+
55
+ def to_s
56
+ @date.strftime(@format)
57
+ end
58
58
 
59
- def am__toggled(*args) # :nodoc:
60
- @builder["pm"].active = !@builder["am"].active?
61
- end
59
+ def am__toggled(*args) # :nodoc:
60
+ @builder["pm"].active = !@builder["am"].active?
61
+ end
62
62
 
63
- def pm__toggled(*args) # :nodoc:
64
- @builder["am"].active = !@builder["pm"].active?
65
- end
63
+ def pm__toggled(*args) # :nodoc:
64
+ @builder["am"].active = !@builder["pm"].active?
65
+ end
66
66
 
67
- def buttonSave__clicked(*args) # :nodoc:
68
- get_glade_variables()
69
- m = @builder["am"].active? ? "AM" : "PM"
70
- t = DateTime.strptime("#{@hour.to_i.to_s} #{@minute.to_i.to_s} #{m}", "%I %M %p")
71
- @date = DateTime.new(@date.year, @date.month, @date.day, t.hour, t.min, 0)
72
- @builder["window1"].destroy
73
- end
67
+ def buttonSave__clicked(*args) # :nodoc:
68
+ get_glade_variables()
69
+ m = @builder["am"].active? ? "AM" : "PM"
70
+ t = DateTime.strptime("#{@hour.to_i.to_s} #{@minute.to_i.to_s} #{m}", "%I %M %p")
71
+ @date = DateTime.new(@date.year, @date.month, @date.day, t.hour, t.min, 0)
72
+ @builder["window1"].destroy
73
+ end
74
74
 
75
- def buttonCancel__clicked(*args) # :nodoc:
76
- @builder["window1"].destroy
77
- end
75
+ def buttonCancel__clicked(*args) # :nodoc:
76
+ @builder["window1"].destroy
77
+ end
78
78
 
79
- def <=>(calendar)
80
- return @date <=> calendar.date
81
- end
79
+ def <=>(calendar)
80
+ return @date <=> calendar.date
81
+ end
82
82
 
83
- def value
84
- @date
85
- end
83
+ def value
84
+ @date
85
+ end
86
86
 
87
- end
87
+ end
88
88
 
89
89
  end
@@ -15,28 +15,28 @@ module VR
15
15
 
16
16
  class CellRendererCombo < Gtk::CellRendererCombo
17
17
 
18
- attr_accessor :edited_callback, :validate_block
19
- attr_reader :model_col, :column, :model_sym
18
+ attr_accessor :edited_callback, :validate_block
19
+ attr_reader :model_col, :column, :model_sym
20
20
 
21
- def initialize(model_col, column, view, model_sym) # :nodoc:
22
- super()
23
- @model_col = model_col
24
- @column = column
25
- @view = view
26
- @model_sym = model_sym
27
- @view.model.set_sort_func(@model_col) { |m,x,y| x[@model_col].selected <=> y[@model_col].selected }
28
- @validate_block = Proc.new { |text, model_sym, row, view | true }
29
- self.editable = true
30
- self.has_entry = false
31
- @edited_callback = nil
32
- self.signal_connect('edited') do |ren, path, text| # iter for
33
- iter = @view.model.get_iter(path)
34
- if @validate_block.call(text, @model_sym, @view.vr_row(iter), @view)
35
- iter[@model_col].selected = text
36
- @edited_callback.call(@model_sym, @view.vr_row(iter)) if @edited_callback
37
- end
38
- end
39
- end
21
+ def initialize(model_col, column, view, model_sym) # :nodoc:
22
+ super()
23
+ @model_col = model_col
24
+ @column = column
25
+ @view = view
26
+ @model_sym = model_sym
27
+ @view.model.set_sort_func(@model_col) { |m,x,y| x[@model_col].selected <=> y[@model_col].selected }
28
+ @validate_block = Proc.new { |text, model_sym, row, view | true }
29
+ self.editable = true
30
+ self.has_entry = false
31
+ @edited_callback = nil
32
+ self.signal_connect('edited') do |ren, path, text| # iter for
33
+ iter = @view.model.get_iter(path)
34
+ if @validate_block.call(text, @model_sym, @view.vr_row(iter), @view)
35
+ iter[@model_col].selected = text
36
+ @edited_callback.call(@model_sym, @view.vr_row(iter)) if @edited_callback
37
+ end
38
+ end
39
+ end
40
40
 
41
41
  # This sets the renderer's "editable" property to true, and makes it save
42
42
  # the edited value to the model. When a user edits a row in the ListView
@@ -55,11 +55,11 @@ module VR
55
55
  # is_editable = boolean
56
56
  #
57
57
 
58
- def set_model(vr_combo) # :nodoc:
59
- self.model = Gtk::ListStore.new(String)
60
- vr_combo.selections.each { |s| r = self.model.append ; r[0] = s }
61
- self.text_column = 0
62
- end
58
+ def set_model(vr_combo) # :nodoc:
59
+ self.model = Gtk::ListStore.new(String)
60
+ vr_combo.selections.each { |s| r = self.model.append ; r[0] = s }
61
+ self.text_column = 0
62
+ end
63
63
 
64
64
  end
65
65
 
@@ -13,33 +13,33 @@ module VR
13
13
 
14
14
  class CellRendererDate < Gtk::CellRendererText
15
15
 
16
- attr_accessor :date_format, :edited_callback, :model_col, :column, :model_sym
16
+ attr_accessor :date_format, :edited_callback, :model_col, :column, :model_sym
17
17
 
18
- def initialize(model_col, column, view, model_sym) # :nodoc:
19
- super()
20
- @model_col = model_col
21
- @column = column
22
- @view = view
23
- @model_sym = model_sym
24
- @view.model.set_sort_func(@model_col) { |m,x,y| x[@model_col] <=> y[@model_col] }
25
- @date_format = "%m-%d-%Y"
26
- @validate_block = Proc.new { |text, model_sym, row, view|
27
- begin
28
- Date.strptime(text, @date_format)
29
- true
30
- rescue
31
- alert("Unrecognized date format: " + text)
32
- false
33
- end }
34
- @edited_block = nil
18
+ def initialize(model_col, column, view, model_sym) # :nodoc:
19
+ super()
20
+ @model_col = model_col
21
+ @column = column
22
+ @view = view
23
+ @model_sym = model_sym
24
+ @view.model.set_sort_func(@model_col) { |m,x,y| x[@model_col] <=> y[@model_col] }
25
+ @date_format = "%m-%d-%Y"
26
+ @validate_block = Proc.new { |text, model_sym, row, view|
27
+ begin
28
+ Date.strptime(text, @date_format)
29
+ true
30
+ rescue
31
+ alert("Unrecognized date format: " + text)
32
+ false
33
+ end }
34
+ @edited_block = nil
35
35
  self.signal_connect('edited') do |ren, path, text|
36
- next unless iter = @view.model.get_iter(path)
37
- if @validate_block.call(text, @model_sym, @view.vr_row(iter), @view)
38
- iter[@model_col] = DateTime.strptime(text, @date_format)
39
- @edited_callback.call(@model_sym, @view.vr_row(iter)) if @edited_callback
40
- end
36
+ next unless iter = @view.model.get_iter(path)
37
+ if @validate_block.call(text, @model_sym, @view.vr_row(iter), @view)
38
+ iter[@model_col] = DateTime.strptime(text, @date_format)
39
+ @edited_callback.call(@model_sym, @view.vr_row(iter)) if @edited_callback
40
+ end
41
41
  end
42
- end
43
- end
42
+ end
43
+ end
44
44
 
45
45
  end
@@ -13,45 +13,45 @@ module VR
13
13
 
14
14
  class CellRendererObject < Gtk::CellRendererText
15
15
 
16
- attr_accessor :model_col, :column, :edited_callback, :visual_attributes_method, :model_sym
16
+ attr_accessor :model_col, :column, :edited_callback, :visual_attributes_method, :model_sym
17
17
 
18
- def initialize(model_col, column, view, model_sym) # :nodoc:
19
- super()
20
- @model_col = model_col
21
- @model_sym = model_sym
22
- @view = view
23
- @column = column
24
- @edit = true
25
- @edited_callback = nil
26
- @visual_attributes_method = "visual_attributes"
27
- @view.model.set_sort_func(@model_col) { |m,x,y| x[@model_col] <=> y[@model_col] }
28
- @show_block = Proc.new { |obj| obj.show_glade() if obj.respond_to? "show_glade" }
29
- @view.signal_connect("row_activated") do | view, path, col |
30
- next if !@edit or !col.eql? @column
31
- iter = @view.model.get_iter(path)
32
- obj = iter[@model_col]
33
- @show_block.call(obj)
34
- block = @edited_callback ? @edited_callback.call(@model_sym, @view.vr_row(iter)) : true
35
- @view.signal_emit_stop("row_activated") if block
36
- end
37
- end
18
+ def initialize(model_col, column, view, model_sym) # :nodoc:
19
+ super()
20
+ @model_col = model_col
21
+ @model_sym = model_sym
22
+ @view = view
23
+ @column = column
24
+ @edit = true
25
+ @edited_callback = nil
26
+ @visual_attributes_method = "visual_attributes"
27
+ @view.model.set_sort_func(@model_col) { |m,x,y| x[@model_col] <=> y[@model_col] }
28
+ @show_block = Proc.new { |obj| obj.show_glade() if obj.respond_to? "show_glade" }
29
+ @view.signal_connect("row_activated") do | view, path, col |
30
+ next if !@edit or !col.eql? @column
31
+ iter = @view.model.get_iter(path)
32
+ obj = iter[@model_col]
33
+ @show_block.call(obj)
34
+ block = @edited_callback ? @edited_callback.call(@model_sym, @view.vr_row(iter)) : true
35
+ @view.signal_emit_stop("row_activated") if block
36
+ end
37
+ end
38
38
 
39
- alias :set_editable :editable=
40
- def editable=(e)
41
- @edit = e
42
- end
43
-
44
- def render_object(iter)
45
- obj = iter[@view.id(@model_col)]
46
- self.text = obj.respond_to?(:to_s) ? obj.to_s : "Define to_s!"
47
- if obj.respond_to? @visual_attributes_method
48
- return unless attrib = obj.send(@visual_attributes_method)
49
- attrib.each_pair do | key, val |
50
- self.send( key.to_s + "=", val)
51
- end
52
- end
53
- end
39
+ alias :set_editable :editable=
40
+ def editable=(e)
41
+ @edit = e
42
+ end
43
+
44
+ def render_object(iter)
45
+ obj = iter[@view.id(@model_col)]
46
+ self.text = obj.respond_to?(:to_s) ? obj.to_s : "Define to_s!"
47
+ if obj.respond_to? @visual_attributes_method
48
+ return unless attrib = obj.send(@visual_attributes_method)
49
+ attrib.each_pair do | key, val |
50
+ self.send( key.to_s + "=", val)
51
+ end
52
+ end
53
+ end
54
54
 
55
- end
55
+ end
56
56
 
57
57
  end