libui_paradise 0.3.9 → 0.4.13

Sign up to get free protection for your applications and to get access to all the features.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +176 -155
  3. data/bin/libui_message +1 -1
  4. data/doc/README.gen +175 -85
  5. data/doc/todo/todo.md +9 -5
  6. data/lib/libui_paradise/autoinclude.rb +2 -1
  7. data/lib/libui_paradise/base/base.rb +17 -67
  8. data/lib/libui_paradise/base_module/base_module.rb +1514 -0
  9. data/lib/libui_paradise/colours/colours.rb +4 -4
  10. data/lib/libui_paradise/domain_specific_language/README.md +6 -0
  11. data/lib/libui_paradise/examples/complex/002_tabs_example.rb +1 -2
  12. data/lib/libui_paradise/examples/complex/003_open_file_button_example.rb +1 -1
  13. data/lib/libui_paradise/examples/complex/006_coloured_boxes_example.rb +2 -2
  14. data/lib/libui_paradise/examples/complex/007_slider_example.rb +10 -4
  15. data/lib/libui_paradise/examples/complex/008_radio_button_example.rb +2 -2
  16. data/lib/libui_paradise/examples/complex/009_separator_example.rb +2 -2
  17. data/lib/libui_paradise/examples/complex/010_table_example.rb +5 -9
  18. data/lib/libui_paradise/examples/complex/011_two_buttons_showing_how_to_enable_and_disable_them.rb +2 -1
  19. data/lib/libui_paradise/examples/complex/012_password_entry_example.rb +1 -1
  20. data/lib/libui_paradise/examples/complex/013_form_example.rb +1 -1
  21. data/lib/libui_paradise/examples/complex/014_text_example.rb +1 -1
  22. data/lib/libui_paradise/examples/complex/015_text_view_example.rb +4 -4
  23. data/lib/libui_paradise/examples/complex/016_grid_example.rb +20 -11
  24. data/lib/libui_paradise/examples/complex/017_unicode_text_example.rb +2 -2
  25. data/lib/libui_paradise/examples/complex/018_spinbutton_example.rb +1 -1
  26. data/lib/libui_paradise/examples/complex/019_combo_box_example.rb +1 -1
  27. data/lib/libui_paradise/examples/complex/020_checkbox_example.rb +5 -5
  28. data/lib/libui_paradise/examples/complex/021_font_example.rb +4 -3
  29. data/lib/libui_paradise/examples/complex/022_simple_notepad_example.rb +3 -3
  30. data/lib/libui_paradise/examples/complex/023_msg_box_error.rb +5 -5
  31. data/lib/libui_paradise/examples/complex/024_parse_config_file_example.rb +2 -2
  32. data/lib/libui_paradise/examples/complex/025_colour_button.rb +1 -1
  33. data/lib/libui_paradise/examples/complex/026_basic_table_image.rb +5 -8
  34. data/lib/libui_paradise/examples/complex/027_basic_button_example.rb +3 -3
  35. data/lib/libui_paradise/examples/complex/028_try_for_automatic_button_press_event_after_a_delay.rb +4 -5
  36. data/lib/libui_paradise/examples/complex/029_progressbar_example.rb +4 -5
  37. data/lib/libui_paradise/examples/complex/030_entry_responds_to_comment_as_synonymous_to_the_enter_key_pressed_example.rb +5 -6
  38. data/lib/libui_paradise/examples/complex/031_notification_functionality_example.rb +3 -2
  39. data/lib/libui_paradise/examples/complex/032_simple_window_example.rb +2 -1
  40. data/lib/libui_paradise/examples/complex/033_daemonize_and_exit_after_delay_example.rb +3 -2
  41. data/lib/libui_paradise/examples/complex/034_bold_text_example.rb +115 -0
  42. data/lib/libui_paradise/examples/complex/035_parse_into_table_example.rb +109 -0
  43. data/lib/libui_paradise/examples/simple/001_open_file_example.rb +1 -1
  44. data/lib/libui_paradise/examples/simple/002_histogram_example.rb +6 -6
  45. data/lib/libui_paradise/examples/simple/003_fancy_text_example.rb +63 -35
  46. data/lib/libui_paradise/examples/simple/005_text_drawing_example.rb +3 -3
  47. data/lib/libui_paradise/examples/simple/007_control_gallery.rb +2 -1
  48. data/lib/libui_paradise/examples/simple/009_spectrum.rb +7 -1
  49. data/lib/libui_paradise/examples/simple/012_table_example.rb +5 -5
  50. data/lib/libui_paradise/examples/simple/013_scrolling_pane_example.rb +28 -0
  51. data/lib/libui_paradise/examples/simple/014_simple_entry_example.rb +30 -0
  52. data/lib/libui_paradise/examples/simple/015_slider_example.rb +32 -0
  53. data/lib/libui_paradise/fiddle/fiddle.rb +771 -636
  54. data/lib/libui_paradise/libui_classes/button.rb +31 -0
  55. data/lib/libui_paradise/libui_classes/entry.rb +35 -0
  56. data/lib/libui_paradise/libui_classes/grid.rb +14 -26
  57. data/lib/libui_paradise/libui_classes/hbox.rb +39 -0
  58. data/lib/libui_paradise/libui_classes/libui_classes.rb +9 -1630
  59. data/lib/libui_paradise/libui_classes/msg_box.rb +121 -0
  60. data/lib/libui_paradise/libui_classes/msg_box_error.rb +41 -0
  61. data/lib/libui_paradise/libui_classes/slider.rb +28 -0
  62. data/lib/libui_paradise/libui_classes/spinbox.rb +48 -0
  63. data/lib/libui_paradise/libui_classes/vbox.rb +38 -0
  64. data/lib/libui_paradise/project/project.rb +2 -1
  65. data/lib/libui_paradise/prototype/prototype.rb +8 -8
  66. data/lib/libui_paradise/requires/require_the_libui_classes.rb +2 -2
  67. data/lib/libui_paradise/requires/require_the_libui_paradise_project.rb +4 -2
  68. data/lib/libui_paradise/toplevel_methods/add_to_the_registered_widgets.rb +70 -0
  69. data/lib/libui_paradise/toplevel_methods/hash_fiddle_pointer_widgets.rb +37 -0
  70. data/lib/libui_paradise/{extensions → toplevel_methods}/toplevel_counters.rb +26 -1
  71. data/lib/libui_paradise/toplevel_methods/toplevel_methods.rb +792 -0
  72. data/lib/libui_paradise/version/version.rb +2 -2
  73. data/test/testing_generic_window.rb +2 -0
  74. metadata +22 -8
  75. data/doc/SNIPPETS.md +0 -65
  76. data/lib/libui_paradise/extensions/extensions.rb +0 -979
  77. data/lib/libui_paradise/libui_classes/box.rb +0 -157
@@ -1,157 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- # require 'libui_paradise/libui_classes/box.rb'
6
- # =========================================================================== #
7
- module LibuiParadise
8
-
9
- module Extensions # === LibuiParadise::Extensions
10
-
11
- # ========================================================================= #
12
- # === LibuiParadise::Extensions.vbox (vbox tag)
13
- #
14
- # This method will create a vertical box.
15
- # ========================================================================= #
16
- def self.vbox(*optional_widgets)
17
- _ = ::LibUI.new_vertical_box
18
- add_to_the_registered_widgets(_, __method__)
19
- if optional_widgets and !optional_widgets.empty?
20
- optional_widgets.flatten.each {|this_widget| _ << this_widget }
21
- end
22
- return _
23
- end; self.instance_eval { alias ui_vbox vbox } # === ui_vbox
24
-
25
- # ========================================================================= #
26
- # === ui_padded_vbox
27
- #
28
- # This method will call .is_padded on the vbox after it has been
29
- # initialized.
30
- # ========================================================================= #
31
- def ui_padded_vbox(*optional_widgets)
32
- _ = ui_vbox(optional_widgets)
33
- _.is_padded
34
- return _
35
- end; alias padded_vbox ui_padded_vbox # === padded_vbox
36
-
37
- # ========================================================================= #
38
- # === LibuiParadise::Extensions.hbox (hbox tag)
39
- #
40
- # This method will create a horizontal box.
41
- # ========================================================================= #
42
- def self.hbox(*optional_widgets)
43
- _ = ::LibUI.new_horizontal_box
44
- add_to_the_registered_widgets(_, __method__)
45
- if optional_widgets and !optional_widgets.flatten.empty?
46
- optional_widgets.flatten.each {|this_widget|
47
- _.add(this_widget)
48
- }
49
- end
50
- return _
51
- end; self.instance_eval { alias ui_hbox hbox } # === ui_hbox
52
- self.instance_eval { alias create_hbox hbox } # === create_hbox
53
-
54
- # ========================================================================= #
55
- # === ui_hbox (hbox tag)
56
- # ========================================================================= #
57
- def hbox(*optional_widgets)
58
- ::LibuiParadise::Extensions.hbox(optional_widgets)
59
- end; alias ui_hbox hbox # === ui_hbox
60
- alias create_hbox hbox # === create_hbox
61
- alias libui_hbox hbox # === libui_hbox
62
-
63
- # ========================================================================= #
64
- # === ui_padded_hbox
65
- #
66
- # If you want to add optional widgets then simply pass them as argument
67
- # to this method.
68
- # ========================================================================= #
69
- def ui_padded_hbox(*optional_widgets)
70
- _ = ui_hbox(optional_widgets)
71
- _.is_padded
72
- return _
73
- end; alias padded_hbox ui_padded_hbox # === padded_hbox
74
- alias libui_padded_hbox ui_padded_hbox # === libui_padded_hbox
75
-
76
- # ========================================================================= #
77
- # === two_elements_hbox
78
- #
79
- # This method will return a horizontal box (hbox) that is accepting
80
- # two arguments (two widgets) that will be embedded onto that hbox.
81
- # Then the result is returned.
82
- # ========================================================================= #
83
- def two_elements_hbox(
84
- widget1,
85
- widget2,
86
- options = {
87
- layout_to_use: :maximal # This is the default.
88
- }
89
- )
90
- _ = ui_padded_hbox
91
- # ======================================================================= #
92
- # === Handle :layout_to_use
93
- #
94
- # This is mostly done to distinguish between maximal() and minimal()
95
- # for widgets.
96
- # ======================================================================= #
97
- if options.is_a?(Hash) and options.has_key?(:layout_to_use)
98
- case options[:layout_to_use]
99
- # ===================================================================== #
100
- # === :maximal
101
- # ===================================================================== #
102
- when :maximal
103
- _.maximal(widget1)
104
- _.maximal(widget2)
105
- # ===================================================================== #
106
- # === :minimal
107
- # ===================================================================== #
108
- when :minimal
109
- _.minimal(widget1)
110
- _.minimal(widget2)
111
- end
112
- else
113
- _.minimal(widget1)
114
- _.minimal(widget2)
115
- end
116
- return _
117
- end
118
-
119
- # ========================================================================= #
120
- # === vbox
121
- # ========================================================================= #
122
- def vbox(*optional_widgets)
123
- ::LibuiParadise::Extensions.vbox(optional_widgets)
124
- end; alias ui_vbox vbox # === ui_vbox
125
- alias gtk_box vbox # === gtk_box
126
- alias create_vbox vbox # === create_vbox
127
-
128
- end
129
-
130
- # ========================================================================= #
131
- # === LibuiParadise.hbox
132
- #
133
- # This toplevel-method can be used to instantiate a new hbox.
134
- # ========================================================================= #
135
- def self.hbox(*optional_widgets)
136
- ::LibuiParadise::Extensions.hbox(optional_widgets)
137
- end; self.instance_eval { alias ui_hbox hbox } # === LibuiParadise.ui_hbox
138
- self.instance_eval { alias create_hbox hbox } # === LibuiParadise.create_hbox
139
-
140
- # =========================================================================== #
141
- # === LibuiParadise.padded_vbox
142
- # =========================================================================== #
143
- def self.padded_vbox
144
- _ = ::LibuiParadise::Extensions.vbox
145
- _.is_padded
146
- return _
147
- end
148
-
149
-
150
- # =========================================================================== #
151
- # === LibuiParadise.vbox
152
- # =========================================================================== #
153
- def self.vbox
154
- ::LibuiParadise::Extensions.vbox
155
- end
156
-
157
- end