kita 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +14 -0
- data/.rspec +3 -0
- data/.rubocop.yml +13 -0
- data/CHANGELOG.md +15 -0
- data/CODE_OF_CONDUCT.md +74 -0
- data/Gemfile +8 -0
- data/Gemfile.lock +120 -0
- data/README.md +1 -0
- data/Rakefile +8 -0
- data/bin/kita +11 -0
- data/kita.gemspec +35 -0
- data/lib/kita.rb +160 -0
- data/lib/kita/audio.rb +33 -0
- data/lib/kita/config.rb +8 -0
- data/lib/kita/hiragana.rb +59 -0
- data/lib/kita/katakana.rb +59 -0
- data/lib/kita/version.rb +5 -0
- data/snapcraft.yaml +18 -0
- data/sounds/he.ogg +0 -0
- data/sounds/he2.ogg +0 -0
- data/sounds/tofix.txt +2 -0
- data/sounds//343/201/202.ogg +0 -0
- data/sounds//343/201/2022.ogg +0 -0
- data/sounds//343/201/204.ogg +0 -0
- data/sounds//343/201/2042.ogg +0 -0
- data/sounds//343/201/206.ogg +0 -0
- data/sounds//343/201/2062.ogg +0 -0
- data/sounds//343/201/210.ogg +0 -0
- data/sounds//343/201/2102.ogg +0 -0
- data/sounds//343/201/212.ogg +0 -0
- data/sounds//343/201/2122.ogg +0 -0
- data/sounds//343/201/213.ogg +0 -0
- data/sounds//343/201/2132.ogg +0 -0
- data/sounds//343/201/214.ogg +0 -0
- data/sounds//343/201/2142.ogg +0 -0
- data/sounds//343/201/215.ogg +0 -0
- data/sounds//343/201/2152.ogg +0 -0
- data/sounds//343/201/216.ogg +0 -0
- data/sounds//343/201/2162.ogg +0 -0
- data/sounds//343/201/217.ogg +0 -0
- data/sounds//343/201/2172.ogg +0 -0
- data/sounds//343/201/220.ogg +0 -0
- data/sounds//343/201/2202.ogg +0 -0
- data/sounds//343/201/221.ogg +0 -0
- data/sounds//343/201/2212.ogg +0 -0
- data/sounds//343/201/222.ogg +0 -0
- data/sounds//343/201/2222.ogg +0 -0
- data/sounds//343/201/223.ogg +0 -0
- data/sounds//343/201/2232.ogg +0 -0
- data/sounds//343/201/223/343/202/214/343/201/257/345/214/227/343/201/247/343/201/231.ogg +0 -0
- data/sounds//343/201/224.ogg +0 -0
- data/sounds//343/201/2242.ogg +0 -0
- data/sounds//343/201/225.ogg +0 -0
- data/sounds//343/201/2252.ogg +0 -0
- data/sounds//343/201/226.ogg +0 -0
- data/sounds//343/201/2262.ogg +0 -0
- data/sounds//343/201/227.ogg +0 -0
- data/sounds//343/201/2272.ogg +0 -0
- data/sounds//343/201/230.ogg +0 -0
- data/sounds//343/201/2302.ogg +0 -0
- data/sounds//343/201/231.ogg +0 -0
- data/sounds//343/201/2312.ogg +0 -0
- data/sounds//343/201/232.ogg +0 -0
- data/sounds//343/201/2322.ogg +0 -0
- data/sounds//343/201/233.ogg +0 -0
- data/sounds//343/201/2332.ogg +0 -0
- data/sounds//343/201/234.ogg +0 -0
- data/sounds//343/201/2342.ogg +0 -0
- data/sounds//343/201/235.ogg +0 -0
- data/sounds//343/201/2352.ogg +0 -0
- data/sounds//343/201/236.ogg +0 -0
- data/sounds//343/201/2362.ogg +0 -0
- data/sounds//343/201/237.ogg +0 -0
- data/sounds//343/201/2372.ogg +0 -0
- data/sounds//343/201/240.ogg +0 -0
- data/sounds//343/201/2402.ogg +0 -0
- data/sounds//343/201/241.ogg +0 -0
- data/sounds//343/201/2412.ogg +0 -0
- data/sounds//343/201/242.ogg +0 -0
- data/sounds//343/201/2422.ogg +0 -0
- data/sounds//343/201/244.ogg +0 -0
- data/sounds//343/201/2442.ogg +0 -0
- data/sounds//343/201/245.ogg +0 -0
- data/sounds//343/201/2452.ogg +0 -0
- data/sounds//343/201/246.ogg +0 -0
- data/sounds//343/201/2462.ogg +0 -0
- data/sounds//343/201/247.ogg +0 -0
- data/sounds//343/201/2472.ogg +0 -0
- data/sounds//343/201/250.ogg +0 -0
- data/sounds//343/201/2502.ogg +0 -0
- data/sounds//343/201/251.ogg +0 -0
- data/sounds//343/201/2512.ogg +0 -0
- data/sounds//343/201/252.ogg +0 -0
- data/sounds//343/201/2522.ogg +0 -0
- data/sounds//343/201/253.ogg +0 -0
- data/sounds//343/201/2532.ogg +0 -0
- data/sounds//343/201/254.ogg +0 -0
- data/sounds//343/201/2542.ogg +0 -0
- data/sounds//343/201/255.ogg +0 -0
- data/sounds//343/201/2552.ogg +0 -0
- data/sounds//343/201/256.ogg +0 -0
- data/sounds//343/201/2562.ogg +0 -0
- data/sounds//343/201/257.ogg +0 -0
- data/sounds//343/201/2572.ogg +0 -0
- data/sounds//343/201/260.ogg +0 -0
- data/sounds//343/201/2602.ogg +0 -0
- data/sounds//343/201/261.ogg +0 -0
- data/sounds//343/201/2612.ogg +0 -0
- data/sounds//343/201/262.ogg +0 -0
- data/sounds//343/201/2622.ogg +0 -0
- data/sounds//343/201/263.ogg +0 -0
- data/sounds//343/201/2632.ogg +0 -0
- data/sounds//343/201/264.ogg +0 -0
- data/sounds//343/201/2642.ogg +0 -0
- data/sounds//343/201/265.ogg +0 -0
- data/sounds//343/201/2652.ogg +0 -0
- data/sounds//343/201/266.ogg +0 -0
- data/sounds//343/201/2662.ogg +0 -0
- data/sounds//343/201/267.ogg +0 -0
- data/sounds//343/201/2672.ogg +0 -0
- data/sounds//343/201/270.ogg +0 -0
- data/sounds//343/201/2702.ogg +0 -0
- data/sounds//343/201/271.ogg +0 -0
- data/sounds//343/201/2712.ogg +0 -0
- data/sounds//343/201/272.ogg +0 -0
- data/sounds//343/201/2722.ogg +0 -0
- data/sounds//343/201/273.ogg +0 -0
- data/sounds//343/201/2732.ogg +0 -0
- data/sounds//343/201/274.ogg +0 -0
- data/sounds//343/201/2742.ogg +0 -0
- data/sounds//343/201/275.ogg +0 -0
- data/sounds//343/201/2752.ogg +0 -0
- data/sounds//343/201/276.ogg +0 -0
- data/sounds//343/201/2762.ogg +0 -0
- data/sounds//343/201/277.ogg +0 -0
- data/sounds//343/201/2772.ogg +0 -0
- data/sounds//343/202/200.ogg +0 -0
- data/sounds//343/202/2002.ogg +0 -0
- data/sounds//343/202/201.ogg +0 -0
- data/sounds//343/202/2012.ogg +0 -0
- data/sounds//343/202/202.ogg +0 -0
- data/sounds//343/202/2022.ogg +0 -0
- data/sounds//343/202/204.ogg +0 -0
- data/sounds//343/202/2042.ogg +0 -0
- data/sounds//343/202/206.ogg +0 -0
- data/sounds//343/202/2062.ogg +0 -0
- data/sounds//343/202/210.ogg +0 -0
- data/sounds//343/202/2102.ogg +0 -0
- data/sounds//343/202/211.ogg +0 -0
- data/sounds//343/202/2112.ogg +0 -0
- data/sounds//343/202/212.ogg +0 -0
- data/sounds//343/202/2122.ogg +0 -0
- data/sounds//343/202/213.ogg +0 -0
- data/sounds//343/202/2132.ogg +0 -0
- data/sounds//343/202/214.ogg +0 -0
- data/sounds//343/202/2142.ogg +0 -0
- data/sounds//343/202/215.ogg +0 -0
- data/sounds//343/202/2152.ogg +0 -0
- data/sounds//343/202/217.ogg +0 -0
- data/sounds//343/202/2172.ogg +0 -0
- data/sounds//343/202/222.ogg +0 -0
- data/sounds//343/202/2222.ogg +0 -0
- data/sounds//343/202/223.ogg +0 -0
- data/sounds//343/202/2232.ogg +0 -0
- data/test-notify.rb +33 -0
- data/ui/builder.ui +384 -0
- data/ui/kita.svg +137 -0
- metadata +297 -0
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/test-notify.rb
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
|
3
|
+
require 'gir_ffi'
|
4
|
+
|
5
|
+
GirFFI.setup :Notify
|
6
|
+
|
7
|
+
# Both Gtk and Notify need to be init'ed.
|
8
|
+
Notify.init 'notification test'
|
9
|
+
|
10
|
+
# Basic set up of the notification.
|
11
|
+
nf = Notify::Notification.new 'Hello!', 'Hi there.', '/home/dan/logos.svg'
|
12
|
+
nf.timeout = 3000
|
13
|
+
nf.urgency = :critical
|
14
|
+
|
15
|
+
# Show a button 'Test' in the notification, with a callback function.
|
16
|
+
nf.add_action('test', 'Test') do |_obj, action, _user_data|
|
17
|
+
puts "Action #{action} clicked."
|
18
|
+
end
|
19
|
+
|
20
|
+
# Show a button 'Test' in the notification, with a callback function.
|
21
|
+
nf.add_action('snooze', 'Snooze') do |_obj, action, _user_data|
|
22
|
+
puts "Action #{action} clicked."
|
23
|
+
end
|
24
|
+
|
25
|
+
# In this case, we want the program to end once the notification is gone,
|
26
|
+
# but not before.
|
27
|
+
nf.signal_connect('closed') do
|
28
|
+
puts 'Notification closed.'
|
29
|
+
Gtk.main_quit
|
30
|
+
end
|
31
|
+
|
32
|
+
# Show the notification.
|
33
|
+
nf.show
|
data/ui/builder.ui
ADDED
@@ -0,0 +1,384 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<!-- Generated with glade 3.22.2
|
3
|
+
|
4
|
+
Copyright (C)
|
5
|
+
|
6
|
+
This file is part of Kita.
|
7
|
+
|
8
|
+
Kita is free software: you can redistribute it and/or modify
|
9
|
+
it under the terms of the GNU General Public License as published by
|
10
|
+
the Free Software Foundation, either version 3 of the License, or
|
11
|
+
(at your option) any later version.
|
12
|
+
|
13
|
+
Kita is distributed in the hope that it will be useful,
|
14
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
15
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
16
|
+
GNU General Public License for more details.
|
17
|
+
|
18
|
+
You should have received a copy of the GNU General Public License
|
19
|
+
along with Kita. If not, see <http://www.gnu.org/licenses/>.
|
20
|
+
|
21
|
+
Author: Dan Bishop <d@nbishop.uk>
|
22
|
+
|
23
|
+
-->
|
24
|
+
<interface>
|
25
|
+
<requires lib="gtk+" version="3.20"/>
|
26
|
+
<!-- interface-license-type gplv3 -->
|
27
|
+
<!-- interface-name Kita -->
|
28
|
+
<!-- interface-authors Dan Bishop <d@nbishop.uk> -->
|
29
|
+
<object class="GtkAboutDialog" id="about_box">
|
30
|
+
<property name="can_focus">False</property>
|
31
|
+
<property name="type_hint">dialog</property>
|
32
|
+
<property name="program_name">Kita</property>
|
33
|
+
<property name="version">0.5</property>
|
34
|
+
<property name="copyright" translatable="yes">© 2020 Dan Bishop</property>
|
35
|
+
<property name="comments" translatable="yes">A simple tool to help Japanese language learners.</property>
|
36
|
+
<property name="website">danbishop.uk</property>
|
37
|
+
<property name="website_label" translatable="yes">danbishop.org</property>
|
38
|
+
<property name="authors">Dan Bishop <d@nbishop.uk></property>
|
39
|
+
<property name="artists">Dan Bishop <d@nbishop.uk></property>
|
40
|
+
<property name="logo">kita.svg</property>
|
41
|
+
<property name="license_type">gpl-3-0</property>
|
42
|
+
<child type="titlebar">
|
43
|
+
<placeholder/>
|
44
|
+
</child>
|
45
|
+
<child internal-child="vbox">
|
46
|
+
<object class="GtkBox">
|
47
|
+
<property name="can_focus">False</property>
|
48
|
+
<property name="orientation">vertical</property>
|
49
|
+
<property name="spacing">2</property>
|
50
|
+
<child internal-child="action_area">
|
51
|
+
<object class="GtkButtonBox">
|
52
|
+
<property name="can_focus">False</property>
|
53
|
+
<property name="layout_style">end</property>
|
54
|
+
<child>
|
55
|
+
<placeholder/>
|
56
|
+
</child>
|
57
|
+
</object>
|
58
|
+
<packing>
|
59
|
+
<property name="expand">False</property>
|
60
|
+
<property name="fill">False</property>
|
61
|
+
<property name="position">0</property>
|
62
|
+
</packing>
|
63
|
+
</child>
|
64
|
+
</object>
|
65
|
+
</child>
|
66
|
+
</object>
|
67
|
+
<object class="GtkPopoverMenu" id="primary_menu">
|
68
|
+
<property name="can_focus">False</property>
|
69
|
+
<child>
|
70
|
+
<object class="GtkBox">
|
71
|
+
<property name="visible">True</property>
|
72
|
+
<property name="can_focus">False</property>
|
73
|
+
<property name="orientation">vertical</property>
|
74
|
+
<child>
|
75
|
+
<object class="GtkBox">
|
76
|
+
<property name="visible">True</property>
|
77
|
+
<property name="can_focus">False</property>
|
78
|
+
<child>
|
79
|
+
<object class="GtkLabel">
|
80
|
+
<property name="visible">True</property>
|
81
|
+
<property name="can_focus">False</property>
|
82
|
+
<property name="margin_left">5</property>
|
83
|
+
<property name="margin_right">5</property>
|
84
|
+
<property name="margin_top">5</property>
|
85
|
+
<property name="margin_bottom">5</property>
|
86
|
+
<property name="label" translatable="yes">Hiragana</property>
|
87
|
+
</object>
|
88
|
+
<packing>
|
89
|
+
<property name="expand">False</property>
|
90
|
+
<property name="fill">True</property>
|
91
|
+
<property name="position">0</property>
|
92
|
+
</packing>
|
93
|
+
</child>
|
94
|
+
<child>
|
95
|
+
<object class="GtkSwitch" id="hiragana_switch">
|
96
|
+
<property name="visible">True</property>
|
97
|
+
<property name="can_focus">False</property>
|
98
|
+
<property name="margin_left">10</property>
|
99
|
+
<property name="margin_top">5</property>
|
100
|
+
<property name="margin_bottom">5</property>
|
101
|
+
<property name="active">True</property>
|
102
|
+
</object>
|
103
|
+
<packing>
|
104
|
+
<property name="expand">False</property>
|
105
|
+
<property name="fill">True</property>
|
106
|
+
<property name="padding">5</property>
|
107
|
+
<property name="pack_type">end</property>
|
108
|
+
<property name="position">1</property>
|
109
|
+
</packing>
|
110
|
+
</child>
|
111
|
+
</object>
|
112
|
+
<packing>
|
113
|
+
<property name="expand">False</property>
|
114
|
+
<property name="fill">True</property>
|
115
|
+
<property name="position">0</property>
|
116
|
+
</packing>
|
117
|
+
</child>
|
118
|
+
<child>
|
119
|
+
<object class="GtkBox">
|
120
|
+
<property name="visible">True</property>
|
121
|
+
<property name="can_focus">False</property>
|
122
|
+
<child>
|
123
|
+
<object class="GtkLabel">
|
124
|
+
<property name="visible">True</property>
|
125
|
+
<property name="can_focus">False</property>
|
126
|
+
<property name="margin_left">5</property>
|
127
|
+
<property name="margin_right">5</property>
|
128
|
+
<property name="margin_top">5</property>
|
129
|
+
<property name="margin_bottom">5</property>
|
130
|
+
<property name="label" translatable="yes">Katakana</property>
|
131
|
+
</object>
|
132
|
+
<packing>
|
133
|
+
<property name="expand">False</property>
|
134
|
+
<property name="fill">True</property>
|
135
|
+
<property name="position">0</property>
|
136
|
+
</packing>
|
137
|
+
</child>
|
138
|
+
<child>
|
139
|
+
<object class="GtkSwitch" id="katakana_switch">
|
140
|
+
<property name="visible">True</property>
|
141
|
+
<property name="can_focus">False</property>
|
142
|
+
<property name="margin_left">10</property>
|
143
|
+
<property name="margin_top">5</property>
|
144
|
+
<property name="margin_bottom">5</property>
|
145
|
+
</object>
|
146
|
+
<packing>
|
147
|
+
<property name="expand">False</property>
|
148
|
+
<property name="fill">True</property>
|
149
|
+
<property name="padding">5</property>
|
150
|
+
<property name="pack_type">end</property>
|
151
|
+
<property name="position">1</property>
|
152
|
+
</packing>
|
153
|
+
</child>
|
154
|
+
</object>
|
155
|
+
<packing>
|
156
|
+
<property name="expand">False</property>
|
157
|
+
<property name="fill">True</property>
|
158
|
+
<property name="position">1</property>
|
159
|
+
</packing>
|
160
|
+
</child>
|
161
|
+
<child>
|
162
|
+
<object class="GtkBox">
|
163
|
+
<property name="visible">True</property>
|
164
|
+
<property name="can_focus">False</property>
|
165
|
+
<child>
|
166
|
+
<object class="GtkLabel">
|
167
|
+
<property name="visible">True</property>
|
168
|
+
<property name="can_focus">False</property>
|
169
|
+
<property name="margin_left">5</property>
|
170
|
+
<property name="margin_right">5</property>
|
171
|
+
<property name="margin_top">5</property>
|
172
|
+
<property name="margin_bottom">5</property>
|
173
|
+
<property name="label" translatable="yes">Sound</property>
|
174
|
+
</object>
|
175
|
+
<packing>
|
176
|
+
<property name="expand">False</property>
|
177
|
+
<property name="fill">True</property>
|
178
|
+
<property name="position">0</property>
|
179
|
+
</packing>
|
180
|
+
</child>
|
181
|
+
<child>
|
182
|
+
<object class="GtkSwitch" id="sound_switch">
|
183
|
+
<property name="visible">True</property>
|
184
|
+
<property name="can_focus">False</property>
|
185
|
+
<property name="margin_left">10</property>
|
186
|
+
<property name="margin_top">5</property>
|
187
|
+
<property name="margin_bottom">5</property>
|
188
|
+
<property name="active">True</property>
|
189
|
+
</object>
|
190
|
+
<packing>
|
191
|
+
<property name="expand">False</property>
|
192
|
+
<property name="fill">True</property>
|
193
|
+
<property name="padding">5</property>
|
194
|
+
<property name="pack_type">end</property>
|
195
|
+
<property name="position">1</property>
|
196
|
+
</packing>
|
197
|
+
</child>
|
198
|
+
</object>
|
199
|
+
<packing>
|
200
|
+
<property name="expand">False</property>
|
201
|
+
<property name="fill">True</property>
|
202
|
+
<property name="position">2</property>
|
203
|
+
</packing>
|
204
|
+
</child>
|
205
|
+
<child>
|
206
|
+
<object class="GtkModelButton" id="menu_about">
|
207
|
+
<property name="visible">True</property>
|
208
|
+
<property name="can_focus">True</property>
|
209
|
+
<property name="receives_default">True</property>
|
210
|
+
<property name="margin_top">5</property>
|
211
|
+
<property name="margin_bottom">5</property>
|
212
|
+
<property name="text" translatable="yes">About Kita</property>
|
213
|
+
</object>
|
214
|
+
<packing>
|
215
|
+
<property name="expand">False</property>
|
216
|
+
<property name="fill">True</property>
|
217
|
+
<property name="position">3</property>
|
218
|
+
</packing>
|
219
|
+
</child>
|
220
|
+
</object>
|
221
|
+
<packing>
|
222
|
+
<property name="submenu">main</property>
|
223
|
+
<property name="position">1</property>
|
224
|
+
</packing>
|
225
|
+
</child>
|
226
|
+
</object>
|
227
|
+
<object class="GtkWindow" id="window">
|
228
|
+
<property name="can_focus">False</property>
|
229
|
+
<property name="modal">True</property>
|
230
|
+
<property name="window_position">center</property>
|
231
|
+
<property name="icon">kita.svg</property>
|
232
|
+
<property name="urgency_hint">True</property>
|
233
|
+
<property name="gravity">center</property>
|
234
|
+
<child type="titlebar">
|
235
|
+
<object class="GtkHeaderBar">
|
236
|
+
<property name="visible">True</property>
|
237
|
+
<property name="can_focus">False</property>
|
238
|
+
<property name="spacing">7</property>
|
239
|
+
<property name="show_close_button">True</property>
|
240
|
+
<property name="decoration_layout">menu:minimize,maximize,close</property>
|
241
|
+
<child>
|
242
|
+
<object class="GtkButton" id="new_question">
|
243
|
+
<property name="label" translatable="yes">New</property>
|
244
|
+
<property name="visible">True</property>
|
245
|
+
<property name="can_focus">True</property>
|
246
|
+
<property name="receives_default">True</property>
|
247
|
+
<property name="always_show_image">True</property>
|
248
|
+
</object>
|
249
|
+
</child>
|
250
|
+
<child>
|
251
|
+
<object class="GtkButton" id="speak">
|
252
|
+
<property name="visible">True</property>
|
253
|
+
<property name="can_focus">True</property>
|
254
|
+
<property name="receives_default">True</property>
|
255
|
+
<child>
|
256
|
+
<object class="GtkImage">
|
257
|
+
<property name="visible">True</property>
|
258
|
+
<property name="can_focus">False</property>
|
259
|
+
<property name="icon_name">audio-volume-high</property>
|
260
|
+
</object>
|
261
|
+
</child>
|
262
|
+
</object>
|
263
|
+
<packing>
|
264
|
+
<property name="position">2</property>
|
265
|
+
</packing>
|
266
|
+
</child>
|
267
|
+
<child>
|
268
|
+
<object class="GtkMenuButton" id="menu_button">
|
269
|
+
<property name="visible">True</property>
|
270
|
+
<property name="can_focus">False</property>
|
271
|
+
<property name="receives_default">False</property>
|
272
|
+
<property name="popover">primary_menu</property>
|
273
|
+
<child>
|
274
|
+
<object class="GtkImage">
|
275
|
+
<property name="visible">True</property>
|
276
|
+
<property name="can_focus">False</property>
|
277
|
+
<property name="icon_name">open-menu-symbolic</property>
|
278
|
+
<property name="icon_size">1</property>
|
279
|
+
</object>
|
280
|
+
</child>
|
281
|
+
</object>
|
282
|
+
<packing>
|
283
|
+
<property name="pack_type">end</property>
|
284
|
+
<property name="position">1</property>
|
285
|
+
</packing>
|
286
|
+
</child>
|
287
|
+
</object>
|
288
|
+
</child>
|
289
|
+
<child>
|
290
|
+
<object class="GtkBox">
|
291
|
+
<property name="visible">True</property>
|
292
|
+
<property name="can_focus">False</property>
|
293
|
+
<property name="orientation">vertical</property>
|
294
|
+
<child>
|
295
|
+
<object class="GtkLabel" id="question">
|
296
|
+
<property name="visible">True</property>
|
297
|
+
<property name="can_focus">False</property>
|
298
|
+
<property name="track_visited_links">False</property>
|
299
|
+
<attributes>
|
300
|
+
<attribute name="weight" value="bold"/>
|
301
|
+
<attribute name="scale" value="2"/>
|
302
|
+
</attributes>
|
303
|
+
</object>
|
304
|
+
<packing>
|
305
|
+
<property name="expand">True</property>
|
306
|
+
<property name="fill">True</property>
|
307
|
+
<property name="position">0</property>
|
308
|
+
</packing>
|
309
|
+
</child>
|
310
|
+
<child>
|
311
|
+
<object class="GtkActionBar">
|
312
|
+
<property name="visible">True</property>
|
313
|
+
<property name="can_focus">False</property>
|
314
|
+
<child>
|
315
|
+
<object class="GtkButton" id="answer_a">
|
316
|
+
<property name="label">a</property>
|
317
|
+
<property name="visible">True</property>
|
318
|
+
<property name="can_focus">False</property>
|
319
|
+
<property name="receives_default">True</property>
|
320
|
+
<property name="hexpand">True</property>
|
321
|
+
<accelerator key="a" signal="clicked"/>
|
322
|
+
<accelerator key="KP_1" signal="clicked"/>
|
323
|
+
<accelerator key="1" signal="clicked"/>
|
324
|
+
</object>
|
325
|
+
<packing>
|
326
|
+
<property name="position">0</property>
|
327
|
+
</packing>
|
328
|
+
</child>
|
329
|
+
<child>
|
330
|
+
<object class="GtkButton" id="answer_b">
|
331
|
+
<property name="label">b</property>
|
332
|
+
<property name="visible">True</property>
|
333
|
+
<property name="can_focus">False</property>
|
334
|
+
<property name="receives_default">True</property>
|
335
|
+
<property name="hexpand">True</property>
|
336
|
+
<accelerator key="s" signal="clicked"/>
|
337
|
+
<accelerator key="KP_2" signal="clicked"/>
|
338
|
+
<accelerator key="2" signal="clicked"/>
|
339
|
+
</object>
|
340
|
+
<packing>
|
341
|
+
<property name="position">0</property>
|
342
|
+
</packing>
|
343
|
+
</child>
|
344
|
+
<child>
|
345
|
+
<object class="GtkButton" id="answer_c">
|
346
|
+
<property name="label">c</property>
|
347
|
+
<property name="visible">True</property>
|
348
|
+
<property name="can_focus">False</property>
|
349
|
+
<property name="receives_default">True</property>
|
350
|
+
<property name="hexpand">True</property>
|
351
|
+
<accelerator key="d" signal="clicked"/>
|
352
|
+
<accelerator key="KP_3" signal="clicked"/>
|
353
|
+
<accelerator key="3" signal="clicked"/>
|
354
|
+
</object>
|
355
|
+
<packing>
|
356
|
+
<property name="position">0</property>
|
357
|
+
</packing>
|
358
|
+
</child>
|
359
|
+
<child>
|
360
|
+
<object class="GtkButton" id="answer_d">
|
361
|
+
<property name="label">d</property>
|
362
|
+
<property name="visible">True</property>
|
363
|
+
<property name="can_focus">False</property>
|
364
|
+
<property name="receives_default">True</property>
|
365
|
+
<property name="hexpand">True</property>
|
366
|
+
<accelerator key="f" signal="clicked"/>
|
367
|
+
<accelerator key="KP_4" signal="clicked"/>
|
368
|
+
<accelerator key="4" signal="clicked"/>
|
369
|
+
</object>
|
370
|
+
<packing>
|
371
|
+
<property name="position">0</property>
|
372
|
+
</packing>
|
373
|
+
</child>
|
374
|
+
</object>
|
375
|
+
<packing>
|
376
|
+
<property name="expand">False</property>
|
377
|
+
<property name="fill">True</property>
|
378
|
+
<property name="position">1</property>
|
379
|
+
</packing>
|
380
|
+
</child>
|
381
|
+
</object>
|
382
|
+
</child>
|
383
|
+
</object>
|
384
|
+
</interface>
|