wxruby 1.9.0-i386-mswin32 → 1.9.1-i386-mswin32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (136) hide show
  1. data/lib/wx.rb +42 -35
  2. data/lib/wx/accessors.rb +52 -0
  3. data/lib/wx/classes/evthandler.rb +36 -32
  4. data/lib/wx/classes/grid.rb +13 -13
  5. data/lib/wx/classes/point.rb +43 -0
  6. data/lib/wx/classes/size.rb +44 -0
  7. data/lib/wx/classes/styledtextctrl.rb +92 -0
  8. data/lib/wx/classes/textctrl.rb +14 -0
  9. data/lib/wx/classes/window.rb +4 -0
  10. data/lib/wx/keyword_ctors.rb +219 -0
  11. data/lib/wx/keyword_defs.rb +455 -0
  12. data/lib/wx/version.rb +1 -1
  13. data/lib/wxruby2.exp +0 -0
  14. data/lib/wxruby2.lib +0 -0
  15. data/lib/wxruby2.so +0 -0
  16. data/samples/SAMPLES-LICENSE.TXT +17 -17
  17. data/samples/aui/aui.rb +6 -5
  18. data/samples/bigdemo/About.rbw +39 -39
  19. data/samples/bigdemo/ColorPanel.rbw +25 -25
  20. data/samples/bigdemo/GridSimple.rbw +80 -80
  21. data/samples/bigdemo/MDIDemo.rbw +59 -59
  22. data/samples/bigdemo/PopupMenu.rbw +151 -151
  23. data/samples/bigdemo/Sizers.rbw +545 -545
  24. data/samples/bigdemo/bigdemo.rb +826 -826
  25. data/samples/bigdemo/demoTemplate.rbw +37 -37
  26. data/samples/bigdemo/icons/choice.xpm +27 -27
  27. data/samples/bigdemo/icons/combo.xpm +27 -27
  28. data/samples/bigdemo/icons/copy.xpm +25 -25
  29. data/samples/bigdemo/icons/cut.xpm +24 -24
  30. data/samples/bigdemo/icons/gauge.xpm +27 -27
  31. data/samples/bigdemo/icons/help.xpm +25 -25
  32. data/samples/bigdemo/icons/list.xpm +27 -27
  33. data/samples/bigdemo/icons/mondrian.xpm +44 -44
  34. data/samples/bigdemo/icons/new.xpm +24 -24
  35. data/samples/bigdemo/icons/ogl.ico +0 -0
  36. data/samples/bigdemo/icons/ogl.xpm +45 -45
  37. data/samples/bigdemo/icons/open.xpm +26 -26
  38. data/samples/bigdemo/icons/paste.xpm +38 -38
  39. data/samples/bigdemo/icons/preview.xpm +26 -26
  40. data/samples/bigdemo/icons/print.xpm +26 -26
  41. data/samples/bigdemo/icons/radio.xpm +27 -27
  42. data/samples/bigdemo/icons/robert.xpm +415 -415
  43. data/samples/bigdemo/icons/save.xpm +25 -25
  44. data/samples/bigdemo/icons/smiles.xpm +39 -39
  45. data/samples/bigdemo/icons/smiley.xpm +42 -42
  46. data/samples/bigdemo/icons/stattext.xpm +24 -24
  47. data/samples/bigdemo/icons/test2.bmp +0 -0
  48. data/samples/bigdemo/icons/test2.xpm +79 -79
  49. data/samples/bigdemo/icons/text.xpm +27 -27
  50. data/samples/bigdemo/icons/tog1.xpm +38 -38
  51. data/samples/bigdemo/icons/tog2.xpm +38 -38
  52. data/samples/bigdemo/icons/wxwin16x16.xpm +25 -25
  53. data/samples/bigdemo/tips.txt +7 -7
  54. data/samples/bigdemo/utils.rb +11 -11
  55. data/samples/bigdemo/wxButton.rbw +66 -66
  56. data/samples/bigdemo/wxCalendarCtrl.rbw +72 -72
  57. data/samples/bigdemo/wxCheckBox.rbw +52 -52
  58. data/samples/bigdemo/wxCheckListBox.rbw +77 -77
  59. data/samples/bigdemo/wxChoice.rbw +49 -49
  60. data/samples/bigdemo/wxColourDialog.rbw +34 -34
  61. data/samples/bigdemo/wxComboBox.rbw +79 -79
  62. data/samples/bigdemo/wxDialog.rbw +92 -92
  63. data/samples/bigdemo/wxDirDialog.rbw +32 -32
  64. data/samples/bigdemo/wxFileDialog.rbw +39 -39
  65. data/samples/bigdemo/wxFileDialog_Save.rbw +38 -38
  66. data/samples/bigdemo/wxFindReplaceDialog.rbw +85 -85
  67. data/samples/bigdemo/wxFontDialog.rbw +176 -176
  68. data/samples/bigdemo/wxFrame.rbw +55 -55
  69. data/samples/bigdemo/wxGauge.rbw +73 -73
  70. data/samples/bigdemo/wxGrid.rbw +68 -68
  71. data/samples/bigdemo/wxListBox.rbw +142 -142
  72. data/samples/bigdemo/wxListCtrl_virtual.rbw +109 -109
  73. data/samples/bigdemo/wxMDIWindows.rbw +52 -52
  74. data/samples/bigdemo/wxMenu.rbw +238 -238
  75. data/samples/bigdemo/wxMessageDialog.rbw +30 -30
  76. data/samples/bigdemo/wxMultipleChoiceDialog.rbw +34 -34
  77. data/samples/bigdemo/wxNotebook.rbw +138 -138
  78. data/samples/bigdemo/wxProgressDialog.rbw +45 -45
  79. data/samples/bigdemo/wxRadioBox.rbw +74 -74
  80. data/samples/bigdemo/wxRadioButton.rbw +127 -127
  81. data/samples/bigdemo/wxScrolledMessageDialog.rbw +59 -59
  82. data/samples/bigdemo/wxScrolledWindow.rbw +196 -196
  83. data/samples/bigdemo/wxSingleChoiceDialog.rbw +35 -35
  84. data/samples/bigdemo/wxSlider.rbw +44 -44
  85. data/samples/bigdemo/wxSpinButton.rbw +52 -52
  86. data/samples/bigdemo/wxSpinCtrl.rbw +53 -53
  87. data/samples/bigdemo/wxSplitterWindow.rbw +65 -65
  88. data/samples/bigdemo/wxStaticBitmap.rbw +53 -53
  89. data/samples/bigdemo/wxStaticText.rbw +57 -57
  90. data/samples/bigdemo/wxStatusBar.rbw +128 -128
  91. data/samples/bigdemo/wxTextCtrl.rbw +151 -151
  92. data/samples/bigdemo/wxTextEntryDialog.rbw +34 -34
  93. data/samples/bigdemo/wxToggleButton.rbw +51 -51
  94. data/samples/bigdemo/wxToolBar.rbw +133 -133
  95. data/samples/bigdemo/wxTreeCtrl.rbw +192 -192
  96. data/samples/calendar/calendar.rb +275 -275
  97. data/samples/caret/caret.rb +296 -296
  98. data/samples/caret/mondrian.xpm +44 -44
  99. data/samples/controls/controls.rb +1140 -1140
  100. data/samples/controls/get_item_sample.rb +87 -87
  101. data/samples/controls/icons/choice.xpm +27 -27
  102. data/samples/controls/icons/combo.xpm +27 -27
  103. data/samples/controls/icons/gauge.xpm +27 -27
  104. data/samples/controls/icons/list.xpm +27 -27
  105. data/samples/controls/icons/radio.xpm +27 -27
  106. data/samples/controls/icons/stattext.xpm +24 -24
  107. data/samples/controls/icons/text.xpm +27 -27
  108. data/samples/controls/mondrian.xpm +44 -44
  109. data/samples/dialogs/dialogs.rb +724 -724
  110. data/samples/dialogs/tips.txt +18 -18
  111. data/samples/etc/activation.rb +108 -108
  112. data/samples/etc/choice.rb +72 -72
  113. data/samples/etc/miniframe.rb +84 -84
  114. data/samples/etc/sash.rb +135 -135
  115. data/samples/etc/scrollwin.rb +116 -116
  116. data/samples/etc/system_settings.rb +258 -258
  117. data/samples/etc/wizard.rb +81 -81
  118. data/samples/event/event.rb +184 -0
  119. data/samples/images/images.rb +48 -48
  120. data/samples/listbook/listbook.rb +183 -183
  121. data/samples/listbook/listbook.xrc +370 -370
  122. data/samples/mdi/mdi.rb +87 -87
  123. data/samples/minimal/minimal.rb +83 -95
  124. data/samples/minimal/mondrian.png +0 -0
  125. data/samples/minimal/nothing.rb +46 -46
  126. data/samples/minimal/text.rb +35 -35
  127. data/samples/text/scintilla.rb +22 -28
  128. data/samples/text/textctrl.rb +124 -124
  129. data/samples/text/unicode.rb +238 -238
  130. data/samples/text/utf8.txt +14 -14
  131. data/samples/treectrl/treectrl.rb +1210 -1210
  132. data/samples/xrc/samples.xrc +46 -46
  133. data/samples/xrc/xrc_sample.rb +107 -107
  134. metadata +13 -5
  135. data/samples/minimal/mondrian.ico +0 -0
  136. data/samples/minimal/mondrian.xpm +0 -44
@@ -1,87 +1,87 @@
1
- #!/usr/bin/env ruby
2
- # Written by Nobuaki Arima
3
-
4
- require 'wx'
5
-
6
- class ListctrlFrame < Wx::Frame
7
- def initialize(title,pos,size)
8
- super(nil,-1,title,pos,size,Wx::DEFAULT_FRAME_STYLE)
9
-
10
- list = Wx::ListCtrl.new(self, -1, Wx::DEFAULT_POSITION,
11
- Wx::DEFAULT_SIZE,
12
- Wx::LC_REPORT)
13
- list.insert_column(0,"column0",Wx::LIST_FORMAT_LEFT, -1)
14
- list.insert_column(1,"column1",Wx::LIST_FORMAT_LEFT, -1)
15
- list.insert_item(0, 'line0:column0')
16
- list.set_item(0, 1, 'line0:column1')
17
- list.insert_item(1, 'line1:column0')
18
- list.set_text_colour(Wx::CYAN)
19
- list.set_item(1, 1, 'line1:column1')
20
- list.set_text_colour(Wx::RED)
21
- list.insert_item(2, 'line2:column0')
22
- list.set_item(2, 1, 'line2:column1')
23
- item = Wx::ListItem.new
24
- item.set_id(0)
25
- item.set_text_colour(Wx::RED)
26
- list.set_item( item )
27
- item.set_id(1)
28
- item.set_text_colour(Wx::GREEN)
29
- list.set_item( item )
30
- item.set_id(2)
31
- item.set_text_colour(Wx::BLUE)
32
- item.set_font(Wx::ITALIC_FONT)
33
- item.set_background_colour(Wx::LIGHT_GREY)
34
- list.set_item( item )
35
-
36
- # test of get_item method
37
- 0.upto(2) do |i|
38
- if item = list.get_item(i)
39
- print "ID:",item.get_id,"\n"
40
- print "column: ",item.get_column,"\n"
41
- print "text: ",item.get_text,"\n"
42
- print "text color:",show_color(item.get_text_colour),"\n"
43
- print "BG color: ",show_color(item.get_background_colour),"\n"
44
- print "font: ",show_font(item.get_font),"\n\n"
45
- end
46
- end
47
- # test other column
48
- 0.upto(2) do |i|
49
- if item = list.get_item(i, 1)
50
- print "ID:",item.get_id,"\n"
51
- print "column: ",item.get_column,"\n"
52
- print "text: ",item.get_text,"\n"
53
- print "text color:",show_color(item.get_text_colour),"\n"
54
- print "BG color: ",show_color(item.get_background_colour),"\n"
55
- print "font: ",show_font(item.get_font),"\n\n"
56
- end
57
- end
58
- end
59
-
60
- def show_color(color)
61
- if color.is_ok
62
- return '(%i, %i, %i)' % [color.red, color.green, color.blue]
63
- else
64
- return '(N/A)'
65
- end
66
- end
67
-
68
- def show_font(font)
69
- if font.get_style == Wx::ITALIC
70
- return "Italic"
71
- end
72
- return "Normal"
73
- end
74
-
75
- end
76
-
77
- class RbApp < Wx::App
78
- def on_init
79
- frame = ListctrlFrame.new("Listctrl test",Wx::Point.new(50, 50), Wx::Size.new(450, 340))
80
-
81
- frame.show(true)
82
-
83
- end
84
- end
85
-
86
- a = RbApp.new
87
- a.main_loop()
1
+ #!/usr/bin/env ruby
2
+ # Written by Nobuaki Arima
3
+
4
+ require 'wx'
5
+
6
+ class ListctrlFrame < Wx::Frame
7
+ def initialize(title,pos,size)
8
+ super(nil,-1,title,pos,size,Wx::DEFAULT_FRAME_STYLE)
9
+
10
+ list = Wx::ListCtrl.new(self, -1, Wx::DEFAULT_POSITION,
11
+ Wx::DEFAULT_SIZE,
12
+ Wx::LC_REPORT)
13
+ list.insert_column(0,"column0",Wx::LIST_FORMAT_LEFT, -1)
14
+ list.insert_column(1,"column1",Wx::LIST_FORMAT_LEFT, -1)
15
+ list.insert_item(0, 'line0:column0')
16
+ list.set_item(0, 1, 'line0:column1')
17
+ list.insert_item(1, 'line1:column0')
18
+ list.set_text_colour(Wx::CYAN)
19
+ list.set_item(1, 1, 'line1:column1')
20
+ list.set_text_colour(Wx::RED)
21
+ list.insert_item(2, 'line2:column0')
22
+ list.set_item(2, 1, 'line2:column1')
23
+ item = Wx::ListItem.new
24
+ item.set_id(0)
25
+ item.set_text_colour(Wx::RED)
26
+ list.set_item( item )
27
+ item.set_id(1)
28
+ item.set_text_colour(Wx::GREEN)
29
+ list.set_item( item )
30
+ item.set_id(2)
31
+ item.set_text_colour(Wx::BLUE)
32
+ item.set_font(Wx::ITALIC_FONT)
33
+ item.set_background_colour(Wx::LIGHT_GREY)
34
+ list.set_item( item )
35
+
36
+ # test of get_item method
37
+ 0.upto(2) do |i|
38
+ if item = list.get_item(i)
39
+ print "ID:",item.get_id,"\n"
40
+ print "column: ",item.get_column,"\n"
41
+ print "text: ",item.get_text,"\n"
42
+ print "text color:",show_color(item.get_text_colour),"\n"
43
+ print "BG color: ",show_color(item.get_background_colour),"\n"
44
+ print "font: ",show_font(item.get_font),"\n\n"
45
+ end
46
+ end
47
+ # test other column
48
+ 0.upto(2) do |i|
49
+ if item = list.get_item(i, 1)
50
+ print "ID:",item.get_id,"\n"
51
+ print "column: ",item.get_column,"\n"
52
+ print "text: ",item.get_text,"\n"
53
+ print "text color:",show_color(item.get_text_colour),"\n"
54
+ print "BG color: ",show_color(item.get_background_colour),"\n"
55
+ print "font: ",show_font(item.get_font),"\n\n"
56
+ end
57
+ end
58
+ end
59
+
60
+ def show_color(color)
61
+ if color.is_ok
62
+ return '(%i, %i, %i)' % [color.red, color.green, color.blue]
63
+ else
64
+ return '(N/A)'
65
+ end
66
+ end
67
+
68
+ def show_font(font)
69
+ if font.get_style == Wx::ITALIC
70
+ return "Italic"
71
+ end
72
+ return "Normal"
73
+ end
74
+
75
+ end
76
+
77
+ class RbApp < Wx::App
78
+ def on_init
79
+ frame = ListctrlFrame.new("Listctrl test",Wx::Point.new(50, 50), Wx::Size.new(450, 340))
80
+
81
+ frame.show(true)
82
+
83
+ end
84
+ end
85
+
86
+ a = RbApp.new
87
+ a.main_loop()
@@ -1,27 +1,27 @@
1
- /* XPM */
2
- static char * choice_xpm[] = {
3
- /* width height ncolors chars_per_pixel */
4
- "16 16 5 1",
5
- /* colors */
6
- " s None c None",
7
- ". c #000000",
8
- "+ c #c0c0c0",
9
- "@ c #808080",
10
- "# c #ffffff",
11
- /* pixels */
12
- "@@@@@@@@@@@@@@@@",
13
- "@..............@",
14
- "@.########+++++@",
15
- "@.########.....@",
16
- "@.########+...+@",
17
- "@.########++.++@",
18
- "@.+++++++++++++@",
19
- "@@@@@@@@@@@@@@@@",
20
- " ##############",
21
- " ..............",
22
- " .#########+.+.",
23
- " .#########....",
24
- " .#########+++.",
25
- " .#########....",
26
- " .#########+.+.",
27
- " .............."};
1
+ /* XPM */
2
+ static char * choice_xpm[] = {
3
+ /* width height ncolors chars_per_pixel */
4
+ "16 16 5 1",
5
+ /* colors */
6
+ " s None c None",
7
+ ". c #000000",
8
+ "+ c #c0c0c0",
9
+ "@ c #808080",
10
+ "# c #ffffff",
11
+ /* pixels */
12
+ "@@@@@@@@@@@@@@@@",
13
+ "@..............@",
14
+ "@.########+++++@",
15
+ "@.########.....@",
16
+ "@.########+...+@",
17
+ "@.########++.++@",
18
+ "@.+++++++++++++@",
19
+ "@@@@@@@@@@@@@@@@",
20
+ " ##############",
21
+ " ..............",
22
+ " .#########+.+.",
23
+ " .#########....",
24
+ " .#########+++.",
25
+ " .#########....",
26
+ " .#########+.+.",
27
+ " .............."};
@@ -1,27 +1,27 @@
1
- /* XPM */
2
- static char * combo_xpm[] = {
3
- /* width height ncolors chars_per_pixel */
4
- "16 16 5 1",
5
- /* colors */
6
- " s None c None",
7
- ". c #000000",
8
- "+ c #c0c0c0",
9
- "@ c #808080",
10
- "# c #ffffff",
11
- /* pixels */
12
- "@@@@@@@@@@@@@@@@",
13
- "@..............@",
14
- "@....#####+++++@",
15
- "@.#.######.....@",
16
- "@.#.######+...+@",
17
- "@....#####++.++@",
18
- "@.+++++++++++++@",
19
- "@@@@@@@@@@@@@@@@",
20
- " ##############",
21
- " ..............",
22
- " .#########+.+.",
23
- " .#########....",
24
- " .#########+++.",
25
- " .#########....",
26
- " .#########+.+.",
27
- " .............."};
1
+ /* XPM */
2
+ static char * combo_xpm[] = {
3
+ /* width height ncolors chars_per_pixel */
4
+ "16 16 5 1",
5
+ /* colors */
6
+ " s None c None",
7
+ ". c #000000",
8
+ "+ c #c0c0c0",
9
+ "@ c #808080",
10
+ "# c #ffffff",
11
+ /* pixels */
12
+ "@@@@@@@@@@@@@@@@",
13
+ "@..............@",
14
+ "@....#####+++++@",
15
+ "@.#.######.....@",
16
+ "@.#.######+...+@",
17
+ "@....#####++.++@",
18
+ "@.+++++++++++++@",
19
+ "@@@@@@@@@@@@@@@@",
20
+ " ##############",
21
+ " ..............",
22
+ " .#########+.+.",
23
+ " .#########....",
24
+ " .#########+++.",
25
+ " .#########....",
26
+ " .#########+.+.",
27
+ " .............."};
@@ -1,27 +1,27 @@
1
- /* XPM */
2
- static char * gauge_xpm[] = {
3
- /* width height ncolors chars_per_pixel */
4
- "16 16 5 1",
5
- /* colors */
6
- " s None c None",
7
- ". c #000000",
8
- "+ c #000080",
9
- "@ c #c0c0c0",
10
- "# c #808080",
11
- /* pixels */
12
- " ",
13
- " ",
14
- " ",
15
- "################",
16
- "#..............#",
17
- "#.++++++++@@@@@#",
18
- "#.++++++++@@@@@#",
19
- "#.++++++++@@@@@#",
20
- "#.++++++++@@@@@#",
21
- "#.++++++++@@@@@#",
22
- "#.++++++++@@@@@#",
23
- "#.++++++++@@@@@#",
24
- "################",
25
- " ",
26
- " ",
27
- " "};
1
+ /* XPM */
2
+ static char * gauge_xpm[] = {
3
+ /* width height ncolors chars_per_pixel */
4
+ "16 16 5 1",
5
+ /* colors */
6
+ " s None c None",
7
+ ". c #000000",
8
+ "+ c #000080",
9
+ "@ c #c0c0c0",
10
+ "# c #808080",
11
+ /* pixels */
12
+ " ",
13
+ " ",
14
+ " ",
15
+ "################",
16
+ "#..............#",
17
+ "#.++++++++@@@@@#",
18
+ "#.++++++++@@@@@#",
19
+ "#.++++++++@@@@@#",
20
+ "#.++++++++@@@@@#",
21
+ "#.++++++++@@@@@#",
22
+ "#.++++++++@@@@@#",
23
+ "#.++++++++@@@@@#",
24
+ "################",
25
+ " ",
26
+ " ",
27
+ " "};
@@ -1,27 +1,27 @@
1
- /* XPM */
2
- static char * list_xpm[] = {
3
- /* width height ncolors chars_per_pixel */
4
- "16 16 5 1",
5
- /* colors */
6
- " s None c None",
7
- ". c #000000",
8
- "+ c #c0c0c0",
9
- "@ c #808080",
10
- "# c #ffffff",
11
- /* pixels */
12
- "@@@@@@@@@@@@@@@@",
13
- "@..............@",
14
- "@.##########+++@",
15
- "@.##########+.+@",
16
- "@.++++++++++...@",
17
- "@.##########+++@",
18
- "@.##########+++@",
19
- "@.+++++++++++++@",
20
- "@.##########+++@",
21
- "@.##########+++@",
22
- "@.+++++++++++++@",
23
- "@.##########+++@",
24
- "@.##########...@",
25
- "@.##########+.+@",
26
- "@.+++++++++++++@",
27
- "@@@@@@@@@@@@@@@@"};
1
+ /* XPM */
2
+ static char * list_xpm[] = {
3
+ /* width height ncolors chars_per_pixel */
4
+ "16 16 5 1",
5
+ /* colors */
6
+ " s None c None",
7
+ ". c #000000",
8
+ "+ c #c0c0c0",
9
+ "@ c #808080",
10
+ "# c #ffffff",
11
+ /* pixels */
12
+ "@@@@@@@@@@@@@@@@",
13
+ "@..............@",
14
+ "@.##########+++@",
15
+ "@.##########+.+@",
16
+ "@.++++++++++...@",
17
+ "@.##########+++@",
18
+ "@.##########+++@",
19
+ "@.+++++++++++++@",
20
+ "@.##########+++@",
21
+ "@.##########+++@",
22
+ "@.+++++++++++++@",
23
+ "@.##########+++@",
24
+ "@.##########...@",
25
+ "@.##########+.+@",
26
+ "@.+++++++++++++@",
27
+ "@@@@@@@@@@@@@@@@"};
@@ -1,27 +1,27 @@
1
- /* XPM */
2
- static char * radio_xpm[] = {
3
- /* width height ncolors chars_per_pixel */
4
- "16 16 5 1",
5
- /* colors */
6
- " s None c None",
7
- ". c #000000",
8
- "+ c #c0c0c0",
9
- "@ c #808080",
10
- "# c #ffffff",
11
- /* pixels */
12
- " . ",
13
- " .. .. ",
14
- "+++.+.++...++++.",
15
- "+@.@...@@..@@@@.",
16
- "+@.+++.+....++@.",
17
- "+@++++++++++++@.",
18
- "+@++++++++++++@.",
19
- "+@++++...+++++@.",
20
- "+@+++.###@++++@.",
21
- "+@+++.#.#@++++@.",
22
- "+@+++.###@++++@.",
23
- "+@++++@@@+++++@.",
24
- "+@++++++++++++@.",
25
- "+@++++++++++++@.",
26
- "+@@@@@@@@@@@@@@.",
27
- "................"};
1
+ /* XPM */
2
+ static char * radio_xpm[] = {
3
+ /* width height ncolors chars_per_pixel */
4
+ "16 16 5 1",
5
+ /* colors */
6
+ " s None c None",
7
+ ". c #000000",
8
+ "+ c #c0c0c0",
9
+ "@ c #808080",
10
+ "# c #ffffff",
11
+ /* pixels */
12
+ " . ",
13
+ " .. .. ",
14
+ "+++.+.++...++++.",
15
+ "+@.@...@@..@@@@.",
16
+ "+@.+++.+....++@.",
17
+ "+@++++++++++++@.",
18
+ "+@++++++++++++@.",
19
+ "+@++++...+++++@.",
20
+ "+@+++.###@++++@.",
21
+ "+@+++.#.#@++++@.",
22
+ "+@+++.###@++++@.",
23
+ "+@++++@@@+++++@.",
24
+ "+@++++++++++++@.",
25
+ "+@++++++++++++@.",
26
+ "+@@@@@@@@@@@@@@.",
27
+ "................"};