newt 0.9.7 → 1.0.0.pre1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. checksums.yaml +5 -5
  2. data/README.rdoc +24 -0
  3. data/examples/test-e.rb +108 -0
  4. data/examples/test-j.rb +50 -60
  5. data/examples/test_method/Button.rb +21 -0
  6. data/examples/test_method/Checkbox.rb +27 -0
  7. data/examples/test_method/CheckboxTree.rb +27 -0
  8. data/examples/test_method/CheckboxTreeMulti.rb +25 -0
  9. data/examples/test_method/CompactButton.rb +21 -0
  10. data/examples/test_method/Entry.rb +62 -0
  11. data/examples/test_method/Form.rb +23 -0
  12. data/examples/test_method/Form_ExitStruct.rb +35 -0
  13. data/examples/test_method/HelpCallback.rb +48 -0
  14. data/examples/test_method/Label.rb +26 -0
  15. data/examples/test_method/Listbox.rb +32 -0
  16. data/examples/test_method/Newt_FLAG_SCROLL.rb +3 -4
  17. data/examples/test_method/Newt_cursor.rb +30 -0
  18. data/examples/test_method/RadioButton.rb +23 -0
  19. data/examples/test_method/ReflowText.rb +8 -10
  20. data/examples/test_method/Scale.rb +27 -0
  21. data/examples/test_method/Screen_bell.rb +1 -1
  22. data/examples/test_method/Screen_cls.rb +1 -2
  23. data/examples/test_method/Screen_draw_roottext.rb +2 -3
  24. data/examples/test_method/Screen_init.rb +1 -2
  25. data/examples/test_method/Screen_pop_helpline.rb +2 -5
  26. data/examples/test_method/Screen_push_helpline.rb +2 -5
  27. data/examples/test_method/Screen_redraw_helpline.rb +2 -5
  28. data/examples/test_method/Screen_set_colors.rb +11 -13
  29. data/examples/test_method/Screen_size.rb +1 -1
  30. data/examples/test_method/Screen_win_menu.rb +3 -7
  31. data/examples/test_method/SuspendCallback.rb +33 -0
  32. data/examples/test_method/{Textbox_set_colors.rb → Textbox.rb} +8 -8
  33. data/examples/test_method/{TextboxReflowed_new.rb → TextboxReflowed.rb} +5 -8
  34. data/examples/test_method/Widget_callback.rb +76 -0
  35. data/examples/{memory.rb → test_method/memory.rb} +5 -5
  36. data/examples/testgrid-e.rb +80 -0
  37. data/examples/testgrid-j.rb +57 -62
  38. data/examples/testtree-e.rb +53 -0
  39. data/examples/testtree-j.rb +37 -39
  40. data/ext/ruby_newt/extconf.rb +3 -4
  41. data/ext/ruby_newt/ruby_newt.c +1001 -539
  42. data/lib/version.rb +1 -1
  43. metadata +31 -51
  44. data/examples/test.rb +0 -95
  45. data/examples/test_method/Button_new.rb +0 -22
  46. data/examples/test_method/Checkbox_get.rb +0 -25
  47. data/examples/test_method/Checkbox_new.rb +0 -22
  48. data/examples/test_method/Checkbox_set.rb +0 -28
  49. data/examples/test_method/Checkbox_set_flags.rb +0 -28
  50. data/examples/test_method/CompactButton_new.rb +0 -22
  51. data/examples/test_method/Entry_get.rb +0 -26
  52. data/examples/test_method/Entry_new.rb +0 -23
  53. data/examples/test_method/Entry_set.rb +0 -26
  54. data/examples/test_method/Entry_set_flags.rb +0 -31
  55. data/examples/test_method/Form_destroy.rb +0 -33
  56. data/examples/test_method/Form_set_background.rb +0 -23
  57. data/examples/test_method/Form_set_height.rb +0 -26
  58. data/examples/test_method/Form_set_width.rb +0 -26
  59. data/examples/test_method/Grid_new.rb +0 -26
  60. data/examples/test_method/Label_new.rb +0 -22
  61. data/examples/test_method/Label_setText.rb +0 -25
  62. data/examples/test_method/Label_set_colors.rb +0 -28
  63. data/examples/test_method/Listbox_clear.rb +0 -25
  64. data/examples/test_method/Listbox_current_bykey.rb +0 -29
  65. data/examples/test_method/Listbox_delete.rb +0 -27
  66. data/examples/test_method/Listbox_get_current.rb +0 -28
  67. data/examples/test_method/Listbox_get_current_string.rb +0 -28
  68. data/examples/test_method/Listbox_insert.rb +0 -24
  69. data/examples/test_method/Listbox_new.rb +0 -24
  70. data/examples/test_method/Listbox_select.rb +0 -27
  71. data/examples/test_method/Listbox_set.rb +0 -27
  72. data/examples/test_method/Listbox_set_current.rb +0 -26
  73. data/examples/test_method/Listbox_set_width.rb +0 -25
  74. data/examples/test_method/RadioButton_new.rb +0 -22
  75. data/examples/test_method/Scale_new.rb +0 -22
  76. data/examples/test_method/Scale_set.rb +0 -22
  77. data/examples/test_method/Textbox_get_num_lines.rb +0 -27
  78. data/examples/test_method/Textbox_new.rb +0 -22
  79. data/examples/test_method/Textbox_set_height.rb +0 -25
  80. data/examples/testgrid.rb +0 -84
  81. data/examples/testtree.rb +0 -54
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: f050206d379e33d34c2f61575c5ba91b19555979
4
- data.tar.gz: 6effdac5ee31f2bada361bba6a52de620e075828
2
+ SHA256:
3
+ metadata.gz: 3836472466affef8783a15165b2e1281b65c29d15d621638ba8e06f816ffb364
4
+ data.tar.gz: 639199de30d0e7e88f6a05d7e2d957af06235b4b08f1cc3b86b7f81ab2896ef2
5
5
  SHA512:
6
- metadata.gz: e28ed64532834ab5fabdae62e1fc3caf5507da2631bc172e53a77315166ba7910da2578df286007fd02e9b9113f883bcc274ce8864694732393b4857e592d8c1
7
- data.tar.gz: 5edb479e5521f3e4953cc3bbd53d2aa8c38d8ee57035ca863d7e4227da66137672124e90aea01333bd27362e9b51a3c473f6d26b9ff800be26a59a21fac618dc
6
+ metadata.gz: 4d843ba26cb1bfd186bed6a06474ee928568adac9b207418c29ef7e3f760cfb313e5e01934901106bf4d7f69ea031e31763e536e6b80f1b14ea0075e08391a27
7
+ data.tar.gz: a668be2a8be9faeef2b3aa7219140abbf32247b1e4e01e180ee9720bb3f855ecff1c0637e0d064ef92d78cad3e262f86b56317ccc465eb15e89a1505ddf1e0d9
data/README.rdoc CHANGED
@@ -55,12 +55,36 @@ For some reason, it does not always find the header so symlink it:
55
55
 
56
56
  $ sudo ln -s /opt/local/include/newt.h /usr/include/
57
57
 
58
+ == Migrating from 0.9 to 1.0
59
+
60
+ The following changes break compatibility with version 0.9 and existing
61
+ programs using the ruby-newt library may need to be changed.
62
+
63
+ * The following method names have been renamed to create a more consistent
64
+ interface.
65
+ * +takesFocus+ has been renamed to +takes_focus+
66
+ * +setCurrentByKey+ has been renamed to +set_current_by_key+
67
+ * +setData+ has been renamed to +set_data+
68
+ * +clearSelection+ has been renamed to +clear_selection+
69
+ * The +get+/+set+ methods have been removed from the +Radiobutton+
70
+ component.
71
+ * The +get_current+ method for +Listbox+ has been generalized and the
72
+ +get_current_as_number+ and +get_current_as_string+ methods have been
73
+ removed.
74
+ * Garbage collection of components and forms has been implemented. This will
75
+ break applications that reuse components on multiple forms.
76
+ * The publicly global +CALLBACK_HASH+ has been removed. Applications that
77
+ modify this hash directly will break.
78
+ * The various _add_callback_ methods no longer return the previously set
79
+ callback when called with no parameters.
80
+
58
81
  == AUTHORS
59
82
 
60
83
  * Noritsugu Nakamura
61
84
  * Eric Sperano
62
85
  * Kosuke Asami
63
86
  * Lukas Zapletal
87
+ * Robert Gill
64
88
 
65
89
  == LICENSE
66
90
 
@@ -0,0 +1,108 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'newt'
5
+
6
+ def disable_callback(cs, en)
7
+ if cs.get == ' '
8
+ en.set_flags(Newt::FLAG_DISABLED, Newt::FLAGS_RESET)
9
+ else
10
+ en.set_flags(Newt::FLAG_DISABLED, Newt::FLAGS_SET)
11
+ end
12
+ Newt::Screen.refresh
13
+ end
14
+
15
+ Newt::Screen.new
16
+
17
+ Newt::Screen.draw_roottext(0, 0, 'Newt test program')
18
+ Newt::Screen.push_helpline('')
19
+ Newt::Screen.draw_roottext(-50, 0, 'More root text')
20
+
21
+ Newt::Screen.open_window(2, 2, 30, 10, 'first window')
22
+ Newt::Screen.open_window(10, 5, 65, 16, 'window 2')
23
+
24
+ f = Newt::Form.new
25
+ chklist = Newt::Form.new
26
+
27
+ b1 = Newt::Button.new(3, 1, 'Exit')
28
+ b2 = Newt::Button.new(18, 1, 'Update')
29
+ r1 = Newt::RadioButton.new(20, 10, 'Choice 1', 0, nil)
30
+ r2 = Newt::RadioButton.new(20, 11, 'Chc 2', 1, r1)
31
+ r3 = Newt::RadioButton.new(20, 12, 'Choice 3', 0, r2)
32
+ rsf = Newt::Form.new
33
+ rsf.add(r1, r2, r3)
34
+ rsf.set_background(Newt::COLORSET_CHECKBOX)
35
+
36
+ Newt::Screen.refresh
37
+
38
+ cs = []
39
+ (0...10).each do |i|
40
+ buf = format('Check %d', i)
41
+ cs[i] = Newt::Checkbox.new(3, 10 + i, buf)
42
+ chklist.add(cs[i])
43
+ end
44
+
45
+ l1 = Newt::Label.new(3, 6, 'Scale:')
46
+ l2 = Newt::Label.new(3, 7, 'Scrolls:')
47
+ l3 = Newt::Label.new(3, 8, 'Hidden:')
48
+ e1 = Newt::Entry.new(12, 6, '', 20, 0)
49
+ e2 = Newt::Entry.new(12, 7, 'Default', 20, Newt::FLAG_SCROLL)
50
+ e3 = Newt::Entry.new(12, 8, '', 20, Newt::FLAG_HIDDEN)
51
+
52
+ cs[0].callback( proc { disableCallback(cs[0], e1) } )
53
+ scale = Newt::Scale.new(3, 14, 32, 100)
54
+
55
+ chklist.set_height(3)
56
+
57
+ f.add(b1, b2, l1, l2, l3, e1, e2, e3, chklist)
58
+ f.add(rsf, scale)
59
+
60
+ lb = Newt::Listbox.new(45, 1, 6, Newt::FLAG_MULTIPLE | Newt::FLAG_BORDER |
61
+ Newt::FLAG_SCROLL)
62
+ lb.append('First', 1)
63
+ lb.append('Second', 2)
64
+ lb.append('Third', 3)
65
+ lb.append('Fourth', 4)
66
+ lb.append('Sixth', 6)
67
+ lb.append('Seventh', 7)
68
+ lb.append('Eighth', 8)
69
+ lb.append('Ninth', 9)
70
+ lb.append('Tenth', 10)
71
+
72
+ lb.insert('Fifth', 5, 4)
73
+ lb.insert('Eleventh', 11, 10)
74
+ lb.delete(11)
75
+
76
+ t = Newt::Textbox.new(45, 10, 17, 5, Newt::FLAG_WRAP)
77
+ t.set_text("This is some text does it look okay?\nThis should be alone.\nThis shouldn't be printed")
78
+
79
+ f.add(lb, t)
80
+
81
+ Newt::Screen.refresh
82
+
83
+ loop do
84
+ answer = f.run
85
+ if answer == b2
86
+ scale.set(e1.get.to_i)
87
+ Newt::Screen.refresh
88
+ answer = nil
89
+ end
90
+ break unless answer.nil?
91
+ end
92
+
93
+ Newt::Screen.pop_window
94
+ Newt::Screen.pop_window
95
+
96
+ Newt::Screen.finish
97
+
98
+ printf "got string 1: %s\n", e1.get
99
+ printf "got string 2: %s\n", e2.get
100
+ printf "got string 3: %s\n", e3.get
101
+
102
+ selected_list = lb.get_selection
103
+ if selected_list.count > 0
104
+ print "\nSelected listbox items:\n"
105
+ selected_list.each do |item|
106
+ puts item
107
+ end
108
+ end
data/examples/test-j.rb CHANGED
@@ -1,59 +1,55 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  require 'rubygems'
4
- require "newt"
4
+ require 'newt'
5
5
 
6
- def disableCallback(cs, en)
7
- #STDERR.print cs.get, "\n"
6
+ def disable_callback(cs, en)
8
7
  if cs.get == ' '
9
- en.set_flags(Newt::FLAG_DISABLED, Newt::FLAGS_RESET)
8
+ en.set_flags(Newt::FLAG_DISABLED, Newt::FLAGS_RESET)
10
9
  else
11
- en.set_flags(Newt::FLAG_DISABLED, Newt::FLAGS_SET)
10
+ en.set_flags(Newt::FLAG_DISABLED, Newt::FLAGS_SET)
12
11
  end
13
- Newt::Screen.refresh()
12
+ Newt::Screen.refresh
14
13
  end
15
14
 
16
15
  Newt::Screen.new
17
16
 
18
- Newt::Screen.draw_roottext(0, 0, "Newt ¥Æ¥¹¥È¥×¥í¥°¥é¥à")
19
- Newt::Screen.push_helpline("")
20
- Newt::Screen.draw_roottext(-50, 0, "¥ë¡¼¥È¥Æ¥­¥¹¥È")
17
+ Newt::Screen.draw_roottext(0, 0, 'Newt ¥Æ¥¹¥È¥×¥í¥°¥é¥à')
18
+ Newt::Screen.push_helpline('')
19
+ Newt::Screen.draw_roottext(-50, 0, '¥ë¡¼¥È¥Æ¥­¥¹¥È')
21
20
 
22
- Newt::Screen.open_window(2, 2, 30, 10, "£±ÈÖÌܤΥ¦¥£¥ó¥É¥¦")
23
- Newt::Screen.open_window(10, 5, 65, 16, "¥¦¥£¥ó¥É¥¦£²")
21
+ Newt::Screen.open_window(2, 2, 30, 10, '£±ÈÖÌܤΥ¦¥£¥ó¥É¥¦')
22
+ Newt::Screen.open_window(10, 5, 65, 16, '¥¦¥£¥ó¥É¥¦£²')
24
23
 
25
24
  f = Newt::Form.new
26
25
  chklist = Newt::Form.new
27
26
 
28
- b1 = Newt::Button.new(3, 1, "½ªÎ»")
29
- b2 = Newt::Button.new(18, 1, "¹¹¿·")
30
- r1 = Newt::RadioButton.new(20, 10, "ÁªÂò»è£±", 0, nil)
31
- r2 = Newt::RadioButton.new(20, 11, "ÁªÂò»è£²", 1, r1)
32
- r3 = Newt::RadioButton.new(20, 12, "ÁªÂò»è£³", 0, r2)
27
+ b1 = Newt::Button.new(3, 1, '½ªÎ»')
28
+ b2 = Newt::Button.new(18, 1, '¹¹¿·')
29
+ r1 = Newt::RadioButton.new(20, 10, 'ÁªÂò»è£±', 0, nil)
30
+ r2 = Newt::RadioButton.new(20, 11, 'ÁªÂò»è£²', 1, r1)
31
+ r3 = Newt::RadioButton.new(20, 12, 'ÁªÂò»è£³', 0, r2)
33
32
  rsf = Newt::Form.new
34
- #[r1, r2, r3].each {|i| rsf.add(i)}
35
33
  rsf.add(r1, r2, r3)
36
34
  rsf.set_background(Newt::COLORSET_CHECKBOX)
37
35
 
38
36
  Newt::Screen.refresh
39
37
 
40
38
  cs = []
41
- for i in 0...10
42
- buf = sprintf("¥Á¥§¥Ã¥¯ %d", i)
39
+ (0...10).each do |i|
40
+ buf = format('¥Á¥§¥Ã¥¯ %d', i)
43
41
  cs[i] = Newt::Checkbox.new(3, 10 + i, buf, ' ', nil)
44
42
  chklist.add(cs[i])
45
43
  end
46
44
 
47
- l1 = Newt::Label.new(3, 6, "¥¹¥±¡¼¥ë:")
48
- l2 = Newt::Label.new(3, 7, "¥¹¥¯¥í¡¼¥ë:")
49
- l3 = Newt::Label.new(3, 8, "¥Ò¥É¥¥¥ó:")
50
- e1 = Newt::Entry.new(12, 6, "", 20, 0);
51
- e2 = Newt::Entry.new(12, 7, "ɸ½à", 20, Newt::FLAG_SCROLL)
52
- e3 = Newt::Entry.new(12, 8, "", 20, Newt::FLAG_HIDDEN)
45
+ l1 = Newt::Label.new(3, 6, '¥¹¥±¡¼¥ë:')
46
+ l2 = Newt::Label.new(3, 7, '¥¹¥¯¥í¡¼¥ë:')
47
+ l3 = Newt::Label.new(3, 8, '¥Ò¥É¥¥¥ó:')
48
+ e1 = Newt::Entry.new(12, 6, '', 20, 0)
49
+ e2 = Newt::Entry.new(12, 7, 'ɸ½à', 20, Newt::FLAG_SCROLL)
50
+ e3 = Newt::Entry.new(12, 8, '', 20, Newt::FLAG_HIDDEN)
53
51
 
54
- #cs[0].callback( proc { print "Hello!!\n" } )
55
52
  cs[0].callback( proc { disableCallback(cs[0], e1) } )
56
-
57
53
  scale = Newt::Scale.new(3, 14, 32, 100)
58
54
 
59
55
  chklist.set_height(3)
@@ -62,47 +58,40 @@ f.add(b1, b2, l1, l2, l3, e1, e2, e3, chklist)
62
58
  f.add(rsf, scale)
63
59
 
64
60
  lb = Newt::Listbox.new(45, 1, 6, Newt::FLAG_MULTIPLE | Newt::FLAG_BORDER |
65
- Newt::FLAG_SCROLL)
66
- lb.append("£±ÈÖÌÜ", 1)
67
- lb.append("£²ÈÖÌÜ", 2)
68
- lb.append("£³ÈÖÌÜ", 3)
69
- lb.append("£´ÈÖÌÜ", 4)
70
- lb.append("£¶ÈÖÌÜ", 6)
71
- lb.append("£·ÈÖÌÜ", 7)
72
- lb.append("£¸ÈÖÌÜ", 8)
73
- lb.append("£¹ÈÖÌÜ", 9)
74
- lb.append("£±£°ÈÖÌÜ", 10)
75
-
76
- lb.insert("£µÈÖÌÜ", 5, 4)
77
- lb.insert("£±£±ÈÖÌÜ", 11, 10)
61
+ Newt::FLAG_SCROLL)
62
+ lb.append('£±ÈÖÌÜ', 1)
63
+ lb.append('£²ÈÖÌÜ', 2)
64
+ lb.append('£³ÈÖÌÜ', 3)
65
+ lb.append('£´ÈÖÌÜ', 4)
66
+ lb.append('£¶ÈÖÌÜ', 6)
67
+ lb.append('£·ÈÖÌÜ', 7)
68
+ lb.append('£¸ÈÖÌÜ', 8)
69
+ lb.append('£¹ÈÖÌÜ', 9)
70
+ lb.append('£±£°ÈÖÌÜ', 10)
71
+
72
+ lb.insert('£µÈÖÌÜ', 5, 4)
73
+ lb.insert('£±£±ÈÖÌÜ', 11, 10)
78
74
  lb.delete(11)
79
75
 
80
76
  t = Newt::Textbox.new(45, 10, 17, 5, Newt::FLAG_WRAP)
81
- t.set_text("¤³¤ì¤Ï¥Æ¥­¥¹¥È¤Î¥µ¥ó¥×¥ë¤Ç¤¹¡£\nÀµ¾ï¤Ëɽ¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹¤«¡©\n¤³¤ì¤ÏñÆȹԤǤ¹¡£\n¤³¤ì¤Ïɽ¼¨¤µ¤ì¤Æ¤Ï¤¤¤±¤Þ¤»¤ó")
77
+ t.set_text('¤³¤ì¤Ï¥Æ¥­¥¹¥È¤Î¥µ¥ó¥×¥ë¤Ç¤¹¡£\nÀµ¾ï¤Ëɽ¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹¤«¡©\n¤³¤ì¤ÏñÆȹԤǤ¹¡£\n¤³¤ì¤Ïɽ¼¨¤µ¤ì¤Æ¤Ï¤¤¤±¤Þ¤»¤ó')
82
78
 
83
79
  f.add(lb, t)
84
80
 
85
81
  Newt::Screen.refresh
86
82
 
87
- begin
88
- answer = f.run()
89
-
90
- #p answer
91
- #p b2
83
+ loop do
84
+ answer = f.run
92
85
  if answer == b2
93
-
94
- scale.set(e1.get.to_i)
95
- Newt::Screen.refresh
96
- answer = nil
86
+ scale.set(e1.get.to_i)
87
+ Newt::Screen.refresh
88
+ answer = nil
97
89
  end
98
- end while answer == nil
99
-
100
- #selectedList = Newt::Listbox.get_selection(lb, &numsel)
101
- selectedList = true
102
- numsel = 0
90
+ break unless answer.nil?
91
+ end
103
92
 
104
- Newt::Screen.pop_window()
105
- Newt::Screen.pop_window()
93
+ Newt::Screen.pop_window
94
+ Newt::Screen.pop_window
106
95
 
107
96
  Newt::Screen.finish
108
97
 
@@ -110,9 +99,10 @@ printf "got string 1: %s\n", e1.get
110
99
  printf "got string 2: %s\n", e2.get
111
100
  printf "got string 3: %s\n", e3.get
112
101
 
113
- if selectedList
102
+ selected_list = lb.get_selection
103
+ if selected_list.count > 0
114
104
  print "\nSelected listbox items:\n"
115
- for i in 0...numsel
116
- #puts selectedList[i]
105
+ selected_list.each do |item|
106
+ puts item
117
107
  end
118
108
  end
@@ -0,0 +1,21 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'newt'
5
+
6
+ begin
7
+ Newt::Screen.new
8
+ Newt::Screen.centered_window(20, 15, 'Button')
9
+
10
+ b1 = Newt::Button.new(1, 1, 'Button1')
11
+ b2 = Newt::Button.new(1, 6, 'Button2')
12
+
13
+ b = Newt::Button.new(1, 11, 'Exit')
14
+
15
+ f = Newt::Form.new
16
+ f.add(b1, b2, b)
17
+
18
+ f.run
19
+ ensure
20
+ Newt::Screen.finish
21
+ end
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'newt'
5
+
6
+ begin
7
+ Newt::Screen.new
8
+ Newt::Screen.centered_window(20, 11, 'Checkbox')
9
+
10
+ cb1 = Newt::Checkbox.new(1, 1, 'Checkbox1', 'A', nil)
11
+ cb2 = Newt::Checkbox.new(1, 2, 'Checkbox2', '', '+')
12
+ cb3 = Newt::Checkbox.new(1, 3, 'Checkbox3')
13
+ cb4 = Newt::Checkbox.new(1, 4, 'Checkbox4', nil, '')
14
+ cb5 = Newt::Checkbox.new(1, 5, 'Checkbox5')
15
+ b = Newt::Button.new(6, 7, 'Exit')
16
+
17
+ cb3.set('@')
18
+ cb5.set_flags(Newt::FLAG_DISABLED, Newt::FLAGS_SET)
19
+ f = Newt::Form.new
20
+ f.add(cb1, cb2, cb3, cb4, cb5, b)
21
+
22
+ f.run
23
+ ensure
24
+ Newt::Screen.finish
25
+ end
26
+
27
+ p cb1.get, cb2.get, cb3.get, cb4.get, cb5.get
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'newt'
5
+
6
+ begin
7
+ Newt::Screen.new
8
+
9
+ ct = Newt::CheckboxTree.new(1, 10, 4, Newt::FLAG_SCROLL)
10
+ ct.add('Checkbox1', 1, 0, Newt::ARG_APPEND)
11
+ ct.add('Checkbox2', 2, 0, Newt::ARG_APPEND)
12
+ ct.add('Checkbox3', 3, 0, Newt::ARG_APPEND)
13
+ ct.add('Checkbox4', 4, 0, 2, Newt::ARG_APPEND)
14
+ ct.add('Checkbox5', 5, 0, 2, Newt::ARG_APPEND)
15
+ b = Newt::Button.new(1, 15, 'Exit')
16
+
17
+ ct.set_width(30)
18
+ ct.set_entry(2, 'ITEM2')
19
+ f = Newt::Form.new
20
+ f.add(ct, b)
21
+
22
+ f.run
23
+ ensure
24
+ Newt::Screen.finish
25
+ end
26
+
27
+ p ct.get_selection
@@ -0,0 +1,25 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'newt'
5
+
6
+ begin
7
+ Newt::Screen.new
8
+
9
+ ct = Newt::CheckboxTreeMulti.new(1, 10, 4, ' ab', Newt::FLAG_SCROLL)
10
+ ct.add('Checkbox1', 1, 0, Newt::ARG_APPEND)
11
+ ct.add('Checkbox2', 2, 0, Newt::ARG_APPEND)
12
+ ct.add('Checkbox3', 3, 0, Newt::ARG_APPEND)
13
+ ct.add('Checkbox4', 4, 0, 2, Newt::ARG_APPEND)
14
+ ct.add('Checkbox5', 5, 0, 2, Newt::ARG_APPEND)
15
+ b = Newt::Button.new(1, 15, 'Exit')
16
+
17
+ f = Newt::Form.new
18
+ f.add(ct, b)
19
+
20
+ f.run
21
+ ensure
22
+ Newt::Screen.finish
23
+ end
24
+
25
+ p ct.get_selection('a')
@@ -0,0 +1,21 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'newt'
5
+
6
+ begin
7
+ Newt::Screen.new
8
+ Newt::Screen.centered_window(20, 10, 'CompactButton')
9
+
10
+ b1 = Newt::CompactButton.new(1, 1, 'Button1')
11
+ b2 = Newt::CompactButton.new(1, 3, 'Button2')
12
+
13
+ b = Newt::Button.new(5, 5, 'Exit')
14
+
15
+ f = Newt::Form.new
16
+ f.add(b1, b2, b)
17
+
18
+ f.run
19
+ ensure
20
+ Newt::Screen.finish
21
+ end