context 0.0.16

Sign up to get free protection for your applications and to get access to all the features.
Files changed (113) hide show
  1. data/Rakefile.rb +107 -0
  2. data/coverage/-usr-local-lib-site_ruby-1_8-atk_rb.html +612 -0
  3. data/coverage/-usr-local-lib-site_ruby-1_8-gdk_pixbuf2_rb.html +637 -0
  4. data/coverage/-usr-local-lib-site_ruby-1_8-glib2_rb.html +829 -0
  5. data/coverage/-usr-local-lib-site_ruby-1_8-gtk2-base_rb.html +709 -0
  6. data/coverage/-usr-local-lib-site_ruby-1_8-gtk2_rb.html +623 -0
  7. data/coverage/-usr-local-lib-site_ruby-1_8-pango_rb.html +665 -0
  8. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-color_rb.html +865 -0
  9. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-colors_rb.html +1266 -0
  10. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-constants_rb.html +632 -0
  11. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context-blur_rb.html +655 -0
  12. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context-circle_rb.html +619 -0
  13. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context-color_rb.html +621 -0
  14. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context-path_rb.html +726 -0
  15. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context-rectangle_rb.html +643 -0
  16. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context-triangle_rb.html +622 -0
  17. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context_rb.html +639 -0
  18. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-paper_rb.html +793 -0
  19. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-papers_rb.html +651 -0
  20. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-path_rb.html +625 -0
  21. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-point_rb.html +617 -0
  22. data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo_rb.html +756 -0
  23. data/coverage/index.html +1170 -0
  24. data/coverage/lib-Context-Bridge_rb.html +673 -0
  25. data/coverage/lib-Context-Context_rb.html +756 -0
  26. data/coverage/lib-Context-EnumeratedType_rb.html +661 -0
  27. data/coverage/lib-Context-ExecutionProxy_rb.html +671 -0
  28. data/coverage/lib-Context-Gtk-App_rb.html +638 -0
  29. data/coverage/lib-Context-Gtk-Key_rb.html +664 -0
  30. data/coverage/lib-Context-Gtk-Widget_rb.html +667 -0
  31. data/coverage/lib-Context-KeyAssignment_rb.html +641 -0
  32. data/coverage/lib-Context-KeyMap_rb.html +653 -0
  33. data/coverage/lib-Context-Key_rb.html +667 -0
  34. data/coverage/lib-Context-View_rb.html +659 -0
  35. data/coverage/lib-Context-Views-Gtk-PageView_rb.html +660 -0
  36. data/coverage/lib-Context-Views-PageView_rb.html +627 -0
  37. data/coverage/lib-Context-Widget_rb.html +650 -0
  38. data/coverage/lib-Context-require_all_rb.html +623 -0
  39. data/doc/classes/Context.html +174 -0
  40. data/doc/classes/Context/Bridge.html +296 -0
  41. data/doc/classes/Context/Context.html +564 -0
  42. data/doc/classes/Context/EnumeratedType.html +283 -0
  43. data/doc/classes/Context/ExecutionProxy.html +228 -0
  44. data/doc/classes/Context/Gtk.html +126 -0
  45. data/doc/classes/Context/Gtk/App.html +217 -0
  46. data/doc/classes/Context/Gtk/Key.html +292 -0
  47. data/doc/classes/Context/Gtk/PageView.html +245 -0
  48. data/doc/classes/Context/Gtk/PageView/MainWindow.html +200 -0
  49. data/doc/classes/Context/Gtk/Widget.html +311 -0
  50. data/doc/classes/Context/Key.html +305 -0
  51. data/doc/classes/Context/Key/Modifier.html +117 -0
  52. data/doc/classes/Context/KeyAssignment.html +234 -0
  53. data/doc/classes/Context/KeyMap.html +273 -0
  54. data/doc/classes/Context/PageView.html +180 -0
  55. data/doc/classes/Context/View.html +334 -0
  56. data/doc/classes/Context/Widget.html +298 -0
  57. data/doc/classes/Kernel.html +148 -0
  58. data/doc/classes/Object.html +196 -0
  59. data/doc/created.rid +1 -0
  60. data/doc/files/lib/Context/Bridge_rb.html +108 -0
  61. data/doc/files/lib/Context/Context_rb.html +109 -0
  62. data/doc/files/lib/Context/EnumeratedType_rb.html +101 -0
  63. data/doc/files/lib/Context/ExecutionProxy_rb.html +101 -0
  64. data/doc/files/lib/Context/Gtk/App_rb.html +110 -0
  65. data/doc/files/lib/Context/Gtk/Key_rb.html +109 -0
  66. data/doc/files/lib/Context/Gtk/Widget_rb.html +109 -0
  67. data/doc/files/lib/Context/KeyAssignment_rb.html +108 -0
  68. data/doc/files/lib/Context/KeyMap_rb.html +109 -0
  69. data/doc/files/lib/Context/Key_rb.html +108 -0
  70. data/doc/files/lib/Context/Version_rb.html +101 -0
  71. data/doc/files/lib/Context/View_rb.html +101 -0
  72. data/doc/files/lib/Context/Views/Gtk/PageView_rb.html +111 -0
  73. data/doc/files/lib/Context/Views/PageView_rb.html +108 -0
  74. data/doc/files/lib/Context/Widget_rb.html +101 -0
  75. data/doc/files/lib/Context/require_all_rb.html +101 -0
  76. data/doc/fr_class_index.html +46 -0
  77. data/doc/fr_file_index.html +42 -0
  78. data/doc/fr_method_index.html +103 -0
  79. data/doc/index.html +24 -0
  80. data/doc/rdoc-style.css +208 -0
  81. data/lib/Context/Bridge.rb +63 -0
  82. data/lib/Context/Context.rb +146 -0
  83. data/lib/Context/EnumeratedType.rb +51 -0
  84. data/lib/Context/ExecutionProxy.rb +61 -0
  85. data/lib/Context/Gtk/App.rb +28 -0
  86. data/lib/Context/Gtk/Key.rb +54 -0
  87. data/lib/Context/Gtk/Widget.rb +57 -0
  88. data/lib/Context/Key.rb +57 -0
  89. data/lib/Context/KeyAssignment.rb +31 -0
  90. data/lib/Context/KeyMap.rb +43 -0
  91. data/lib/Context/Version.rb +5 -0
  92. data/lib/Context/View.rb +49 -0
  93. data/lib/Context/Views/Gtk/PageView.rb +50 -0
  94. data/lib/Context/Views/PageView.rb +17 -0
  95. data/lib/Context/Widget.rb +40 -0
  96. data/lib/Context/require_all.rb +13 -0
  97. data/spec/Context/Bridge_spec.rb +40 -0
  98. data/spec/Context/Context_spec.rb +102 -0
  99. data/spec/Context/EnumeratedType_spec.rb +51 -0
  100. data/spec/Context/ExecutionProxy_spec.rb +28 -0
  101. data/spec/Context/Gtk/App_spec.rb +24 -0
  102. data/spec/Context/Gtk/Key_spec.rb +45 -0
  103. data/spec/Context/Gtk/Widget_spec.rb +44 -0
  104. data/spec/Context/KeyAssignment_spec.rb +26 -0
  105. data/spec/Context/KeyMap_spec.rb +64 -0
  106. data/spec/Context/Key_spec.rb +22 -0
  107. data/spec/Context/View_spec.rb +62 -0
  108. data/spec/Context/Views/Gtk/PageView_spec.rb +44 -0
  109. data/spec/Context/Views/PageView_spec.rb +20 -0
  110. data/spec/Context/Widget_spec.rb +15 -0
  111. data/spec/Context/require_all_spec.rb +13 -0
  112. data/test_results.html +343 -0
  113. metadata +179 -0
@@ -0,0 +1,564 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
+ <head>
8
+ <title>Class: Context::Context</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12
+ <script type="text/javascript">
13
+ // <![CDATA[
14
+
15
+ function popupCode( url ) {
16
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
+ }
18
+
19
+ function toggleCode( id ) {
20
+ if ( document.getElementById )
21
+ elem = document.getElementById( id );
22
+ else if ( document.all )
23
+ elem = eval( "document.all." + id );
24
+ else
25
+ return false;
26
+
27
+ elemStyle = elem.style;
28
+
29
+ if ( elemStyle.display != "block" ) {
30
+ elemStyle.display = "block"
31
+ } else {
32
+ elemStyle.display = "none"
33
+ }
34
+
35
+ return true;
36
+ }
37
+
38
+ // Make codeblocks hidden by default
39
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
+
41
+ // ]]>
42
+ </script>
43
+
44
+ </head>
45
+ <body>
46
+
47
+
48
+
49
+ <div id="classHeader">
50
+ <table class="header-table">
51
+ <tr class="top-aligned-row">
52
+ <td><strong>Class</strong></td>
53
+ <td class="class-name-in-header">Context::Context</td>
54
+ </tr>
55
+ <tr class="top-aligned-row">
56
+ <td><strong>In:</strong></td>
57
+ <td>
58
+ <a href="../../files/lib/Context/Context_rb.html">
59
+ lib/Context/Context.rb
60
+ </a>
61
+ <br />
62
+ </td>
63
+ </tr>
64
+
65
+ <tr class="top-aligned-row">
66
+ <td><strong>Parent:</strong></td>
67
+ <td>
68
+ <a href="../Object.html">
69
+ Object
70
+ </a>
71
+ </td>
72
+ </tr>
73
+ </table>
74
+ </div>
75
+ <!-- banner header -->
76
+
77
+ <div id="bodyContent">
78
+
79
+
80
+
81
+ <div id="contextContent">
82
+
83
+ <div id="description">
84
+ <p>
85
+ The <a href="Context.html">Context</a> is the Presenter in the Model, <a
86
+ href="View.html">View</a>, Presentor (MVP) model. It is an object that
87
+ holds the logic for the UI scenario that the application is currently in.
88
+ <a href="Context.html">Context</a> is an abstract class.
89
+ </p>
90
+ <p>
91
+ A <a href="Context.html">Context</a> is made up of views, model objects and
92
+ other sub-contexts. One of the views should be a UI widget container that
93
+ contains all of the views for the <a href="Context.html">Context</a>. The
94
+ concrete classes should define the logic for the <a
95
+ href="Context.html">Context</a> that is either called by <a
96
+ href="Context.html#M000040">enter</a>() or called from one of the contained
97
+ views.
98
+ </p>
99
+ <p>
100
+ Note that views are usually only instantiated in <a
101
+ href="Context.html#M000035">createViews</a>, which is called on <a
102
+ href="Context.html#M000040">enter</a>(), not on <a
103
+ href="Context.html">Context</a> creation. However, there is no requirement
104
+ for this.
105
+ </p>
106
+
107
+ </div>
108
+
109
+
110
+ </div>
111
+
112
+ <div id="method-list">
113
+ <h3 class="section-bar">Methods</h3>
114
+
115
+ <div class="name-list">
116
+ <a href="#M000039">addView</a>&nbsp;&nbsp;
117
+ <a href="#M000035">createViews</a>&nbsp;&nbsp;
118
+ <a href="#M000038">destroyViews</a>&nbsp;&nbsp;
119
+ <a href="#M000040">enter</a>&nbsp;&nbsp;
120
+ <a href="#M000042">exit</a>&nbsp;&nbsp;
121
+ <a href="#M000044">getKeyBinding</a>&nbsp;&nbsp;
122
+ <a href="#M000041">isEntered?</a>&nbsp;&nbsp;
123
+ <a href="#M000034">new</a>&nbsp;&nbsp;
124
+ <a href="#M000045">notifyKey</a>&nbsp;&nbsp;
125
+ <a href="#M000037">peekAtView</a>&nbsp;&nbsp;
126
+ <a href="#M000043">setKeyBinding</a>&nbsp;&nbsp;
127
+ <a href="#M000036">setupViews</a>&nbsp;&nbsp;
128
+ </div>
129
+ </div>
130
+
131
+ </div>
132
+
133
+
134
+ <!-- if includes -->
135
+
136
+ <div id="section">
137
+
138
+
139
+
140
+
141
+
142
+ <div id="attribute-list">
143
+ <h3 class="section-bar">Attributes</h3>
144
+
145
+ <div class="name-list">
146
+ <table>
147
+ <tr class="top-aligned-row context-row">
148
+ <td class="context-item-name">mainView</td>
149
+ <td class="context-item-value">&nbsp;[W]&nbsp;</td>
150
+ <td class="context-item-desc"></td>
151
+ </tr>
152
+ <tr class="top-aligned-row context-row">
153
+ <td class="context-item-name">mainView</td>
154
+ <td class="context-item-value">&nbsp;[R]&nbsp;</td>
155
+ <td class="context-item-desc"></td>
156
+ </tr>
157
+ <tr class="top-aligned-row context-row">
158
+ <td class="context-item-name">parent</td>
159
+ <td class="context-item-value">&nbsp;[R]&nbsp;</td>
160
+ <td class="context-item-desc"></td>
161
+ </tr>
162
+ </table>
163
+ </div>
164
+ </div>
165
+
166
+
167
+
168
+ <!-- if method_list -->
169
+ <div id="methods">
170
+ <h3 class="section-bar">Public Class methods</h3>
171
+
172
+ <div id="method-M000034" class="method-detail">
173
+ <a name="M000034"></a>
174
+
175
+ <div class="method-heading">
176
+ <a href="#M000034" class="method-signature">
177
+ <span class="method-name">new</span><span class="method-args">(viewBridge)</span>
178
+ </a>
179
+ </div>
180
+
181
+ <div class="method-description">
182
+ <p>
183
+ Create a <a href="Context.html#M000034">new</a> <a
184
+ href="Context.html">Context</a>. Takes a <a href="Bridge.html">Bridge</a>
185
+ that is used to create the <a href="View.html">View</a> s in using the
186
+ correct namespace.
187
+ </p>
188
+ <p><a class="source-toggle" href="#"
189
+ onclick="toggleCode('M000034-source');return false;">[Source]</a></p>
190
+ <div class="method-source-code" id="M000034-source">
191
+ <pre>
192
+ <span class="ruby-comment cmt"># File lib/Context/Context.rb, line 26</span>
193
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">viewBridge</span>)
194
+ <span class="ruby-ivar">@parent</span> = <span class="ruby-keyword kw">nil</span>
195
+ <span class="ruby-ivar">@mainView</span> = <span class="ruby-keyword kw">nil</span>
196
+ <span class="ruby-ivar">@viewBridge</span> = <span class="ruby-identifier">viewBridge</span>
197
+ <span class="ruby-ivar">@keyMap</span> = <span class="ruby-constant">KeyMap</span>.<span class="ruby-identifier">new</span>
198
+ <span class="ruby-ivar">@entered</span> = <span class="ruby-keyword kw">false</span>
199
+ <span class="ruby-keyword kw">end</span>
200
+ </pre>
201
+ </div>
202
+ </div>
203
+ </div>
204
+
205
+ <h3 class="section-bar">Public Instance methods</h3>
206
+
207
+ <div id="method-M000039" class="method-detail">
208
+ <a name="M000039"></a>
209
+
210
+ <div class="method-heading">
211
+ <a href="#M000039" class="method-signature">
212
+ <span class="method-name">addView</span><span class="method-args">(view)</span>
213
+ </a>
214
+ </div>
215
+
216
+ <div class="method-description">
217
+ <p>
218
+ Adds a view to the mainView Since the mainView is intended to be a UI
219
+ container that contains all the views, this method is called by a
220
+ sub-context&#8216;s <a href="Context.html#M000040">enter</a>() method to
221
+ allow the parent&#8216;s mainView to contain the sub-context&#8216;s views.
222
+ </p>
223
+ <p><a class="source-toggle" href="#"
224
+ onclick="toggleCode('M000039-source');return false;">[Source]</a></p>
225
+ <div class="method-source-code" id="M000039-source">
226
+ <pre>
227
+ <span class="ruby-comment cmt"># File lib/Context/Context.rb, line 72</span>
228
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">addView</span>(<span class="ruby-identifier">view</span>)
229
+ <span class="ruby-ivar">@mainView</span>.<span class="ruby-identifier">addView</span>(<span class="ruby-identifier">view</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@mainView</span>.<span class="ruby-identifier">nil?</span>
230
+ <span class="ruby-keyword kw">end</span>
231
+ </pre>
232
+ </div>
233
+ </div>
234
+ </div>
235
+
236
+ <div id="method-M000035" class="method-detail">
237
+ <a name="M000035"></a>
238
+
239
+ <div class="method-heading">
240
+ <a href="#M000035" class="method-signature">
241
+ <span class="method-name">createViews</span><span class="method-args">()</span>
242
+ </a>
243
+ </div>
244
+
245
+ <div class="method-description">
246
+ <p>
247
+ Creates the views for the context. This method is called automatically by
248
+ <a href="Context.html#M000040">enter</a>() and probably should not be
249
+ called otherwise. This method should be overriden by the concrete class. It
250
+ should instantiate all the views and set @mainView
251
+ </p>
252
+ <p><a class="source-toggle" href="#"
253
+ onclick="toggleCode('M000035-source');return false;">[Source]</a></p>
254
+ <div class="method-source-code" id="M000035-source">
255
+ <pre>
256
+ <span class="ruby-comment cmt"># File lib/Context/Context.rb, line 38</span>
257
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">createViews</span>
258
+ <span class="ruby-comment cmt"># Nothing to do here</span>
259
+ <span class="ruby-keyword kw">end</span>
260
+ </pre>
261
+ </div>
262
+ </div>
263
+ </div>
264
+
265
+ <div id="method-M000038" class="method-detail">
266
+ <a name="M000038"></a>
267
+
268
+ <div class="method-heading">
269
+ <a href="#M000038" class="method-signature">
270
+ <span class="method-name">destroyViews</span><span class="method-args">()</span>
271
+ </a>
272
+ </div>
273
+
274
+ <div class="method-description">
275
+ <p>
276
+ Destroys the views for the context. This method is called automatically by
277
+ <a href="Context.html#M000042">exit</a>() and probably should not be called
278
+ otherwise. This method should be overriden by the concrete class. It should
279
+ destroy all the views and set @mainView to nil
280
+ </p>
281
+ <p><a class="source-toggle" href="#"
282
+ onclick="toggleCode('M000038-source');return false;">[Source]</a></p>
283
+ <div class="method-source-code" id="M000038-source">
284
+ <pre>
285
+ <span class="ruby-comment cmt"># File lib/Context/Context.rb, line 63</span>
286
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">destroyViews</span>
287
+ <span class="ruby-ivar">@mainView</span> = <span class="ruby-keyword kw">nil</span>
288
+ <span class="ruby-keyword kw">end</span>
289
+ </pre>
290
+ </div>
291
+ </div>
292
+ </div>
293
+
294
+ <div id="method-M000040" class="method-detail">
295
+ <a name="M000040"></a>
296
+
297
+ <div class="method-heading">
298
+ <a href="#M000040" class="method-signature">
299
+ <span class="method-name">enter</span><span class="method-args">(parent)</span>
300
+ </a>
301
+ </div>
302
+
303
+ <div class="method-description">
304
+ <p>
305
+ Enters the <a href="Context.html">Context</a>. After it is called, the <a
306
+ href="Context.html">Context</a> is then active and can be interacted with.
307
+ This method automatically calls <a
308
+ href="Context.html#M000035">createViews</a>() and adds the mainView to the
309
+ parent&#8216;s view.
310
+ </p>
311
+ <p>
312
+ Usually this method will be overriden by the concrete class. However, it
313
+ should be careful to call super() in the appropriate place.
314
+ </p>
315
+ <p><a class="source-toggle" href="#"
316
+ onclick="toggleCode('M000040-source');return false;">[Source]</a></p>
317
+ <div class="method-source-code" id="M000040-source">
318
+ <pre>
319
+ <span class="ruby-comment cmt"># File lib/Context/Context.rb, line 83</span>
320
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">enter</span>(<span class="ruby-identifier">parent</span>)
321
+ <span class="ruby-ivar">@parent</span> = <span class="ruby-identifier">parent</span>
322
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-ivar">@parent</span> <span class="ruby-operator">!=</span> <span class="ruby-keyword kw">nil</span>)
323
+ <span class="ruby-ivar">@entered</span> = <span class="ruby-keyword kw">true</span>
324
+ <span class="ruby-identifier">setupViews</span>
325
+ <span class="ruby-identifier">parent</span>.<span class="ruby-identifier">addView</span>(<span class="ruby-ivar">@mainView</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@mainView</span>.<span class="ruby-identifier">nil?</span>
326
+ <span class="ruby-keyword kw">end</span>
327
+ <span class="ruby-keyword kw">end</span>
328
+ </pre>
329
+ </div>
330
+ </div>
331
+ </div>
332
+
333
+ <div id="method-M000042" class="method-detail">
334
+ <a name="M000042"></a>
335
+
336
+ <div class="method-heading">
337
+ <a href="#M000042" class="method-signature">
338
+ <span class="method-name">exit</span><span class="method-args">()</span>
339
+ </a>
340
+ </div>
341
+
342
+ <div class="method-description">
343
+ <p>
344
+ Exits the <a href="Context.html">Context</a>. After it is called, the
345
+ context is no longer active and can&#8216;t be interacted with. This method
346
+ automatically removes the mainView from the parent&#8216;s view and calls
347
+ <a href="Context.html#M000038">destroyViews</a>().
348
+ </p>
349
+ <p>
350
+ Usually this method will be overriden by the concrete class. However, it
351
+ should be careful to call super() in the appropriate place.
352
+ </p>
353
+ <p><a class="source-toggle" href="#"
354
+ onclick="toggleCode('M000042-source');return false;">[Source]</a></p>
355
+ <div class="method-source-code" id="M000042-source">
356
+ <pre>
357
+ <span class="ruby-comment cmt"># File lib/Context/Context.rb, line 106</span>
358
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">exit</span>()
359
+ <span class="ruby-ivar">@entered</span> = <span class="ruby-keyword kw">false</span>
360
+ <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@parent</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@parent</span>.<span class="ruby-identifier">mainView</span>.<span class="ruby-identifier">nil?</span>
361
+ <span class="ruby-ivar">@parent</span>.<span class="ruby-identifier">mainView</span>.<span class="ruby-identifier">removeView</span>(<span class="ruby-ivar">@mainView</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@mainView</span>.<span class="ruby-identifier">nil?</span>
362
+ <span class="ruby-keyword kw">end</span>
363
+ <span class="ruby-identifier">destroyViews</span>
364
+ <span class="ruby-keyword kw">end</span>
365
+ </pre>
366
+ </div>
367
+ </div>
368
+ </div>
369
+
370
+ <div id="method-M000044" class="method-detail">
371
+ <a name="M000044"></a>
372
+
373
+ <div class="method-heading">
374
+ <a href="#M000044" class="method-signature">
375
+ <span class="method-name">getKeyBinding</span><span class="method-args">(key)</span>
376
+ </a>
377
+ </div>
378
+
379
+ <div class="method-description">
380
+ <p>
381
+ Returns the existing binding for a key.
382
+ </p>
383
+ <p>
384
+ Warning: This key binding mechanism is likely to be depracated, or at least
385
+ heavily modified soon.
386
+ </p>
387
+ <p><a class="source-toggle" href="#"
388
+ onclick="toggleCode('M000044-source');return false;">[Source]</a></p>
389
+ <div class="method-source-code" id="M000044-source">
390
+ <pre>
391
+ <span class="ruby-comment cmt"># File lib/Context/Context.rb, line 131</span>
392
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">getKeyBinding</span>(<span class="ruby-identifier">key</span>)
393
+ <span class="ruby-identifier">a</span> = <span class="ruby-ivar">@keyMap</span>.<span class="ruby-identifier">findKey</span>(<span class="ruby-identifier">key</span>)
394
+ <span class="ruby-identifier">a</span>.<span class="ruby-identifier">unless_nil</span>.<span class="ruby-identifier">action</span>
395
+ <span class="ruby-keyword kw">end</span>
396
+ </pre>
397
+ </div>
398
+ </div>
399
+ </div>
400
+
401
+ <div id="method-M000041" class="method-detail">
402
+ <a name="M000041"></a>
403
+
404
+ <div class="method-heading">
405
+ <a href="#M000041" class="method-signature">
406
+ <span class="method-name">isEntered?</span><span class="method-args">()</span>
407
+ </a>
408
+ </div>
409
+
410
+ <div class="method-description">
411
+ <p>
412
+ Returns true if the context has been entered, but not exited. Returns false
413
+ if the context has never been entered, or if it has been entered and then
414
+ exited.
415
+ </p>
416
+ <p><a class="source-toggle" href="#"
417
+ onclick="toggleCode('M000041-source');return false;">[Source]</a></p>
418
+ <div class="method-source-code" id="M000041-source">
419
+ <pre>
420
+ <span class="ruby-comment cmt"># File lib/Context/Context.rb, line 95</span>
421
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">isEntered?</span>
422
+ <span class="ruby-ivar">@entered</span>
423
+ <span class="ruby-keyword kw">end</span>
424
+ </pre>
425
+ </div>
426
+ </div>
427
+ </div>
428
+
429
+ <div id="method-M000045" class="method-detail">
430
+ <a name="M000045"></a>
431
+
432
+ <div class="method-heading">
433
+ <a href="#M000045" class="method-signature">
434
+ <span class="method-name">notifyKey</span><span class="method-args">(view, key)</span>
435
+ </a>
436
+ </div>
437
+
438
+ <div class="method-description">
439
+ <p>
440
+ Called by the view to indicated that a key has been pressed. Runs the
441
+ binding in the keymap, or returns nil if there isn&#8216;t one.
442
+ </p>
443
+ <p>
444
+ Warning: This key binding mechanism is likely to be depracated, or at least
445
+ heavily modified soon.
446
+ </p>
447
+ <p><a class="source-toggle" href="#"
448
+ onclick="toggleCode('M000045-source');return false;">[Source]</a></p>
449
+ <div class="method-source-code" id="M000045-source">
450
+ <pre>
451
+ <span class="ruby-comment cmt"># File lib/Context/Context.rb, line 142</span>
452
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">notifyKey</span>(<span class="ruby-identifier">view</span>, <span class="ruby-identifier">key</span>)
453
+ <span class="ruby-ivar">@keyMap</span>.<span class="ruby-identifier">unless_nil</span> <span class="ruby-keyword kw">do</span> <span class="ruby-identifier">press</span>(<span class="ruby-identifier">key</span>) <span class="ruby-keyword kw">end</span>
454
+ <span class="ruby-keyword kw">end</span>
455
+ </pre>
456
+ </div>
457
+ </div>
458
+ </div>
459
+
460
+ <div id="method-M000037" class="method-detail">
461
+ <a name="M000037"></a>
462
+
463
+ <div class="method-heading">
464
+ <a href="#M000037" class="method-signature">
465
+ <span class="method-name">peekAtView</span><span class="method-args">()</span>
466
+ </a>
467
+ </div>
468
+
469
+ <div class="method-description">
470
+ <p>
471
+ Creates views and returns the main <a href="View.html">View</a>. This is
472
+ intended to be used by test code where entering the context executes code
473
+ and you need to know what the view will be ahead of time. I can think of no
474
+ reason to use this in production code.
475
+ </p>
476
+ <p><a class="source-toggle" href="#"
477
+ onclick="toggleCode('M000037-source');return false;">[Source]</a></p>
478
+ <div class="method-source-code" id="M000037-source">
479
+ <pre>
480
+ <span class="ruby-comment cmt"># File lib/Context/Context.rb, line 54</span>
481
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">peekAtView</span>
482
+ <span class="ruby-identifier">setupViews</span>
483
+ <span class="ruby-ivar">@mainView</span>
484
+ <span class="ruby-keyword kw">end</span>
485
+ </pre>
486
+ </div>
487
+ </div>
488
+ </div>
489
+
490
+ <div id="method-M000043" class="method-detail">
491
+ <a name="M000043"></a>
492
+
493
+ <div class="method-heading">
494
+ <a href="#M000043" class="method-signature">
495
+ <span class="method-name">setKeyBinding</span><span class="method-args">(key, &amp;binding)</span>
496
+ </a>
497
+ </div>
498
+
499
+ <div class="method-description">
500
+ <p>
501
+ Sets a binding for a key. Whenever a key is pressed, the context is
502
+ notified. This sets up a binding between the key and the block passed in.
503
+ After that point, the block will be called everytime the key is pressed.
504
+ </p>
505
+ <p>
506
+ Warning: This key binding mechanism is likely to be depracated, or at least
507
+ heavily modified soon.
508
+ </p>
509
+ <p><a class="source-toggle" href="#"
510
+ onclick="toggleCode('M000043-source');return false;">[Source]</a></p>
511
+ <div class="method-source-code" id="M000043-source">
512
+ <pre>
513
+ <span class="ruby-comment cmt"># File lib/Context/Context.rb, line 122</span>
514
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setKeyBinding</span>(<span class="ruby-identifier">key</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">binding</span>)
515
+ <span class="ruby-identifier">a</span> = <span class="ruby-constant">KeyAssignment</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">key</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">binding</span>)
516
+ <span class="ruby-ivar">@keyMap</span>.<span class="ruby-identifier">add</span>(<span class="ruby-identifier">a</span>)
517
+ <span class="ruby-keyword kw">end</span>
518
+ </pre>
519
+ </div>
520
+ </div>
521
+ </div>
522
+
523
+ <div id="method-M000036" class="method-detail">
524
+ <a name="M000036"></a>
525
+
526
+ <div class="method-heading">
527
+ <a href="#M000036" class="method-signature">
528
+ <span class="method-name">setupViews</span><span class="method-args">()</span>
529
+ </a>
530
+ </div>
531
+
532
+ <div class="method-description">
533
+ <p>
534
+ This is intended to be private (how do I do that again?) Just so that it
535
+ doesn&#8216;t create a view if it is already created
536
+ </p>
537
+ <p><a class="source-toggle" href="#"
538
+ onclick="toggleCode('M000036-source');return false;">[Source]</a></p>
539
+ <div class="method-source-code" id="M000036-source">
540
+ <pre>
541
+ <span class="ruby-comment cmt"># File lib/Context/Context.rb, line 44</span>
542
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setupViews</span>
543
+ <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@mainView</span>.<span class="ruby-identifier">nil?</span>
544
+ <span class="ruby-identifier">createViews</span>
545
+ <span class="ruby-keyword kw">end</span>
546
+ <span class="ruby-keyword kw">end</span>
547
+ </pre>
548
+ </div>
549
+ </div>
550
+ </div>
551
+
552
+
553
+ </div>
554
+
555
+
556
+ </div>
557
+
558
+
559
+ <div id="validator-badges">
560
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
561
+ </div>
562
+
563
+ </body>
564
+ </html>