annotate lib/ruby/kinput2_default.rb @ 16:598fcbe482b5

imported patch 19_kinput2-v3.1-ruby.patch
author Yoshiki Yazawa <yaz@honeyplanet.jp>
date Mon, 08 Mar 2010 20:38:17 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
1 require 'kinput2'
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
2
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
3 class KanjiConv < KanjiConvCore
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
4 attr_reader :input, :selection, :dialog
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
5
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
6 def initialize
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
7 super
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
8 @input = JTextEdit.new
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
9
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
10 @selection = Selection.new (self)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
11 @dialog = Dialog.new (self)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
12 @mode = ModeMaster.new (self)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
13
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
14 @fundMode = FundMode.new(self)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
15 @inputMode = InputMode.new(self)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
16 @convMode = ConvMode.new(self)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
17 @mode.set(:fund, @fundMode)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
18 @mode.set(:input, @inputMode)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
19 @mode.set(:conv, @convMode)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
20 @mode.change(:fund)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
21
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
22 debug_message("Initialize Done.")
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
23 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
24
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
25 def reset
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
26 super
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
27 @mode.change(:fund)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
28 @input.reset
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
29 reset_cand_list
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
30 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
31
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
32 def convert (word)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
33 cand_list = [word, word.upcase]
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
34 return cand_list
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
35 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
36
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
37 ## inputEvent (keynum, keysym = nil, state = nil)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
38 ## ReturnValue 1:Pass 0:Trap
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
39 def inputEvent (keynum, keysym = nil, state = nil)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
40 debug_message("KeyNum: #{keynum}, KeySym: #{keysym}, Status: #{state}")
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
41
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
42 if keynum == 0 then
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
43 return 1
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
44 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
45 key = [keynum]
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
46
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
47 if @mode.current then
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
48 trap = @mode.current.call (keynum, keysym, state)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
49 return ((trap == true) ? 0 : 1)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
50 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
51 return 1;
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
52 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
53
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
54 def selection_fix (index)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
55 fix (index)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
56 @mode.change(:fund)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
57 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
58
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
59 def fix (fixed_arg)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
60 ### Must NOT chage @mode here, because exceptional case can exist.
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
61 super (fixed_arg)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
62 @input.reset
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
63 reset_cand_list
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
64 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
65
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
66 def insert (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
67 debug_message("insert '#{keysym.chr}'")
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
68 @input.insert(keysym.chr)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
69 set_cand_list (convert(@input.text), 0)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
70 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
71 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
72
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
73 class PrimeModeCore < ModeCore
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
74 def initialize (parent)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
75 super
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
76 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
77
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
78 private
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
79 def insert (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
80 @parent.insert(keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
81 @parent.mode.change(:input)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
82 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
83 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
84
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
85 def fix (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
86 fix_internal(keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
87 @parent.mode.change(:fund)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
88 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
89 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
90
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
91 def fix_and_insert (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
92 fix_internal (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
93 insert (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
94 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
95 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
96
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
97 def cursor_right (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
98 @parent.input.cursor_right
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
99 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
100 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
101 def cursor_left (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
102 @parent.input.cursor_left
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
103 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
104 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
105 def cursor_beginning (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
106 @parent.input.cursor_beginning
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
107 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
108 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
109 def cursor_end (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
110 @parent.input.cursor_end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
111 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
112 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
113
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
114 def selection_right (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
115 @parent.selection.right
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
116 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
117 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
118 def selection_left (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
119 @parent.selection.left
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
120 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
121 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
122 def selection_beginning (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
123 @parent.selection.line_beginning
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
124 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
125 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
126 def selection_end (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
127 @parent.selection.line_end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
128 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
129 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
130 def selection_up (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
131 @parent.selection.up
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
132 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
133 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
134 def selection_down (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
135 @parent.selection.down
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
136 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
137 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
138 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
139
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
140 class FundMode < PrimeModeCore
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
141 def initialize (parent)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
142 super
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
143 @label = '[ $B$"(B ]'
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
144 @trap = false
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
145 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
146
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
147 def initialize_keys
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
148 (33..126).each {|char|
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
149 @keymap.add(char, :insert)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
150 }
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
151 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
152
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
153 def on (prev_mode = nil)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
154 @parent.selection.close
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
155 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
156 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
157
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
158 class InputMode < PrimeModeCore
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
159 def initialize (parent)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
160 super
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
161 @label = "[$BF~NO(B]"
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
162 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
163
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
164 def initialize_keys
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
165 (33..126).each {|char|
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
166 @keymap.add(char, :insert)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
167 }
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
168 (?A..?Z).each {|char|
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
169 @keymap.add(char, :fix_and_insert)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
170 }
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
171 @keymap.add(:enter, :fix)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
172 @keymap.add([?m, :ctrl], :fix)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
173 @keymap.add(:space, :convert)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
174 @keymap.add(:backspace, :backspace)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
175 @keymap.add([?h, :ctrl], :backspace)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
176 @keymap.add(:delete, :delete)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
177 @keymap.add([?d, :ctrl], :delete)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
178 @keymap.add(:left, :cursor_left)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
179 @keymap.add([?b, :ctrl], :cursor_left)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
180 @keymap.add(:right, :cursor_right)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
181 @keymap.add([?f, :ctrl], :cursor_right)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
182 @keymap.add([?a, :ctrl], :cursor_beginning)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
183 @keymap.add([?e, :ctrl], :cursor_end)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
184 @keymap.add([?g, :ctrl], :cancel)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
185 @keymap.add(:esc, :cancel)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
186 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
187
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
188 def on (prev_mode = nil)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
189 @parent.selection.close
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
190 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
191
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
192 def entries
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
193 return @parent.input.segments
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
194 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
195
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
196 private
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
197 def fix_internal (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
198 @parent.fix(@parent.input.text)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
199 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
200
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
201 def backspace (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
202 @parent.input.backspace
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
203 if @parent.input.text.length == 0 then
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
204 @parent.mode.change(:fund)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
205 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
206 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
207 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
208
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
209 def delete (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
210 @parent.input.delete
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
211 if @parent.input.text.length == 0 then
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
212 @parent.mode.change(:fund)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
213 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
214 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
215 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
216
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
217 def cancel (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
218 @parent.input.reset
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
219 @parent.mode.change(:fund)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
220 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
221 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
222
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
223 def convert (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
224 if @parent.set_cand_list (@parent.convert(@parent.input.text)) then
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
225 @parent.set_cand_index(0)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
226 @parent.mode.change(:conv)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
227 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
228 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
229 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
230 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
231
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
232 class ConvMode < PrimeModeCore
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
233 def initialize (parent)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
234 super
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
235 @label = "[$BJQ49(B]"
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
236 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
237
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
238 def initialize_keys
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
239 (33..126).each {|char|
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
240 @keymap.add(char, :fix_and_insert)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
241 }
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
242 @keymap.add(:enter, :fix)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
243 @keymap.add([?m, :ctrl], :fix)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
244 @keymap.add(:space, :convert)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
245 # @keymap.add(:backspace, :backspace)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
246 # @keymap.add([?h, :ctrl], :backspace)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
247 # @keymap.add(:delete, :delete)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
248 # @keymap.add([?d, :ctrl], :delete)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
249 @keymap.add(:left, :selection_left)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
250 @keymap.add([?b, :ctrl], :selection_left)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
251 @keymap.add(:right, :selection_right)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
252 @keymap.add([?f, :ctrl], :selection_right)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
253 @keymap.add(:down, :selection_down)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
254 @keymap.add([?n, :ctrl], :selection_down)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
255 @keymap.add(:up, :selection_up)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
256 @keymap.add([?p, :ctrl], :selection_up)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
257 @keymap.add([?a, :ctrl], :selection_beginning)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
258 @keymap.add([?e, :ctrl], :selection_end)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
259 @keymap.add([?g, :ctrl], :cancel)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
260 @keymap.add(:esc, :cancel)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
261 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
262
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
263 def on (prev_mode = nil)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
264 @parent.selection.open
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
265 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
266
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
267 def entries
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
268 return ['', @parent.cand_list[@parent.cand_index]]
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
269 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
270
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
271 private
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
272 def fix_internal (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
273 @parent.fix(@parent.cand_list[@parent.cand_index])
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
274 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
275
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
276 def cancel (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
277 @parent.mode.change(:input)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
278 return true
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
279 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
280
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
281 def convert (keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
282 return selection_right(keysym, modifiers)
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
283 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
284 end
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
285
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
286 $kanjiConv = KanjiConv.new
598fcbe482b5 imported patch 19_kinput2-v3.1-ruby.patch
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
287 #p local_variables