rubysdl 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. data/LICENSE +505 -0
  2. data/MANIFEST +81 -0
  3. data/NEWS.en +144 -0
  4. data/NEWS.ja +151 -0
  5. data/README.en +117 -0
  6. data/README.ja +166 -0
  7. data/SDL_kanji.c +403 -0
  8. data/SDL_kanji.h +48 -0
  9. data/depend +18 -0
  10. data/doc/Makefile +18 -0
  11. data/doc/cdrom.rsd +431 -0
  12. data/doc/collision.rsd +162 -0
  13. data/doc/event.rsd +1487 -0
  14. data/doc/font.rsd +839 -0
  15. data/doc/general.rsd +49 -0
  16. data/doc/init.rsd +175 -0
  17. data/doc/joystick.rsd +387 -0
  18. data/doc/mixer.rsd +837 -0
  19. data/doc/mpeg.rsd +595 -0
  20. data/doc/rsd.rb +125 -0
  21. data/doc/sdlskk.rsd +496 -0
  22. data/doc/time.rsd +45 -0
  23. data/doc/video.rsd +2499 -0
  24. data/doc/wm.rsd +113 -0
  25. data/extconf.rb +92 -0
  26. data/lib/rubysdl_aliases.rb +431 -0
  27. data/lib/sdl.rb +271 -0
  28. data/rubysdl.h +109 -0
  29. data/rubysdl_cdrom.c +176 -0
  30. data/rubysdl_const_list.txt +280 -0
  31. data/rubysdl_doc.en.rd +2180 -0
  32. data/rubysdl_doc_old.rd +2402 -0
  33. data/rubysdl_event.c +346 -0
  34. data/rubysdl_event2.c +417 -0
  35. data/rubysdl_event_key.c +356 -0
  36. data/rubysdl_image.c +53 -0
  37. data/rubysdl_joystick.c +156 -0
  38. data/rubysdl_kanji.c +135 -0
  39. data/rubysdl_main.c +202 -0
  40. data/rubysdl_mixer.c +422 -0
  41. data/rubysdl_mouse.c +96 -0
  42. data/rubysdl_opengl.c +63 -0
  43. data/rubysdl_pixel.c +133 -0
  44. data/rubysdl_ref.html +5550 -0
  45. data/rubysdl_ref.rd +6163 -0
  46. data/rubysdl_rwops.c +90 -0
  47. data/rubysdl_sdlskk.c +312 -0
  48. data/rubysdl_sge_video.c +622 -0
  49. data/rubysdl_smpeg.c +341 -0
  50. data/rubysdl_time.c +36 -0
  51. data/rubysdl_ttf.c +324 -0
  52. data/rubysdl_video.c +749 -0
  53. data/rubysdl_wm.c +71 -0
  54. data/sample/aadraw.rb +24 -0
  55. data/sample/alpha.rb +27 -0
  56. data/sample/alphadraw.rb +25 -0
  57. data/sample/bfont.rb +24 -0
  58. data/sample/cdrom.rb +17 -0
  59. data/sample/collision.rb +97 -0
  60. data/sample/cursor.bmp +0 -0
  61. data/sample/cursor.rb +22 -0
  62. data/sample/ellipses.rb +35 -0
  63. data/sample/event2.rb +32 -0
  64. data/sample/font.bmp +0 -0
  65. data/sample/font.rb +25 -0
  66. data/sample/fpstimer.rb +175 -0
  67. data/sample/icon.bmp +0 -0
  68. data/sample/joy2.rb +81 -0
  69. data/sample/kanji.rb +36 -0
  70. data/sample/movesp.rb +93 -0
  71. data/sample/playmod.rb +14 -0
  72. data/sample/plaympeg.rb +48 -0
  73. data/sample/playwave.rb +16 -0
  74. data/sample/randrect.rb +40 -0
  75. data/sample/sample.ttf +0 -0
  76. data/sample/sdlskk.rb +70 -0
  77. data/sample/sgetest.rb +31 -0
  78. data/sample/stetris.rb +275 -0
  79. data/sample/testgl.rb +166 -0
  80. data/sample/testsprite.rb +68 -0
  81. data/sample/transformblit.rb +41 -0
  82. metadata +121 -0
@@ -0,0 +1,125 @@
1
+ #!/usr/local/bin/ruby -Ke
2
+
3
+ class Hash
4
+ def hash_map
5
+ new_hash = Hash.new
6
+ each{|k,v| new_hash[k] = yield k,v}
7
+ new_hash
8
+ end
9
+ end
10
+
11
+ def convert_link(str)
12
+ (?a..?z).include?(str[0]) ? "((<SDL.#{str}>))" : "((<SDL::#{str}>))"
13
+ end
14
+
15
+ def convert_dlink(desc, link)
16
+ (?a..?z).include?(link[0]) ? "((<#{desc}|SDL.#{link}>))" :
17
+ "((<#{desc}|SDL::#{link}>))"
18
+ end
19
+
20
+ def inline(str)
21
+ str.gsub(/\$\[(.*?)\]/,'((|\1|))').
22
+ gsub(/\@\[(.*?)\|(.*?)\]/){ convert_dlink($1,$2) }.
23
+ gsub(/\@\[(.*?)\]/){ convert_link($1) }
24
+ end
25
+
26
+ def format(lines,spaces)
27
+ if lines
28
+ lines.split(/^/).map{|line| " "*spaces + inline(line)}.join + "\n"
29
+ else
30
+ ""
31
+ end
32
+ end
33
+
34
+ MethodDesc = Struct.new(:output, :purpose, :fullname, :module, :lock)
35
+
36
+ def rsd2rd(input)
37
+ part = Hash.new{""}
38
+ mode = nil
39
+
40
+ input.each do |line|
41
+ case line
42
+ when /^(MOD|DEP|NAME|PURPOSE|TYPE|RVAL)\s+/
43
+ part[$1] = $'.chomp
44
+ when "LOCK\n"
45
+ part["LOCK"] = ""
46
+ when /^(PROTO|DESC|NOTES|RET|EXCEPTION|EXAMPLE|BUG|SEEALSO|COMMENT)\s*$/
47
+ mode = $1
48
+ when "EXCEPTION *\n"
49
+ part["EXCEPTION"] = "���Ԥ����Ȥ��ˤ��㳰@[Error]��ȯ�������ޤ���\n"
50
+ else
51
+ part[mode] += line
52
+ end
53
+ end
54
+
55
+ %w(NAME PURPOSE TYPE PROTO DESC).each do |v|
56
+ raise "There isn't #{v} at #{part["NAME"]}" unless part.key?(v)
57
+ end
58
+
59
+ part = part.hash_map{|_, line| line.sub(/\n+\z/,"\n")}
60
+
61
+ output = ""
62
+ ns = if part.key?("MOD") then "SDL::#{part["MOD"]}" else "SDL" end
63
+
64
+ part["PROTO"].each{|proto| output << "--- #{ns}#{part["TYPE"]}#{proto}"}
65
+ output << "\n"
66
+ output << format(part["DESC"],4)
67
+ if part.key?("LOCK")
68
+ output << "\n"
69
+ output << format("���Υ᥽�åɤ�Ȥ��ˤϥ����ե�����@[���å�|Surface#lock]����ɬ�פ�����ޤ���\n@[auto_lock?]�����ξ��ϥ����ƥब��ưŪ�˥��å�/������å����ޤ���",4)
70
+ end
71
+ output << format(part["RET"],4)
72
+ output << format(part["EXCEPTION"],4)
73
+ if part.key?("DEP")
74
+ output << "\n ���Υ᥽�åɤ�Ȥ��ˤ� #{part["DEP"]} ��ɬ�פǤ���\n"
75
+ end
76
+ if part.key?("EXAMPLE")
77
+ output << "\n EXAMPLE\n"
78
+ output << format(part["EXAMPLE"],6)
79
+ end
80
+ if part.key?("NOTES")
81
+ output << " * NOTES\n\n"
82
+ output << format(part["NOTES"],6)
83
+ end
84
+ if part.key?("BUG")
85
+ output << " * BUG\n\n"
86
+ output << format(part["NOTES"],6)
87
+ end
88
+ if part.key?("SEEALSO")
89
+ output << " * See Also\n \n "
90
+ output << part["SEEALSO"].
91
+ split(/\n/).
92
+ map{|line| line[0] == ?( ? line : convert_link(line) }.
93
+ join(", ")
94
+ output << "\n\n"
95
+ end
96
+
97
+ MethodDesc.new(output,
98
+ part["PURPOSE"],
99
+ "#{ns}#{part["TYPE"]}#{part["NAME"]}",
100
+ part["MOD"],
101
+ part.key?("LOCK"))
102
+ end
103
+
104
+ def toc(methods)
105
+ methods.map{|m| " * ((<#{m.fullname}>)) -- #{inline(m.purpose)}" }.join("\n")
106
+ end
107
+
108
+ def locklist(methods)
109
+ methods.find_all{|m| m.lock}.map{|m| "* ((<#{m.fullname}>))"}.join("\n ")
110
+ end
111
+
112
+ def methodlist(mod, methods)
113
+ methods.find_all{|m| m.module == mod}.
114
+ map{|m| "* ((<#{m.fullname}>)) -- #{inline(m.purpose)}"}.
115
+ join("\n")
116
+ end
117
+
118
+ synop, descs = ARGF.read.split(/^%%%$/)
119
+ methods = if descs then descs.split(/^%%$/).map{|m| rsd2rd(m)} else [] end
120
+
121
+ STDOUT << format(synop, 0).gsub(/^TOC$/){ toc(methods) }.
122
+ gsub(/^METHODS\((.*)\)$/){methodlist($1, methods)}
123
+
124
+ methods.each{|m| STDOUT << m.output.gsub("LOCKLIST"){ locklist(methods) }}
125
+
@@ -0,0 +1,496 @@
1
+ = SDLSKK
2
+ * ((<SDLSKK�ˤ�����ܸ����ϤˤĤ���>))
3
+ * ((<SDL::SKK::Context>))
4
+ * ((<SDL::SKK::Dictionary>))
5
+ * ((<SDL::SKK::Keybind>))
6
+ * ((<SDL::SKK::RomKanaRuleTable>))
7
+ * ((<SDLSKK��Ϣ�᥽�å�>))
8
+ TOC
9
+
10
+ == SDLSKK�ˤ�����ܸ����ϤˤĤ���
11
+ Ruby/SDL �ˤ� ((<SDLSKK|URL:http://www.kmc.gr.jp/~ohai/sdlskk.html>))
12
+ �����Ѥ��� ((<SKK|URL:http://openlab.jp/skk/index-j.html>))
13
+ �˻������ܸ����ϥ����ƥब����ޤ���
14
+
15
+ ��������ܸ����Ϥ��Ǥ�������Ǥʤ���
16
+ ���å�&�ڡ����Ȥ�ޤ��ñ�ʹ��Խ���ǽ����äƤ��ޤ���
17
+
18
+ sample/sdlskk.rb �⻲�ͤˤ��Ƥ���������
19
+
20
+ == SDL::SKK
21
+ SDLSKK��Ϣ�Υ⥸�塼��ؿ�����ӥ��饹����ĥ⥸�塼��Ǥ���
22
+
23
+ METHODS(SKK)
24
+
25
+ == SDL::SKK::Context
26
+ ���Ϥξ��֤ʤɤ�ɽ�魯���饹�ǡ�SDL::SKK���濴Ū�ʥ��饹�Ǥ���
27
+
28
+ METHODS(SKK::Context)
29
+
30
+ == SDL::SKK::Dictionary
31
+ �����ɽ�魯���饹�Ǥ����ե����뤫�� SKK �����μ�����ɤ߹��ळ��
32
+ ���Ǥ��ޤ���
33
+
34
+ METHODS(SKK::Dictionary)
35
+
36
+ == SDL::SKK::Keybind
37
+ ���ϤΥ����Х���ɤ�ɽ�魯���饹�Ǥ���
38
+
39
+ METHODS(SKK::Keybind)
40
+
41
+ == SDL::SKK::RomKanaRuleTable
42
+ �����޻� -> ��̾ ���Ѵ��ơ��֥��ɽ�魯���饹�Ǥ���
43
+ �����Ѵ��ơ��֥�ϡ�SDLSKK�ȼ��η����Υƥ����ȥե�����ǡ�
44
+ ������ɤ߹���ǥ��󥹥��󥹤��������ޤ���
45
+
46
+ �Ѵ��ơ��֥�ե������ SDLSKK ����°���Ƥ��ޤ���
47
+
48
+ METHODS(SKK::RomKanaRuleTable)
49
+
50
+ == SDLSKK��Ϣ�᥽�å�
51
+ %%%
52
+ NAME encoding=
53
+ MOD SKK
54
+ TYPE .
55
+ DEP SDLSKK
56
+ PURPOSE SDLSKK�����Υ��󥳡��ǥ��󥰤���ꤷ�ޤ���
57
+
58
+ PROTO
59
+ encoding=(encoding)
60
+
61
+ DESC
62
+ SDLSKK�����Υ��󥳡��ǥ��󥰤� $[encoding] �˻��ꤷ�ޤ���
63
+ * SDL::SKK::EUCJP
64
+ * SDL::SKK::UTF8
65
+ * SDL::SKK::SJIS
66
+ �Τ����줫����ꤷ�Ƥ���������SDL::SKK::EUCJP ���ǥե���ȤǤ���
67
+ �ޤ��������SDLSKK��Ϣ��¾�Υ᥽�åɤ�Ƥ����˸Ƥ�Ǥ���������
68
+
69
+ ����ϡ�@[SKK::Dictionary#load]��@[SKK::RomKanaRuleTable.new]��
70
+ �ɤ߹���ե����뤪��� @[SKK::Context#str] ��������ʸ����
71
+ @[SKK::Dictionary#save] �ǽ񤭽Ф��ե������
72
+ ���󥳡��ɤ���ꤷ�ޤ���
73
+
74
+ NOTES
75
+ ���Υ⥸�塼��ؿ��Ϻǽ��1������Ƥ�Ǥ���������
76
+ ����ǥ��󥳡��ǥ��󥰤��ѹ������������ư��ޤ���
77
+
78
+ SEEALSO
79
+ SKK.encoding
80
+ SKK::Dictionary#load
81
+ SKK::Dictionary#save
82
+ SKK::RomKanaRuleTable.new
83
+
84
+ %%
85
+ NAME encoding
86
+ MOD SKK
87
+ TYPE .
88
+ DEP SDLSKK
89
+ PURPOSE SDLSKK���������󥳡��ǥ��󥰤����ޤ���
90
+ RVAL UINT
91
+
92
+ PROTO
93
+ encoding
94
+
95
+ DESC
96
+ SDLSKK���������󥳡��ǥ��󥰤��֤��ޤ����ܤ����� @[SKK.encoding=] ��
97
+ ���Ƥ���������
98
+
99
+ SEEALSO
100
+ SKK.encoding=
101
+
102
+ %%
103
+ NAME new
104
+ MOD SKK::RomKanaRuleTable
105
+ TYPE .
106
+ DEP SDLSKK
107
+ PURPOSE ����ե��٥åȤ��餫�ʤؤ��Ѵ��ơ��֥���ɤ߹��ߤޤ���
108
+ RVAL SDL::SKK::RomKanaRuleTable
109
+
110
+ PROTO
111
+ new(filename)
112
+
113
+ DESC
114
+ $[filename]�ǻ��ꤷ���ե�����򥢥�ե��٥åȤ��餫�ʤؤ��Ѵ��ơ��֥�
115
+ �Ȥ����ɤ߹��ߤޤ���
116
+ �ե�����η����ϰʲ����̤�Ǥ���
117
+ * ��;;�� �ǻϤޤ�Ԥϥ�����
118
+ * ���Ԥ�̵�뤵���
119
+ * ����ʳ��ιԤ�1��1����ȥ꡼�ǡ��ʲ��Τ褦�ʷ���
120
+ ���ϥ���ե��٥å�<TAB>�����Ѵ���˻Ĥ륢��ե��٥å�<TAB>�Ҳ�̾<TAB>ʿ��̾
121
+
122
+
123
+ NOTES
124
+ ���Υե�����Υ��󥳡��ǥ��󥰤� @[SKK.encoding=] �Ǥ��餫������ꤷ�Ƥ�����
125
+ ����������
126
+
127
+ SEEALSO
128
+ SKK::Context.new
129
+
130
+ %%
131
+ NAME new
132
+ MOD SKK::Dictionary
133
+ TYPE .
134
+ DEP SDLSKK
135
+ PURPOSE ���μ�����������ޤ���
136
+ RVAL SDL::SKK::Dictionary
137
+
138
+ PROTO
139
+ new
140
+
141
+ DESC
142
+ ���μ���Ȥ��� @[SKK::Dictionary] �Υ��󥹥��󥹤��������ޤ���
143
+ Ŭ���ʼ���򤳤���ɤ߹���Ǥ���������
144
+
145
+ SEEALSO
146
+ SKK::Dictionary#load
147
+
148
+ %%
149
+ NAME load
150
+ MOD SKK::Dictionary
151
+ TYPE #
152
+ DEP SDLSKK
153
+ PURPOSE ����ե�������ɤ߹��ߤޤ���
154
+
155
+ PROTO
156
+ load(filename, user)
157
+
158
+ DESC
159
+ $[filename] �ǻ��ꤷ��������ɤ߹��ߤޤ�������η����� SKK �Τ�Τ�
160
+ Ʊ��Ǥ�(������annotation��ޤ��Τ��ԲĤǤ�)��
161
+ $[user] �򿿤ˤ����
162
+ ���μ���ϥ桼������Ǥ���Ȱ���졢�����˴ޤޤ��
163
+ ����ȥ꡼���٤Ƥ˥桼�����ϥޡ������դ��ޤ���
164
+
165
+ �桼�����ϥޡ������դ�������ȥ꡼�Τߤ� @[SKK::Dictionary#save] ��
166
+ �桼������˽��Ϥ���ޤ���
167
+
168
+ NOTES
169
+ ���Υե�����Υ��󥳡��ǥ��󥰤� @[SKK.encoding=] �Ǥ��餫������ꤷ�Ƥ�����
170
+ ����������
171
+
172
+ EXCEPTION *
173
+
174
+ SEEALSO
175
+ SKK::Dictionary.new
176
+ SKK::Dictionary#save
177
+ SKK::Context.new
178
+
179
+ %%
180
+ NAME save
181
+ MOD SKK::Dictionary
182
+ TYPE #
183
+ DEP SDLSKK
184
+ PURPOSE �桼�������ե�����˽��Ϥ��ޤ���
185
+
186
+ PROTO
187
+ save(filename)
188
+
189
+ DESC
190
+ $[filename] �ǻ��ꤷ���ե�����˥桼���������Ϥ��ޤ���
191
+ �桼�������Ѥ����Ѵ��ȡ�
192
+ @[SKK::Dictionary#load] �ǡ֥桼������פȤ����ɤ߹��ޤ줿
193
+ ��Ȥ򤢤碌����Τ򡢥桼������Ȥ��ư����ޤ���
194
+
195
+ SEEALSO
196
+ SKK::Dictionary.new
197
+ SKK::Dictionary#load
198
+
199
+ %%
200
+ NAME new
201
+ MOD SKK::Keybind
202
+ TYPE .
203
+ DEP SDLSKK
204
+ PURPOSE ���Υ����Х���ɤ���ޤ���
205
+ RVAL SDL::SKK::Keybind
206
+
207
+ PROTO
208
+ new
209
+
210
+ DESC
211
+ ���Υ����Х���ɤ��б����� @[SKK::Keybind] �Υ��󥹥��󥹤��֤��ޤ���
212
+ ����� @[SKK::Keybind#set_key] �� @[SKK::Keybind#set_default_key]
213
+ �ʤɤ�Ȥäƥ����Х���ɤ��ɲä��ƻȤ��ޤ���
214
+
215
+ SEEALSO
216
+ SKK::Keybind#set_key
217
+ SKK::Keybind#set_default_key
218
+ SKK::Context.new
219
+
220
+ %%
221
+ NAME set_key
222
+ MOD SKK::Keybind
223
+ TYPE #
224
+ DEP SDLSKK
225
+ PURPOSE �����Х���ɤ����ꤷ�ޤ���
226
+
227
+ PROTO
228
+ set_key(key_str, cmd_str)
229
+
230
+ DESC
231
+ $[key_str] �����ꤷ���������򼨤�ʸ�����$[cmd_str] �����ꤷ����
232
+ ư��򼨤�ʸ�����Ϳ���������Х���ɤ����ꤷ�ޤ���
233
+
234
+ $[key_str] �Ȥ��Ƥϰʲ��Τ褦��ʸ�����Ϳ���뤳�Ȥ��Ǥ��ޤ���
235
+ * ����ե��٥åȡ�"%" �ʤɤ�ascii�ε���
236
+ * "SPC" "TAB" "DEL" "RET" "UP" "DOWN" "RIGHT" "LEFT" "INSERT" "HOME" "END"
237
+ "PAGEUP" "PAGEDOWN" "F1" "F2" "F3" "F4" "F5" "F6" "F7" "F8" "F9" "F10"
238
+ "F11" "F12" "F13" "F14" "F15" "HELP"
239
+ * "C-a" "M-C-a" �ʤɤȤ��ä������������դ���ʸ����
240
+ _
241
+ �ޤ���$[cmd_str] �ˤϰʲ���ʸ�����Ϳ���뤳�Ȥ��Ǥ��ޤ���
242
+ * "backward-char",
243
+ * "forward-char",
244
+ * "backward-delete-char",
245
+ * "delete-char",
246
+ * "kakutei",
247
+ * "kettei",
248
+ * "space",
249
+ * "keyboard-quit",
250
+ * "set-mark-command",
251
+ * "kill-region",
252
+ * "yank",
253
+ * "copy",
254
+ * "graph-char",
255
+ * "upper-char",
256
+ * "lower-char",
257
+ * "abbrev-input",
258
+ * "latin-mode",
259
+ * "previous-candidate",
260
+ * "jisx0208-mode",
261
+ * "toggle-kana",
262
+ * "beginning-of-line"
263
+ * "end-of-line"
264
+ * "do-nothing"
265
+
266
+ ��������"a" �� "/" �Ȥ��ä���������ʸ��1ʸ���Υ����ˤϥǥե����
267
+ �ʳ��Υ����Х���ɤϤ��ʤ��褦�ˤ��Ƥ���������
268
+
269
+ ɸ��Υ����Х���ɤ򾯤��ѹ��������Ȥ������ϡ��ޤ�
270
+ @[SKK::Keybind#set_default_key] ��Ƥ�ǡ��ǥե���ȤΥ����Х���ɤ�
271
+ ���ꤷ�Ƥ��餳�Υ᥽�åɤ�Ƥ�Ǥ�������
272
+
273
+ SEEALSO
274
+ SKK::Keybind#set_default_key
275
+ SKK::Keybind#unset_key
276
+
277
+ %%
278
+ NAME set_default_key
279
+ MOD SKK::Keybind
280
+ TYPE #
281
+ DEP SDLSKK
282
+ PURPOSE Emacs�˻���ɸ��Ū�ʥ����Х���ɤ����ꤷ�ޤ���
283
+
284
+ PROTO
285
+ set_default_key
286
+
287
+ DESC
288
+ Emacs�˻���ɸ��Ū�ʥ����Х���ɤ����ꤷ�ޤ���
289
+
290
+ SEEALSO
291
+ SKK::Keybind#set_key
292
+
293
+ %%
294
+ NAME unset_key
295
+ MOD SKK::Keybind
296
+ TYPE #
297
+ DEP SDLSKK
298
+ PURPOSE ���ꤷ�������Υ����Х���ɤ�̵���ˤ��ޤ���
299
+
300
+ PROTO
301
+ unset_key(key_str)
302
+
303
+ DESC
304
+ $[key_str] �ǻ��ꤷ�������Υ����Х���ɤ�̵���ˤ��ޤ���
305
+ $[key_str] �ˤ� @[SKK::Keybind#set_key] ��Ʊ���ͤ�Ȥ��ޤ���
306
+
307
+ %%
308
+ NAME new
309
+ MOD SKK::Context
310
+ TYPE .
311
+ DEP SDLSKK
312
+ PURPOSE ���ϥ���ƥ����Ȥ��������롣
313
+ RVAL SKK::Context
314
+
315
+ PROTO
316
+ new(dict, romkama_table, bind, use_minibuffer)
317
+
318
+ DESC
319
+ ���ϥ���ƥ����Ȥ���������@[SKK::Context] �Υ��󥹥��󥹤��֤��ޤ���
320
+ $[dict] �����Ѥ��뼭��Ȥ��� @[SKK::Dictionary] �Υ��󥹥��󥹤�
321
+ $[romkama_table] �ϥ����޻������Ѵ���§�Ȥ��� @[SKK::RomKanaRuleTable]
322
+ �Υ��󥹥��󥹤�$[bind] �ˤϥ����Х���ɤȤ��� @[SKK::Keybind] �Υ��󥹥���
323
+ ��Ϳ���롣
324
+ use_minibuffer �˿��ͤ�Ϳ����ȥߥ˥Хåե������Ѥ���褦�ˤʤ�ޤ���
325
+ ���Ǥ����Ѥ��ޤ���
326
+
327
+ EXAMPLE
328
+ # ��������������ե����뤫�鼭��ǡ������ɤ߹���
329
+ dict = SDL::SKK::Dictionary.new
330
+ dict.load( 'jisyo', false )
331
+ # �����޻���̾�Ѵ��ơ��֥���ɤ߹���
332
+ table = SDL::SKK::RomKanaRuleTable.new( 'rule_table' )
333
+ # �����Х���ɤ����ꤹ��
334
+ bind = SDL::SKK::Keybind.new
335
+ bind.set_default_key
336
+
337
+ # ����ƥ����Ȥ�����
338
+ context = SDL::SKK::Context.new( dict, table, bind, use_minibuffer )
339
+
340
+ SEEALSO
341
+ SKK::Context#input
342
+ SKK::Context#str
343
+
344
+ %%
345
+ NAME input
346
+ MOD SKK::Context
347
+ TYPE #
348
+ DEP SDLSKK
349
+ PURPOSE �����ܡ��ɤ�������Ϥ�����դ��ޤ���
350
+
351
+ PROTO
352
+ input(event)
353
+
354
+ DESC
355
+ ���٥�ȷ�ͳ�ǥ����ܡ��ɤ�������Ϥ�����դ���
356
+ ����ƥ����Ȥξ��֤��ѹ����ޤ���
357
+ $[event] �ˤ� @[Event2] �Υ��󥹥��󥹤�Ϳ���ޤ���
358
+ @[Event2::KeyDown] �ʳ��Υ��٥�Ȥ�̵�뤷�ޤ���
359
+
360
+ EXAMPLE
361
+ while event = SDL::Event2.poll do
362
+ case event
363
+ when SDL::Event2::Quit
364
+ exit
365
+ when SDL::Event2::KeyDown
366
+ if event.sym == SDL::Key::ESCAPE then
367
+ exit
368
+ end
369
+ if event.sym == SDL::Key::F1
370
+ dict.save("test_user_dict")
371
+ end
372
+ context.input( event )
373
+ end
374
+ end
375
+
376
+ %%
377
+ NAME str
378
+ MOD SKK::Context
379
+ TYPE #
380
+ DEP SDLSKK
381
+ PURPOSE ���������ʸ��������ޤ���
382
+ RVAL String
383
+
384
+ PROTO
385
+ str
386
+
387
+ DESC
388
+ ���������ʸ������֤��ޤ���
389
+
390
+ SEEALSO
391
+ SKK::Context#render_str
392
+ SKK::Context#clear
393
+ SKK::Context#clear_text
394
+
395
+ %%
396
+ NAME render_str
397
+ MOD SKK::Context
398
+ TYPE #
399
+ DEP SDLSKK
400
+ PURPOSE ����ʸ����������󥰤��ޤ���
401
+ RVAL SDL::Surface
402
+
403
+ PROTO
404
+ render_str(font, r, g, b)
405
+
406
+ DESC
407
+ $[self] �����äƤ������������ʸ����������󥰤���
408
+ @[Surface] �Υ��󥹥��󥹤��֤��ޤ���
409
+ $[font] �ϥ�����󥰤����Ѥ���ե���Ȥ� @[TTF] �Υ��󥹥��󥹤�Ϳ����
410
+ ���ο��� ($[r], $[g], $[b]) �ǻ��ꤷ�ޤ���
411
+
412
+ SEEALSO
413
+ SKK::Context#render_minibuffer_str
414
+
415
+ %%
416
+ NAME render_minibuffer_str
417
+ MOD SKK::Context
418
+ TYPE #
419
+ DEP SDLSKK
420
+ PURPOSE �ߥ˥Хåե���ʸ����������󥰤��ޤ���
421
+
422
+ PROTO
423
+ render_minibuffer_str(font, r, g, b)
424
+
425
+ DESC
426
+ $[self] �����äƤ�����������Υߥ˥Хåե��ξ��֤������󥰤���
427
+ @[Surface] �Υ��󥹥��󥹤��֤��ޤ���
428
+ $[font] �ϥ�����󥰤����Ѥ���ե���Ȥ� @[TTF] �Υ��󥹥��󥹤�Ϳ����
429
+ ���ο��� ($[r], $[g], $[b]) �ǻ��ꤷ�ޤ���
430
+
431
+ %%
432
+ NAME clear
433
+ MOD SKK::Context
434
+ TYPE #
435
+ DEP SDLSKK
436
+ PURPOSE ���Ͼ��֤򥯥ꥢ���ޤ���
437
+
438
+ PROTO
439
+ clear
440
+
441
+ DESC
442
+ ��ʸ��������Ͼ��֤򥯥ꥢ���ƽ�����֤��ᤷ�ޤ���
443
+
444
+ SEEALSO
445
+ SKK::Context#clear_text
446
+
447
+ %%
448
+ NAME clear_text
449
+ MOD SKK::Context
450
+ TYPE #
451
+ DEP SDLSKK
452
+ PURPOSE ���ϥƥ����Ȥ򥯥ꥢ���ޤ���
453
+
454
+ PROTO
455
+ clear_text
456
+
457
+ DESC
458
+ $[self] �����ϥ⡼�ɤ����������ϥ⡼�ɡ�����ե��٥å����ϥ⡼�ɡ�
459
+ JISX0208����ե��٥å����ϥ⡼�ɤΤ����줫�Ǥ���Ф��Υ⡼�ɤ�
460
+ �ݻ������ޤ����ϥƥ����Ȥ���ˤ��ޤ���
461
+
462
+ ʣ���Ԥ����Ϥ�¸���������硢@[SKK::Context] ��Ƥ֤�
463
+ �⡼�ɤ��������ϥ⡼�ɤ���äƤ��ޤ��Τ��Լ����Ǥ����硢
464
+ ���δؿ���Ƥ֤Ȥ褤��
465
+
466
+ �ޤ������åȥХåե������Ƥ���¸����ޤ���
467
+
468
+ SEEALSO
469
+ SKK::Context#get_basic_mode
470
+
471
+ %%
472
+ NAME get_basic_mode
473
+ MOD SKK::Context
474
+ TYPE #
475
+ DEP SDLSKK
476
+ PURPOSE ���֤���������ξ��֤Ǥʤ����ɤ��������롣
477
+ RVAL true/false
478
+
479
+ PROTO
480
+ get_basic_mode
481
+
482
+ DESC
483
+ @[self] �����ϥ⡼�ɤ����������ϥ⡼�ɡ�����ե��٥å����ϥ⡼�ɡ�
484
+ JISX0208����ե��٥å����ϥ⡼�ɤΤ����줫�Ǥ���п��򡢤���
485
+ �ʳ��Ǥϵ����֤���������Ͽ�⡼�ɤΤȤ��ʤɤ⵶���֤��ޤ���
486
+
487
+ ���줬���ΤȤ��˥꥿���󥭡��򲡤��������Ͻ�λ�Ȥߤʤ���
488
+ �ʤɤȤ��ä����������Ѥ��ޤ���
489
+
490
+ NOTES
491
+ ���ϥ⡼�ɤ�̾���䤽�����ƤˤĤ��Ƥ�
492
+ ((<SKK|URL:http://openlab.jp/skk/index-j.html>))
493
+ �Υޥ˥奢��ʤɤ򻲹ͤˤ��Ƥ���������
494
+
495
+ SEEALSO
496
+ SKK::Context#clear_text