freightrain 0.8.2 → 0.8.3

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -8,7 +8,7 @@ require 'rake/testtask'
8
8
 
9
9
  spec = Gem::Specification.new do |s|
10
10
  s.name = 'freightrain'
11
- s.version = '0.8.2'
11
+ s.version = '0.8.3'
12
12
  s.add_dependency('require_all', '>= 1.1.0')
13
13
  s.has_rdoc = false
14
14
  s.homepage = "http://github.com/bolthar/freightrain"
@@ -1,3 +1,4 @@
1
+ require 'rexml/document'
1
2
 
2
3
  module Freightrain
3
4
 
@@ -14,7 +15,9 @@ module Freightrain
14
15
  end
15
16
 
16
17
  def create_objects_from_file(file_name)
17
- @builder.add_from_file(get_glade_file(file_name))
18
+ file = get_glade_file(file_name)
19
+ corrected_xml = replace_faulty_gtkboxes(File.read(file))
20
+ @builder.add_from_string(corrected_xml)
18
21
  objects = @builder.objects
19
22
  if objects.first.respond_to? :toplevel
20
23
  @control = objects.first.toplevel
@@ -51,6 +54,19 @@ module Freightrain
51
54
  results = Dir.glob(search_path)
52
55
  return results.first
53
56
  end
57
+
58
+ def replace_faulty_gtkboxes(xml)
59
+ document = REXML::Document.new(xml)
60
+ document.elements.each("//object[@class='GtkBox']") do |box|
61
+ substitute_class = nil
62
+ box.elements.each("property[@name='orientation']") do |orientation|
63
+ substitute_class = orientation == "vertical" ? "GtkVBox" : "GtkHBox"
64
+ end
65
+ p "here3"
66
+ box.attributes["class"] = substitute_class
67
+ end
68
+ return document.to_s
69
+ end
54
70
 
55
71
  def control
56
72
  return @control
@@ -9,6 +9,10 @@ module Gtk
9
9
  file.close
10
10
  self.pixbuf = Gdk::Pixbuf.new(File.join(Dir.tmpdir,"tempimg#{self.object_id.to_s}"))
11
11
  end
12
+
13
+ def image_file=(file_name)
14
+ self.image=(File.open(file_name).read)
15
+ end
12
16
 
13
17
  end
14
- end
18
+ end
@@ -14,6 +14,7 @@ module Freightrain
14
14
  end
15
15
 
16
16
  def resolve(class_name)
17
+ raise "Could not instance class #{class_name}" unless @classes.has_key?(class_name)
17
18
  return @cache[class_name] || @classes[class_name].new
18
19
  end
19
20
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: freightrain
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.2
4
+ version: 0.8.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-03-18 00:00:00.000000000 Z
12
+ date: 2012-04-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: require_all
16
- requirement: &11079940 !ruby/object:Gem::Requirement
16
+ requirement: &13172380 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,7 +21,7 @@ dependencies:
21
21
  version: 1.1.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *11079940
24
+ version_requirements: *13172380
25
25
  description: ruby desktop development made easy
26
26
  email: andrea@andreadallera.com
27
27
  executables:
@@ -32,78 +32,78 @@ files:
32
32
  - README.rdoc
33
33
  - Rakefile
34
34
  - bin/ftrain
35
- - lib/freightrain-dev/auto_stubber.rb
36
- - lib/freightrain/services/freight_service.rb
37
- - lib/freightrain/services/service_host.rb
38
- - lib/freightrain/signals/signal_host.rb
35
+ - lib/freightrain/viewmodels/freight_view_model.rb
36
+ - lib/freightrain/viewmodels/dialog_extension.rb
37
+ - lib/freightrain/auto_requirer.rb
38
+ - lib/freightrain/string_patch.rb
39
+ - lib/freightrain/bootstrapper.rb
39
40
  - lib/freightrain/signals/freight_signal.rb
40
- - lib/freightrain/regions/freight_region.rb
41
- - lib/freightrain/regions/region_host.rb
41
+ - lib/freightrain/signals/signal_host.rb
42
+ - lib/freightrain/views/freight_view.rb
43
+ - lib/freightrain/views/code_interface_builder.rb
44
+ - lib/freightrain/views/interface_builder.rb
45
+ - lib/freightrain/views/callback_wrapper.rb
46
+ - lib/freightrain/services/service_host.rb
47
+ - lib/freightrain/services/freight_service.rb
42
48
  - lib/freightrain/ioc/container.rb
43
49
  - lib/freightrain/ioc/registry.rb
44
50
  - lib/freightrain/ioc/container_hookable.rb
45
- - lib/freightrain/string_patch.rb
51
+ - lib/freightrain/elements/freight_element_view_model.rb
46
52
  - lib/freightrain/elements/layout_widget.rb
47
53
  - lib/freightrain/elements/freight_element_view.rb
48
- - lib/freightrain/elements/freight_element_view_model.rb
49
- - lib/freightrain/bootstrapper.rb
50
- - lib/freightrain/auto_requirer.rb
51
- - lib/freightrain/views/interface_builder.rb
52
- - lib/freightrain/views/freight_view.rb
53
- - lib/freightrain/views/code_interface_builder.rb
54
- - lib/freightrain/views/callback_wrapper.rb
55
- - lib/freightrain/viewmodels/freight_view_model.rb
56
- - lib/freightrain/viewmodels/dialog_extension.rb
57
- - lib/freightrain/freight_color.rb
54
+ - lib/freightrain/regions/freight_region.rb
55
+ - lib/freightrain/regions/region_host.rb
58
56
  - lib/freightrain/binding/freight_binding.rb
59
- - lib/freightrain/binding/binding_base.rb
57
+ - lib/freightrain/binding/binding_host.rb
60
58
  - lib/freightrain/binding/binding_loader.rb
61
- - lib/freightrain/binding/converters/float_converter.rb
62
- - lib/freightrain/binding/converters/boolean_converter.rb
59
+ - lib/freightrain/binding/binding_base.rb
63
60
  - lib/freightrain/binding/converters/converter_factory.rb
61
+ - lib/freightrain/binding/converters/boolean_converter.rb
62
+ - lib/freightrain/binding/converters/float_converter.rb
64
63
  - lib/freightrain/binding/converters/integer_converter.rb
65
64
  - lib/freightrain/binding/converters/default_converter.rb
66
- - lib/freightrain/binding/binding_host.rb
67
- - lib/freightrain.rb
68
- - lib/scaffolding/scaffolding.rb
69
- - lib/scaffolding/commands/triad.rb
70
- - lib/scaffolding/commands/app.rb
71
- - lib/scaffolding/templates/view_bnd.ftt
72
- - lib/scaffolding/templates/view_toplevel.ftt
73
- - lib/scaffolding/templates/view_model.ftt
74
- - lib/scaffolding/templates/viewmodel_toplevel.ftt
75
- - lib/scaffolding/templates/view_control_glade.ftt
76
- - lib/scaffolding/templates/view.ftt
77
- - lib/scaffolding/templates/view_toplevel_glade.ftt
78
- - lib/scaffolding/templates/application.ftt
79
- - lib/scaffolding/generator.rb
80
- - lib/extensions/qt/widgets/qt_base.rb
65
+ - lib/freightrain/freight_color.rb
66
+ - lib/extensions/qt/qt_bootstrapper.rb
67
+ - lib/extensions/qt/interface_builder.rb
81
68
  - lib/extensions/qt/widgets/qt_line_edit.rb
69
+ - lib/extensions/qt/widgets/qt_layout.rb
70
+ - lib/extensions/qt/widgets/qt_abstract_button.rb
71
+ - lib/extensions/qt/widgets/qt_base.rb
82
72
  - lib/extensions/qt/widgets/qt_label.rb
83
73
  - lib/extensions/qt/widgets/qt_calendar_widget.rb
84
- - lib/extensions/qt/widgets/qt_abstract_button.rb
85
- - lib/extensions/qt/widgets/qt_layout.rb
86
- - lib/extensions/qt/interface_builder.rb
87
74
  - lib/extensions/qt/dialog_helper.rb
88
- - lib/extensions/qt/qt_bootstrapper.rb
89
- - lib/extensions/gtk/widgets/gtk_widget.rb
75
+ - lib/extensions/wx/interface_builder.rb
76
+ - lib/extensions/wx/wx_bootstrapper.rb
77
+ - lib/extensions/wx/widgets/wx_panel.rb
78
+ - lib/extensions/wx/widgets/wx_object.rb
79
+ - lib/extensions/wx/dialog_helper.rb
80
+ - lib/extensions/gtk/interface_builder.rb
81
+ - lib/extensions/gtk/widgets/gtk_combo_box.rb
90
82
  - lib/extensions/gtk/widgets/gtk_image.rb
91
- - lib/extensions/gtk/widgets/gtk_treeview.rb
92
- - lib/extensions/gtk/widgets/gtk_calendar.rb
83
+ - lib/extensions/gtk/widgets/gtk_widget.rb
93
84
  - lib/extensions/gtk/widgets/gtk_toggle_button.rb
94
- - lib/extensions/gtk/widgets/gtk_toggle_tool_button.rb
85
+ - lib/extensions/gtk/widgets/gtk_calendar.rb
95
86
  - lib/extensions/gtk/widgets/gtk_layout.rb
87
+ - lib/extensions/gtk/widgets/gtk_treeview.rb
88
+ - lib/extensions/gtk/widgets/gtk_toggle_tool_button.rb
96
89
  - lib/extensions/gtk/widgets/gtk_statusicon.rb
97
- - lib/extensions/gtk/widgets/gtk_combo_box.rb
98
90
  - lib/extensions/gtk/widgets/gtk_treeviewcolumn.rb
99
- - lib/extensions/gtk/interface_builder.rb
100
91
  - lib/extensions/gtk/gtk_bootstrapper.rb
101
92
  - lib/extensions/gtk/dialog_helper.rb
102
- - lib/extensions/wx/wx_bootstrapper.rb
103
- - lib/extensions/wx/widgets/wx_panel.rb
104
- - lib/extensions/wx/widgets/wx_object.rb
105
- - lib/extensions/wx/interface_builder.rb
106
- - lib/extensions/wx/dialog_helper.rb
93
+ - lib/freightrain-dev/auto_stubber.rb
94
+ - lib/freightrain.rb
95
+ - lib/scaffolding/generator.rb
96
+ - lib/scaffolding/commands/app.rb
97
+ - lib/scaffolding/commands/triad.rb
98
+ - lib/scaffolding/scaffolding.rb
99
+ - lib/scaffolding/templates/view_toplevel_glade.ftt
100
+ - lib/scaffolding/templates/view.ftt
101
+ - lib/scaffolding/templates/view_toplevel.ftt
102
+ - lib/scaffolding/templates/viewmodel_toplevel.ftt
103
+ - lib/scaffolding/templates/application.ftt
104
+ - lib/scaffolding/templates/view_control_glade.ftt
105
+ - lib/scaffolding/templates/view_bnd.ftt
106
+ - lib/scaffolding/templates/view_model.ftt
107
107
  homepage: http://github.com/bolthar/freightrain
108
108
  licenses: []
109
109
  post_install_message:
@@ -124,7 +124,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
124
124
  version: '0'
125
125
  requirements: []
126
126
  rubyforge_project:
127
- rubygems_version: 1.8.10
127
+ rubygems_version: 1.8.17
128
128
  signing_key:
129
129
  specification_version: 3
130
130
  summary: ruby desktop development made easy