• R/O
  • HTTP
  • SSH
  • HTTPS

コミット

タグ

よく使われているワード(クリックで追加)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

テキストの各行をキーと値に分離し、複数テキストファイルを読み込み、キーを突き合わせ照合し、その結果を表示するGUIユーテリティです。


コミットメタ情報

リビジョン3be36020d0911cab5aa5568bf1ad6c72e2d35fab (tree)
日時2011-10-18 01:52:53
作者seraphy <seraphy@192....>
コミッターseraphy

ログメッセージ

・ Mac用リソース
・ MacでのAboutメニューハンドラ対応

変更サマリ

差分

--- a/src/textkeymatcher/TextKeyMatcherApp.java
+++ b/src/textkeymatcher/TextKeyMatcherApp.java
@@ -6,6 +6,7 @@ package textkeymatcher;
66
77 import textkeymatcher.ui.TextKeyMatcherView;
88 import java.awt.Font;
9+import java.util.Locale;
910 import java.util.logging.Level;
1011 import java.util.logging.Logger;
1112 import javax.swing.UIDefaults;
@@ -52,7 +53,9 @@ public class TextKeyMatcherApp extends SingleFrameApplication {
5253 }
5354
5455 // メインウィンドウの構築と表示
55- show(new TextKeyMatcherView(this));
56+ TextKeyMatcherView view = new TextKeyMatcherView(this);
57+
58+ show(view);
5659 }
5760
5861 /**
@@ -83,11 +86,9 @@ public class TextKeyMatcherApp extends SingleFrameApplication {
8386 * @throws Exception いろいろな失敗
8487 */
8588 private static void setupUIManager() throws Exception {
89+ // スクリーンメニューを有効化
8690 System.setProperty("apple.laf.useScreenMenuBar", "true");
8791
88- // 実行プラットフォームのネイティブな外観にする.
89- UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
90-
9192 // JSpliderのvalueを非表示 (GTKではデフォルトで有効のため)
9293 UIManager.put("Slider.paintValue", Boolean.FALSE);
9394
@@ -107,6 +108,17 @@ public class TextKeyMatcherApp extends SingleFrameApplication {
107108 * Main method launching the application.
108109 */
109110 public static void main(String[] args) {
111+ // 日本語ニーモニック除去対応のため、Macの場合はロケールにバリアントをつける.
112+ Locale locale = Locale.getDefault();
113+ String lang = locale.getLanguage();
114+ if ("ja".equals(lang)) {
115+ if (System.getProperty("os.name").toLowerCase().indexOf("mac os x") >= 0) {
116+ String country = locale.getCountry();
117+ Locale macLocaleJA = new Locale(lang, country, "mac");
118+ Locale.setDefault(macLocaleJA);
119+ }
120+ }
121+ // 起動する.
110122 launch(TextKeyMatcherApp.class, args);
111123 }
112124 }
--- a/src/textkeymatcher/ui/TextKeyMatcherView.form
+++ b/src/textkeymatcher/ui/TextKeyMatcherView.form
@@ -15,7 +15,7 @@
1515 </DimensionLayout>
1616 <DimensionLayout dim="1">
1717 <Group type="103" groupAlignment="0" attributes="0">
18- <Component id="dataViewTableSP" alignment="0" pref="388" max="32767" attributes="0"/>
18+ <Component id="dataViewTableSP" alignment="0" pref="380" max="32767" attributes="0"/>
1919 </Group>
2020 </DimensionLayout>
2121 </Layout>
@@ -133,14 +133,16 @@
133133 </MenuItem>
134134 <MenuItem class="javax.swing.JMenuItem" name="removeMenuItem">
135135 <Properties>
136- <Property name="name" type="java.lang.String" value="removeMenuItem" noResource="true"/>
136+ <Property name="mnemonic" type="int" value="82"/>
137137 <Property name="text" type="java.lang.String" resourceKey="removeMenuItem.text"/>
138+ <Property name="name" type="java.lang.String" value="removeMenuItem" noResource="true"/>
138139 </Properties>
139140 </MenuItem>
140141 <MenuItem class="javax.swing.JMenuItem" name="mergeMenuItem">
141142 <Properties>
142- <Property name="name" type="java.lang.String" value="mergeMenuItem" noResource="true"/>
143+ <Property name="mnemonic" type="int" value="77"/>
143144 <Property name="text" type="java.lang.String" resourceKey="mergeMenuItem.text"/>
145+ <Property name="name" type="java.lang.String" value="mergeMenuItem" noResource="true"/>
144146 </Properties>
145147 </MenuItem>
146148 </SubComponents>
@@ -157,6 +159,7 @@
157159 <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
158160 <ComponentRef name="keyButtonGroup"/>
159161 </Property>
162+ <Property name="mnemonic" type="int" value="84"/>
160163 <Property name="text" type="java.lang.String" resourceKey="textNormalRadioButtonMenuItem.text"/>
161164 <Property name="name" type="java.lang.String" value="textNormalRadioButtonMenuItem" noResource="true"/>
162165 </Properties>
@@ -169,6 +172,7 @@
169172 <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
170173 <ComponentRef name="keyButtonGroup"/>
171174 </Property>
175+ <Property name="mnemonic" type="int" value="73"/>
172176 <Property name="text" type="java.lang.String" resourceKey="textIgnoreCaseRadioButtonMenuItem.text"/>
173177 <Property name="name" type="java.lang.String" value="textIgnoreCaseRadioButtonMenuItem" noResource="true"/>
174178 </Properties>
@@ -181,6 +185,7 @@
181185 <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
182186 <ComponentRef name="keyButtonGroup"/>
183187 </Property>
188+ <Property name="mnemonic" type="int" value="78"/>
184189 <Property name="text" type="java.lang.String" resourceKey="numberRadioButtonMenuItem.text"/>
185190 <Property name="name" type="java.lang.String" value="numberRadioButtonMenuItem" noResource="true"/>
186191 </Properties>
@@ -202,6 +207,7 @@
202207 <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
203208 <ComponentRef name="viewButtonGroup"/>
204209 </Property>
210+ <Property name="mnemonic" type="int" value="65"/>
205211 <Property name="selected" type="boolean" value="true"/>
206212 <Property name="text" type="java.lang.String" resourceKey="allRadioButtonMenuItem.text"/>
207213 <Property name="name" type="java.lang.String" value="allRadioButtonMenuItem" noResource="true"/>
@@ -212,6 +218,7 @@
212218 <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
213219 <ComponentRef name="viewButtonGroup"/>
214220 </Property>
221+ <Property name="mnemonic" type="int" value="77"/>
215222 <Property name="text" type="java.lang.String" resourceKey="matchedRadioButtonMenuItem.text"/>
216223 <Property name="name" type="java.lang.String" value="matchedRadioButtonMenuItem" noResource="true"/>
217224 </Properties>
@@ -221,6 +228,7 @@
221228 <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
222229 <ComponentRef name="viewButtonGroup"/>
223230 </Property>
231+ <Property name="mnemonic" type="int" value="78"/>
224232 <Property name="text" type="java.lang.String" resourceKey="unmatchedRadioButtonMenuItem.text"/>
225233 <Property name="name" type="java.lang.String" value="unmatchedRadioButtonMenuItem" noResource="true"/>
226234 </Properties>
@@ -230,6 +238,7 @@
230238 <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
231239 <ComponentRef name="viewButtonGroup"/>
232240 </Property>
241+ <Property name="mnemonic" type="int" value="49"/>
233242 <Property name="text" type="java.lang.String" resourceKey="existsLeftRadioButtonMenuItem.text"/>
234243 <Property name="name" type="java.lang.String" value="existsLeftRadioButtonMenuItem" noResource="true"/>
235244 </Properties>
@@ -239,6 +248,7 @@
239248 <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
240249 <ComponentRef name="viewButtonGroup"/>
241250 </Property>
251+ <Property name="mnemonic" type="int" value="50"/>
242252 <Property name="text" type="java.lang.String" resourceKey="missingLeftRadioButtonMenuItem.text"/>
243253 <Property name="name" type="java.lang.String" value="missingLeftRadioButtonMenuItem" noResource="true"/>
244254 </Properties>
@@ -251,16 +261,13 @@
251261 <Property name="text" type="java.lang.String" resourceKey="helpMenu.text"/>
252262 <Property name="name" type="java.lang.String" value="helpMenu" noResource="true"/>
253263 </Properties>
254- <AuxValues>
255- <AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
256- <AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
257- </AuxValues>
258264 <SubComponents>
259265 <MenuItem class="javax.swing.JMenuItem" name="aboutMenuItem">
260266 <Properties>
261267 <Property name="action" type="javax.swing.Action" editor="org.netbeans.modules.swingapp.ActionEditor">
262268 <action class="textkeymatcher.TextKeyMatcherView" id="showAboutBox" methodName="showAboutBox"/>
263269 </Property>
270+ <Property name="text" type="java.lang.String" resourceKey="aboutMenuItem.text"/>
264271 <Property name="name" type="java.lang.String" value="aboutMenuItem" noResource="true"/>
265272 </Properties>
266273 <AuxValues>
@@ -290,7 +297,7 @@
290297 <Group type="103" groupAlignment="0" attributes="0">
291298 <Group type="102" attributes="0">
292299 <Component id="statusMessageLabel" min="-2" max="-2" attributes="0"/>
293- <EmptySpace pref="268" max="32767" attributes="0"/>
300+ <EmptySpace pref="260" max="32767" attributes="0"/>
294301 <Component id="statusAnimationLabel" min="-2" max="-2" attributes="0"/>
295302 <EmptySpace min="-2" pref="151" max="-2" attributes="0"/>
296303 </Group>
--- a/src/textkeymatcher/ui/TextKeyMatcherView.java
+++ b/src/textkeymatcher/ui/TextKeyMatcherView.java
@@ -4,6 +4,8 @@
44
55 package textkeymatcher.ui;
66
7+import com.apple.eawt.AboutHandler;
8+import com.apple.eawt.AppEvent.AboutEvent;
79 import org.apache.commons.lang3.StringUtils;
810 import org.jdesktop.application.Task;
911 import org.jdesktop.application.Action;
@@ -113,6 +115,9 @@ public class TextKeyMatcherView extends FrameView {
113115 });
114116 }
115117
118+ /**
119+ * IDEで管理されないGUI要素の初期化
120+ */
116121 private void afterInitComponents() {
117122 // 終了アクション
118123 javax.swing.ActionMap actionMap = org.jdesktop.application.Application
@@ -120,14 +125,27 @@ public class TextKeyMatcherView extends FrameView {
120125 .getContext().getActionMap(TextKeyMatcherView.class, this);
121126
122127 javax.swing.Action actQuit = actionMap.get("quit"); // NOI18N
123-
124- // ウィンドウを閉じるキー(CMD-W)
128+
129+ // Macの場合
125130 if (System.getProperty("os.name").toLowerCase().indexOf("mac os x") >= 0) {
131+ // ウィンドウを閉じるキー(CMD-W)
126132 JRootPane root = getRootPane();
127133 InputMap im = root.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW);
128134 im.put(KeyStroke.getKeyStroke(KeyEvent.VK_W, InputEvent.META_DOWN_MASK), actQuit);
129135
130136 root.getActionMap().put(actQuit, actQuit);
137+
138+ // ヘルプメニュー無効化
139+ helpMenu.setVisible(false);
140+
141+ // アプリケーションハンドラ接続
142+ com.apple.eawt.Application app = com.apple.eawt.Application.getApplication();
143+ app.setAboutHandler(new AboutHandler() {
144+ @Override
145+ public void handleAbout(AboutEvent ae) {
146+ showAboutBox();
147+ }
148+ });
131149 }
132150 }
133151
@@ -176,7 +194,7 @@ public class TextKeyMatcherView extends FrameView {
176194 unmatchedRadioButtonMenuItem = new javax.swing.JRadioButtonMenuItem();
177195 existsLeftRadioButtonMenuItem = new javax.swing.JRadioButtonMenuItem();
178196 missingLeftRadioButtonMenuItem = new javax.swing.JRadioButtonMenuItem();
179- javax.swing.JMenu helpMenu = new javax.swing.JMenu();
197+ helpMenu = new javax.swing.JMenu();
180198 javax.swing.JMenuItem aboutMenuItem = new javax.swing.JMenuItem();
181199 statusPanel = new javax.swing.JPanel();
182200 statusMessageLabel = new javax.swing.JLabel();
@@ -206,7 +224,7 @@ public class TextKeyMatcherView extends FrameView {
206224 );
207225 mainPanelLayout.setVerticalGroup(
208226 mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
209- .addComponent(dataViewTableSP, javax.swing.GroupLayout.DEFAULT_SIZE, 388, Short.MAX_VALUE)
227+ .addComponent(dataViewTableSP, javax.swing.GroupLayout.DEFAULT_SIZE, 380, Short.MAX_VALUE)
210228 );
211229
212230 menuBar.setName("menuBar"); // NOI18N
@@ -252,12 +270,14 @@ public class TextKeyMatcherView extends FrameView {
252270 jSeparator2.setName("jSeparator2"); // NOI18N
253271 dataMenu.add(jSeparator2);
254272
255- removeMenuItem.setName("removeMenuItem"); // NOI18N
273+ removeMenuItem.setMnemonic('R');
256274 removeMenuItem.setText(resourceMap.getString("removeMenuItem.text")); // NOI18N
275+ removeMenuItem.setName("removeMenuItem"); // NOI18N
257276 dataMenu.add(removeMenuItem);
258277
259- mergeMenuItem.setName("mergeMenuItem"); // NOI18N
278+ mergeMenuItem.setMnemonic('M');
260279 mergeMenuItem.setText(resourceMap.getString("mergeMenuItem.text")); // NOI18N
280+ mergeMenuItem.setName("mergeMenuItem"); // NOI18N
261281 dataMenu.add(mergeMenuItem);
262282
263283 menuBar.add(dataMenu);
@@ -267,6 +287,7 @@ public class TextKeyMatcherView extends FrameView {
267287 keyMenu.setName("keyMenu"); // NOI18N
268288
269289 keyButtonGroup.add(textNormalRadioButtonMenuItem);
290+ textNormalRadioButtonMenuItem.setMnemonic('T');
270291 textNormalRadioButtonMenuItem.setText(resourceMap.getString("textNormalRadioButtonMenuItem.text")); // NOI18N
271292 textNormalRadioButtonMenuItem.setName("textNormalRadioButtonMenuItem"); // NOI18N
272293
@@ -276,6 +297,7 @@ public class TextKeyMatcherView extends FrameView {
276297 keyMenu.add(textNormalRadioButtonMenuItem);
277298
278299 keyButtonGroup.add(textIgnoreCaseRadioButtonMenuItem);
300+ textIgnoreCaseRadioButtonMenuItem.setMnemonic('I');
279301 textIgnoreCaseRadioButtonMenuItem.setText(resourceMap.getString("textIgnoreCaseRadioButtonMenuItem.text")); // NOI18N
280302 textIgnoreCaseRadioButtonMenuItem.setName("textIgnoreCaseRadioButtonMenuItem"); // NOI18N
281303
@@ -285,6 +307,7 @@ public class TextKeyMatcherView extends FrameView {
285307 keyMenu.add(textIgnoreCaseRadioButtonMenuItem);
286308
287309 keyButtonGroup.add(numberRadioButtonMenuItem);
310+ numberRadioButtonMenuItem.setMnemonic('N');
288311 numberRadioButtonMenuItem.setText(resourceMap.getString("numberRadioButtonMenuItem.text")); // NOI18N
289312 numberRadioButtonMenuItem.setName("numberRadioButtonMenuItem"); // NOI18N
290313
@@ -300,27 +323,32 @@ public class TextKeyMatcherView extends FrameView {
300323 viewMenu.setName("viewMenu"); // NOI18N
301324
302325 viewButtonGroup.add(allRadioButtonMenuItem);
326+ allRadioButtonMenuItem.setMnemonic('A');
303327 allRadioButtonMenuItem.setSelected(true);
304328 allRadioButtonMenuItem.setText(resourceMap.getString("allRadioButtonMenuItem.text")); // NOI18N
305329 allRadioButtonMenuItem.setName("allRadioButtonMenuItem"); // NOI18N
306330 viewMenu.add(allRadioButtonMenuItem);
307331
308332 viewButtonGroup.add(matchedRadioButtonMenuItem);
333+ matchedRadioButtonMenuItem.setMnemonic('M');
309334 matchedRadioButtonMenuItem.setText(resourceMap.getString("matchedRadioButtonMenuItem.text")); // NOI18N
310335 matchedRadioButtonMenuItem.setName("matchedRadioButtonMenuItem"); // NOI18N
311336 viewMenu.add(matchedRadioButtonMenuItem);
312337
313338 viewButtonGroup.add(unmatchedRadioButtonMenuItem);
339+ unmatchedRadioButtonMenuItem.setMnemonic('N');
314340 unmatchedRadioButtonMenuItem.setText(resourceMap.getString("unmatchedRadioButtonMenuItem.text")); // NOI18N
315341 unmatchedRadioButtonMenuItem.setName("unmatchedRadioButtonMenuItem"); // NOI18N
316342 viewMenu.add(unmatchedRadioButtonMenuItem);
317343
318344 viewButtonGroup.add(existsLeftRadioButtonMenuItem);
345+ existsLeftRadioButtonMenuItem.setMnemonic('1');
319346 existsLeftRadioButtonMenuItem.setText(resourceMap.getString("existsLeftRadioButtonMenuItem.text")); // NOI18N
320347 existsLeftRadioButtonMenuItem.setName("existsLeftRadioButtonMenuItem"); // NOI18N
321348 viewMenu.add(existsLeftRadioButtonMenuItem);
322349
323350 viewButtonGroup.add(missingLeftRadioButtonMenuItem);
351+ missingLeftRadioButtonMenuItem.setMnemonic('2');
324352 missingLeftRadioButtonMenuItem.setText(resourceMap.getString("missingLeftRadioButtonMenuItem.text")); // NOI18N
325353 missingLeftRadioButtonMenuItem.setName("missingLeftRadioButtonMenuItem"); // NOI18N
326354 viewMenu.add(missingLeftRadioButtonMenuItem);
@@ -332,6 +360,7 @@ public class TextKeyMatcherView extends FrameView {
332360 helpMenu.setName("helpMenu"); // NOI18N
333361
334362 aboutMenuItem.setAction(actionMap.get("showAboutBox")); // NOI18N
363+ aboutMenuItem.setText(resourceMap.getString("aboutMenuItem.text")); // NOI18N
335364 aboutMenuItem.setName("aboutMenuItem"); // NOI18N
336365 helpMenu.add(aboutMenuItem);
337366
@@ -356,7 +385,7 @@ public class TextKeyMatcherView extends FrameView {
356385 .addGroup(statusPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
357386 .addGroup(statusPanelLayout.createSequentialGroup()
358387 .addComponent(statusMessageLabel)
359- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 268, Short.MAX_VALUE)
388+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 260, Short.MAX_VALUE)
360389 .addComponent(statusAnimationLabel)
361390 .addGap(151, 151, 151))
362391 .addComponent(progressBar, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
@@ -629,6 +658,7 @@ public class TextKeyMatcherView extends FrameView {
629658 private javax.swing.JScrollPane dataViewTableSP;
630659 private javax.swing.JTable dateViewTable;
631660 private javax.swing.JRadioButtonMenuItem existsLeftRadioButtonMenuItem;
661+ private javax.swing.JMenu helpMenu;
632662 private javax.swing.JPopupMenu.Separator jSeparator1;
633663 private javax.swing.JPopupMenu.Separator jSeparator2;
634664 private javax.swing.ButtonGroup keyButtonGroup;
--- a/src/textkeymatcher/ui/resources/TextKeyMatcherView.properties
+++ b/src/textkeymatcher/ui/resources/TextKeyMatcherView.properties
@@ -65,3 +65,4 @@ confirm.discard.message=Are you sure you want to discard your changes?
6565 onNew.Action.accelerator=shortcut N
6666 onLoad.Action.accelerator=shortcut O
6767 onSave.Action.accelerator=shortcut S
68+aboutMenuItem.text=\u30d0\u30fc\u30b8\u30e7\u30f3\u60c5\u5831...(A)
--- a/src/textkeymatcher/ui/resources/TextKeyMatcherView_ja_JP.properties
+++ b/src/textkeymatcher/ui/resources/TextKeyMatcherView_ja_JP.properties
@@ -1,30 +1,30 @@
11
2-fileMenu.text=\u30d5\u30a1\u30a4\u30eb
3-dataMenu.text=\u30c7\u30fc\u30bf
4-keyMenu.text=\u30ad\u30fc
5-viewMenu.text=\u8868\u793a
6-helpMenu.text=\u30d8\u30eb\u30d7
7-newMenuItem.text=\u65b0\u898f
8-openMenuItem.text=\u958b\u304f
9-saveMenuItem.text=\u4fdd\u5b58
10-loadDataMenuItem.text=\u30c7\u30fc\u30bf\u306e\u53d6\u8fbc\u307f
11-removeMenuItem.text=\u524a\u9664
12-mergeMenuItem.text=\u7d50\u5408
13-textNormalRadioButtonMenuItem.text=\u6587\u5b57\u5217
14-textIgnoreCaseRadioButtonMenuItem.text=\u6587\u5b57\u5217(\u5927\u6587\u5b57\u30fb\u5c0f\u6587\u5b57\u3092\u7121\u8996)
15-numberRadioButtonMenuItem.text=\u6570\u5024
16-allRadioButtonMenuItem.text=\u3059\u3079\u3066
17-matchedRadioButtonMenuItem.text=\u4e00\u81f4\u306e\u307f
18-unmatchedRadioButtonMenuItem.text=\u4e0d\u4e00\u81f4\u306e\u307f
19-existsLeftRadioButtonMenuItem.text=\u5de6\u7aef\u30ab\u30e9\u30e0\u304c\u7a7a\u6b04\u4ee5\u5916
20-missingLeftRadioButtonMenuItem.text=\u5de6\u7aef\u30ab\u30e9\u30e0\u304c\u7a7a\u6b04
2+fileMenu.text=\u30d5\u30a1\u30a4\u30eb(F)
3+dataMenu.text=\u30c7\u30fc\u30bf(D)
4+keyMenu.text=\u30ad\u30fc(K)
5+viewMenu.text=\u8868\u793a(V)
6+helpMenu.text=\u30d8\u30eb\u30d7(H)
7+newMenuItem.text=\u65b0\u898f(N)
8+openMenuItem.text=\u958b\u304f(O)
9+saveMenuItem.text=\u4fdd\u5b58(S)
10+loadDataMenuItem.text=\u30c7\u30fc\u30bf\u306e\u53d6\u8fbc\u307f(I)
11+removeMenuItem.text=\u524a\u9664(R)
12+mergeMenuItem.text=\u7d50\u5408(M)
13+textNormalRadioButtonMenuItem.text=\u6587\u5b57\u5217(T)
14+textIgnoreCaseRadioButtonMenuItem.text=\u6587\u5b57\u5217(\u5927\u6587\u5b57\u30fb\u5c0f\u6587\u5b57\u3092\u7121\u8996)(I)
15+numberRadioButtonMenuItem.text=\u6570\u5024(N)
16+allRadioButtonMenuItem.text=\u3059\u3079\u3066(A)
17+matchedRadioButtonMenuItem.text=\u4e00\u81f4\u306e\u307f(M)
18+unmatchedRadioButtonMenuItem.text=\u4e0d\u4e00\u81f4\u306e\u307f(N)
19+existsLeftRadioButtonMenuItem.text=\u5de6\u7aef\u30ab\u30e9\u30e0\u304c\u7a7a\u6b04\u4ee5\u5916(1)
20+missingLeftRadioButtonMenuItem.text=\u5de6\u7aef\u30ab\u30e9\u30e0\u304c\u7a7a\u6b04(2)
2121 onImportData.Action.text=
2222 onImportData.BlockingDialog.title=\u30ed\u30fc\u30c9\u4e2d
2323 onImportData.BlockingDialog.optionPane.message=\u3057\u3070\u3089\u304f\u304a\u5f85\u3061\u304f\u3060\u3055\u3044
2424 onImportData.Action.accelerator=shortcut I
2525 onImportData.Action.shortDescription=\u30a4\u30f3\u30dd\u30fc\u30c8
2626 dateViewTable.gridColor=153, 153, 153
27-showAboutBox.Action.text=\u30d0\u30fc\u30b8\u30e7\u30f3\u60c5\u5831...
27+showAboutBox.Action.text=\u30d0\u30fc\u30b8\u30e7\u30f3\u60c5\u5831(&A)...
2828 showAboutBox.Action.shortDescription=\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u60c5\u5831\u3092\u958b\u304f
2929 StatusBar.messageTimeout=5000
3030 StatusBar.busyAnimationRate=30
@@ -55,3 +55,4 @@ confirm.discard.message=\u5909\u66f4\u3092\u7834\u68c4\u3057\u3066\u3082\u3088\u
5555 onNew.Action.accelerator=shortcut N
5656 onLoad.Action.accelerator=shortcut O
5757 onSave.Action.accelerator=shortcut S
58+aboutMenuItem.text=\u30d0\u30fc\u30b8\u30e7\u30f3\u60c5\u5831...(A)
--- /dev/null
+++ b/src/textkeymatcher/ui/resources/TextKeyMatcherView_ja_JP_MAC.properties
@@ -0,0 +1,68 @@
1+# Resources for the TextKeyMatcherView class
2+
3+# top-level menus
4+
5+fileMenu.text = \u30d5\u30a1\u30a4\u30eb
6+helpMenu.text = \u30d8\u30eb\u30d7
7+
8+# @Action resources
9+
10+showAboutBox.Action.text = \u30d0\u30fc\u30b8\u30e7\u30f3\u60c5\u5831...
11+showAboutBox.Action.shortDescription = Show the application's information dialog
12+
13+# status bar resources
14+
15+StatusBar.messageTimeout = 5000
16+StatusBar.busyAnimationRate = 30
17+StatusBar.idleIcon = busyicons/idle-icon.png
18+StatusBar.busyIcons[0] = busyicons/busy-icon0.png
19+StatusBar.busyIcons[1] = busyicons/busy-icon1.png
20+StatusBar.busyIcons[2] = busyicons/busy-icon2.png
21+StatusBar.busyIcons[3] = busyicons/busy-icon3.png
22+StatusBar.busyIcons[4] = busyicons/busy-icon4.png
23+StatusBar.busyIcons[5] = busyicons/busy-icon5.png
24+StatusBar.busyIcons[6] = busyicons/busy-icon6.png
25+StatusBar.busyIcons[7] = busyicons/busy-icon7.png
26+StatusBar.busyIcons[8] = busyicons/busy-icon8.png
27+StatusBar.busyIcons[9] = busyicons/busy-icon9.png
28+StatusBar.busyIcons[10] = busyicons/busy-icon10.png
29+StatusBar.busyIcons[11] = busyicons/busy-icon11.png
30+StatusBar.busyIcons[12] = busyicons/busy-icon12.png
31+StatusBar.busyIcons[13] = busyicons/busy-icon13.png
32+StatusBar.busyIcons[14] = busyicons/busy-icon14.png
33+newMenuItem.text=\u65b0\u898f
34+openMenuItem.text=\u958b\u304f
35+saveMenuItem.text=\u4fdd\u5b58
36+dataMenu.text=\u30c7\u30fc\u30bf
37+loadDataMenuItem.text=\u30c7\u30fc\u30bf\u306e\u53d6\u8fbc\u307f
38+removeMenuItem.text=\u524a\u9664
39+mergeMenuItem.text=\u7d50\u5408
40+keyMenu.text=\u30ad\u30fc
41+textNormalRadioButtonMenuItem.text=\u6587\u5b57\u5217
42+textIgnoreCaseRadioButtonMenuItem.text=\u6587\u5b57\u5217(\u5927\u6587\u5b57\u30fb\u5c0f\u6587\u5b57\u3092\u7121\u8996)
43+numberRadioButtonMenuItem.text=\u6570\u5024
44+viewMenu.text=\u8868\u793a
45+allRadioButtonMenuItem.text=\u3059\u3079\u3066
46+matchedRadioButtonMenuItem.text=\u4e00\u81f4\u306e\u307f
47+unmatchedRadioButtonMenuItem.text=\u4e0d\u4e00\u81f4\u98f2\u307f
48+existsLeftRadioButtonMenuItem.text=\u5de6\u7aef\u30ab\u30e9\u30e0\u304c\u7a7a\u6b04\u4ee5\u5916
49+missingLeftRadioButtonMenuItem.text=\u5de6\u7aef\u30ab\u30e9\u30e0\u304c\u7a7a\u6b04
50+onImportData.BlockingDialog.title=\u30ed\u30fc\u30c9\u4e2d
51+onImportData.BlockingDialog.optionPane.message=\u3057\u3070\u3089\u304f\u304a\u5f85\u3061\u304f\u3060\u3055\u3044
52+onImportData.Action.accelerator=shortcut I
53+onImportData.Action.shortDescription=\u30a4\u30f3\u30dd\u30fc\u30c8
54+onImportData.Action.text=
55+#NOI18N
56+dateViewTable.gridColor=153, 153, 153
57+onSave.Action.text=
58+onSave.Action.shortDescription=
59+onLoad.Action.text=
60+onLoad.Action.shortDescription=
61+onNew.Action.shortDescription=
62+onNew.Action.text=
63+confirm.discard.title=CONFIRM
64+confirm.discard.message=Are you sure you want to discard your changes?
65+onNew.Action.accelerator=shortcut N
66+onLoad.Action.accelerator=shortcut O
67+onSave.Action.accelerator=shortcut S
68+aboutMenuItem.text=\u30d0\u30fc\u30b8\u30e7\u30f3\u60c5\u5831...