• R/O
  • SSH

Jindolf: 提交

Jindolfプロジェクトは、CGIゲーム「人狼BBS」を快適にプレイするための専用クライアントを製作するために発足したオープンソースプロジェクトです。


Commit MetaInfo

修订版668540f3f0d2d77c0218d3c570685bf24757f67d (tree)
时间2018-05-27 23:51:33
作者 <olyutorskii@user...>

Log Message

use JRE1.6 runtime static members

更改概述

差异

diff -r 451aa34e36d8 -r 668540f3f0d2 src/main/java/jp/sfjp/jindolf/config/OptionInfo.java
--- a/src/main/java/jp/sfjp/jindolf/config/OptionInfo.java Sun May 27 21:19:39 2018 +0900
+++ b/src/main/java/jp/sfjp/jindolf/config/OptionInfo.java Sun May 27 23:51:33 2018 +0900
@@ -19,7 +19,8 @@
1919
2020 /**
2121 * コマンドラインオプション情報。
22- * public static void main()の引数から展開される。
22+ *
23+ * <p>public static void main()の引数から展開される。
2324 */
2425 public class OptionInfo{
2526
@@ -74,21 +75,20 @@
7475 /**
7576 * 文字列が可変引数のいずれかと英字大小無視で等しいか判定する。
7677 *
77- * <p>※ JRE1.6のString#equalsIgnoreCase の代替も兼ねる。
78- *
7978 * @param text 文字列
8079 * @param names 文字列の可変引数
8180 * @return 等しい物があればtrue
8281 */
8382 private static boolean equalsIgnoreCase(String text, String ... names){
8483 for(String name : names){
85- if(text.compareToIgnoreCase(name) == 0) return true;
84+ if(text.equalsIgnoreCase(name)) return true;
8685 }
8786 return false;
8887 }
8988
9089 /**
9190 * 真偽二値をとるオプション解析の下請け。
91+ *
9292 * @param info オプション情報格納先
9393 * @param option オプション種別
9494 * @param optTxt オプション名文字列
@@ -168,6 +168,7 @@
168168
169169 /**
170170 * 引数付きオプションを解析する。
171+ *
171172 * @param info オプション情報
172173 * @param optTxt オプション文字列
173174 * @param option オプション種別
@@ -203,6 +204,7 @@
203204
204205 /**
205206 * オプション文字列を解析する。
207+ *
206208 * @param args main()に渡されるオプション文字列
207209 * @return 解析済みのオプション情報。
208210 * @throws IllegalArgumentException 構文エラー
@@ -238,6 +240,7 @@
238240
239241 /**
240242 * 全引数のリストを返す。
243+ *
241244 * @return 全引数のリスト
242245 */
243246 public List<String> getInvokeArgList(){
@@ -246,6 +249,7 @@
246249
247250 /**
248251 * オプションが指定されていたか否か判定する。
252+ *
249253 * @param option オプション
250254 * @return 指定されていたらtrue
251255 */
@@ -256,7 +260,9 @@
256260
257261 /**
258262 * 真偽値をとるオプション値を返す。
259- * 複数回指定された場合は最後の値。
263+ *
264+ * <p>複数回指定された場合は最後の値。
265+ *
260266 * @param option オプション
261267 * @return 真偽値。オプション指定がなかった場合はnull
262268 * @throws IllegalArgumentException 真偽値を取るオプションではない。
@@ -274,7 +280,9 @@
274280
275281 /**
276282 * 文字列引数をとるオプション値を返す。
277- * 複数回指定された場合は最後の値。
283+ *
284+ * <p>複数回指定された場合は最後の値。
285+ *
278286 * @param option オプション
279287 * @return 文字列。オプション指定がなかった場合はnull
280288 */
@@ -285,7 +293,9 @@
285293
286294 /**
287295 * 排他的オプションのいずれかが指定されたか判定する。
288- * 後から指定された方が有効となる。
296+ *
297+ * <p>後から指定された方が有効となる。
298+ *
289299 * @param options 排他的オプション群
290300 * @return いずれかのオプション。どれも指定されなければnull
291301 */
@@ -304,6 +314,7 @@
304314
305315 /**
306316 * 初期のフレーム幅を返す。
317+ *
307318 * @return 初期のフレーム幅。オプション指定されてなければnull
308319 */
309320 public Integer initialFrameWidth(){
@@ -312,6 +323,7 @@
312323
313324 /**
314325 * 初期のフレーム高を返す。
326+ *
315327 * @return 初期のフレーム高。オプション指定されてなければnull
316328 */
317329 public Integer initialFrameHeight(){
@@ -320,6 +332,7 @@
320332
321333 /**
322334 * 初期のフレーム位置のX座標を返す。
335+ *
323336 * @return 初期のフレーム位置のX座標。オプション指定されてなければnull
324337 */
325338 public Integer initialFrameXpos(){
@@ -328,6 +341,7 @@
328341
329342 /**
330343 * 初期のフレーム位置のY座標を返す。
344+ *
331345 * @return 初期のフレーム位置のY座標。オプション指定されてなければnull
332346 */
333347 public Integer initialFrameYpos(){
diff -r 451aa34e36d8 -r 668540f3f0d2 src/main/java/jp/sfjp/jindolf/glyph/FontEnv.java
--- a/src/main/java/jp/sfjp/jindolf/glyph/FontEnv.java Sun May 27 21:19:39 2018 +0900
+++ b/src/main/java/jp/sfjp/jindolf/glyph/FontEnv.java Sun May 27 23:51:33 2018 +0900
@@ -30,13 +30,9 @@
3030 * <li>任意の文字列を表示可能な全フォントを列挙すること
3131 * </ul>
3232 *
33- * <p>
34- * この二つをバックグラウンドで非同期に収集する。
35- * </p>
33+ * <p>この二つをバックグラウンドで非同期に収集する。
3634 *
37- * <p>
38- * 各種フォント環境収集メソッドの遅さをカバーするのが実装目的。
39- * </p>
35+ * <p>各種フォント環境収集メソッドの遅さをカバーするのが実装目的。
4036 */
4137 public class FontEnv {
4238
@@ -45,9 +41,6 @@
4541 */
4642 public static final FontEnv DEFAULT;
4743
48- /** {@link java.awt.Font#DIALOG} 代替品。 */
49- private static final String FAMILY_DIALOG = "Dialog";
50-
5144 /** フォントファミリ選択肢。 */
5245 private static final String[] INIT_FAMILY_NAMES = {
5346 "Hiragino Kaku Gothic Pro", // for MacOS X
@@ -62,9 +55,6 @@
6255 /** JIS X0208:1990 表示確認用文字列。 */
6356 private static final String JPCHECK_CODE = "あ凜熙峠ゑアアヴヰ┼ЖΩ9A";
6457
65- /** {@link java.util.Locale#ROOT} 代替品。 */
66- private static final Locale LOCALE_ROOT = new Locale("", "", "");
67-
6858 private static final int POOL_SZ = 2;
6959 private static final int STRIDE = 15;
7060
@@ -82,7 +72,9 @@
8272
8373 /**
8474 * コンストラクタ。
85- * 完了と同時に裏でフォント情報収集タスクが走る。
75+ *
76+ * <p>完了と同時に裏でフォント情報収集タスクが走る。
77+ *
8678 * @param proveChars 表示判定用文字列
8779 * @param fontFamilyList フォント候補
8880 * @throws NullPointerException 引数がnull
@@ -113,7 +105,9 @@
113105
114106 /**
115107 * コンストラクタ。
116- * 完了と同時に裏でフォント情報収集タスクが走る。
108+ *
109+ * <p>完了と同時に裏でフォント情報収集タスクが走る。
110+ *
117111 * @param proveChars 表示判定用文字列
118112 * @param fontFamilyList フォント候補
119113 * @throws NullPointerException 引数がnull
@@ -166,6 +160,7 @@
166160
167161 /**
168162 * システムに存在する有効なファミリ名か判定する。
163+ *
169164 * @param familyName フォントファミリ名。
170165 * @return 存在する有効なファミリ名ならtrue
171166 */
@@ -174,7 +169,7 @@
174169 int size = 1;
175170 Font dummyFont = new Font(familyName, style, size);
176171
177- String dummyFamilyName = dummyFont.getFamily(LOCALE_ROOT);
172+ String dummyFamilyName = dummyFont.getFamily(Locale.ROOT);
178173 if(dummyFamilyName.equals(familyName)) return true;
179174
180175 String dummyLocalFamilyName = dummyFont.getFamily();
@@ -185,12 +180,14 @@
185180
186181 /**
187182 * 複数の候補から利用可能なフォントを一つ選び、生成する。
188- * 候補から適当なファミリが見つからなかったら"Dialog"が選択される。
183+ *
184+ * <p>候補から適当なファミリが見つからなかったら"Dialog"が選択される。
185+ *
189186 * @param fontList フォントファミリ名候補
190187 * @return フォント
191188 */
192189 protected static String availableFontFamily(Iterable<String> fontList){
193- String defaultFamilyName = FAMILY_DIALOG;
190+ String defaultFamilyName = Font.DIALOG;
194191 for(String familyName : fontList){
195192 if(isValidFamilyName(familyName)){
196193 defaultFamilyName = familyName;
@@ -204,6 +201,7 @@
204201
205202 /**
206203 * フォントファミリー名のリストを返す。
204+ *
207205 * @return フォントファミリー名のリスト
208206 * @throws IllegalStateException 収集タスクに異常が発生
209207 */
@@ -212,9 +210,7 @@
212210
213211 try{
214212 result = this.listLoadFuture.get();
215- }catch(ExecutionException e){
216- throw new IllegalStateException(e);
217- }catch(InterruptedException e){
213+ }catch(ExecutionException | InterruptedException e){
218214 throw new IllegalStateException(e);
219215 }
220216
@@ -223,6 +219,7 @@
223219
224220 /**
225221 * 利用可能なフォントファミリ名を返す。
222+ *
226223 * @return フォントファミリー名
227224 * @throws IllegalStateException 収集タスクに異常が発生
228225 */
@@ -231,9 +228,7 @@
231228
232229 try{
233230 result = this.fontSelectFuture.get();
234- }catch(ExecutionException e){
235- throw new IllegalStateException(e);
236- }catch(InterruptedException e){
231+ }catch(ExecutionException | InterruptedException e){
237232 throw new IllegalStateException(e);
238233 }
239234
@@ -256,6 +251,7 @@
256251
257252 /**
258253 * {@inheritDoc}
254+ *
259255 * @return {@inheritDoc}
260256 */
261257 @Override
@@ -289,6 +285,7 @@
289285
290286 /**
291287 * {@inheritDoc}
288+ *
292289 * @return {@inheritDoc}
293290 */
294291 @Override
diff -r 451aa34e36d8 -r 668540f3f0d2 src/main/java/jp/sfjp/jindolf/glyph/FontInfo.java
--- a/src/main/java/jp/sfjp/jindolf/glyph/FontInfo.java Sun May 27 21:19:39 2018 +0900
+++ b/src/main/java/jp/sfjp/jindolf/glyph/FontInfo.java Sun May 27 23:51:33 2018 +0900
@@ -31,8 +31,6 @@
3131 /** デフォルトのフォントスタイル。 */
3232 public static final int DEF_STYLE = 0x00 | Font.PLAIN;
3333
34- /** {@link java.util.Locale#ROOT}代替品。 */
35- private static final Locale LOCALE_ROOT = new Locale("", "", "");
3634 /** MSリコー系日本語ベクトルフォント下限ポイントサイズ。 */
3735 private static final int MS_VEC_LIMIT = 24;
3836 /** 二重引用符。 */
@@ -53,7 +51,8 @@
5351
5452 /**
5553 * コンストラクタ。
56- * デフォルトフォントとそれに適した描画属性が指定される。
54+ *
55+ * <p>デフォルトフォントとそれに適した描画属性が指定される。
5756 */
5857 public FontInfo(){
5958 this((Font) null, (FontRenderContext) null);
@@ -62,6 +61,7 @@
6261
6362 /**
6463 * コンストラクタ。
64+ *
6565 * @param font フォント
6666 * @param context 描画設定
6767 */
@@ -86,7 +86,7 @@
8686 * @return 見当が付けばtrue
8787 */
8888 protected static boolean isMsRicohJpFont(Font font){
89- String rootFamilyName = font.getFamily(LOCALE_ROOT);
89+ String rootFamilyName = font.getFamily(Locale.ROOT);
9090 if(rootFamilyName.startsWith("MS")){
9191 if(rootFamilyName.contains("Gothic")) return true;
9292 if(rootFamilyName.contains("Mincho")) return true;
@@ -145,6 +145,7 @@
145145
146146 /**
147147 * ファミリ名を返す。
148+ *
148149 * @return ファミリ名
149150 */
150151 private String getFamilyName(){
@@ -161,6 +162,7 @@
161162
162163 /**
163164 * フォントを返す。
165+ *
164166 * @return フォント
165167 */
166168 public Font getFont(){
@@ -173,6 +175,7 @@
173175
174176 /**
175177 * 描画属性を返す。
178+ *
176179 * @return 描画属性
177180 */
178181 public FontRenderContext getFontRenderContext(){
@@ -185,6 +188,7 @@
185188
186189 /**
187190 * アンチエイリアス機能を使うか判定する。
191+ *
188192 * @return アンチエイリアス機能を使うならtrue
189193 */
190194 public boolean isAntiAliased(){
@@ -195,6 +199,7 @@
195199
196200 /**
197201 * サブピクセル精度を使うか判定する。
202+ *
198203 * @return サブピクセル精度を使うならtrue
199204 */
200205 public boolean usesFractionalMetrics(){
@@ -205,6 +210,7 @@
205210
206211 /**
207212 * フォントの最大寸法を返す。
213+ *
208214 * @return 最大寸法
209215 * @see java.awt.Font#getMaxCharBounds(FontRenderContext)
210216 */
@@ -218,6 +224,7 @@
218224
219225 /**
220226 * フォントのみ異なる設定を派生させる。
227+ *
221228 * @param newFont 新フォント
222229 * @return 新設定
223230 */
@@ -228,6 +235,7 @@
228235
229236 /**
230237 * 描画属性のみ異なる設定を派生させる。
238+ *
231239 * @param newContext 新描画設定
232240 * @return 新設定
233241 */
@@ -238,6 +246,7 @@
238246
239247 /**
240248 * 描画属性のみ異なる設定を派生させる。
249+ *
241250 * @param isAntiAliases アンチエイリアス設定
242251 * @param useFractional サブピクセル精度設定
243252 * @return 新設定
@@ -257,6 +266,7 @@
257266
258267 /**
259268 * 文字列からグリフ集合を生成する。
269+ *
260270 * @param iterator 文字列
261271 * @return グリフ集合
262272 */
@@ -269,19 +279,23 @@
269279
270280 /**
271281 * ロケール中立なフォントファミリ名を返す。
272- * JRE1.5対策
282+ *
283+ * <p>JRE1.5対策
284+ *
273285 * @return ファミリ名
274286 * @see Font#getFamily(Locale)
275287 */
276288 public String getRootFamilyName(){
277289 Font thisFont = getFont();
278- String result = thisFont.getFamily(LOCALE_ROOT);
290+ String result = thisFont.getFamily(Locale.ROOT);
279291 return result;
280292 }
281293
282294 /**
283295 * Font#decode()用の名前を返す。
284- * 空白が含まれる場合は二重引用符で囲まれる。
296+ *
297+ * <p>空白が含まれる場合は二重引用符で囲まれる。
298+ *
285299 * @return {@link java.awt.Font#decode(String)}用の名前
286300 * @see java.awt.Font#decode(String)
287301 */
@@ -312,6 +326,7 @@
312326
313327 /**
314328 * {@inheritDoc}
329+ *
315330 * @param obj {@inheritDoc}
316331 * @return {@inheritDoc}
317332 */
@@ -337,6 +352,7 @@
337352
338353 /**
339354 * {@inheritDoc}
355+ *
340356 * @return {@inheritDoc}
341357 */
342358 @Override
diff -r 451aa34e36d8 -r 668540f3f0d2 src/main/java/jp/sfjp/jindolf/util/Monodizer.java
--- a/src/main/java/jp/sfjp/jindolf/util/Monodizer.java Sun May 27 21:19:39 2018 +0900
+++ b/src/main/java/jp/sfjp/jindolf/util/Monodizer.java Sun May 27 23:51:33 2018 +0900
@@ -21,7 +21,8 @@
2121
2222 /**
2323 * Swingコンポーネントのフォント等幅化。
24- * L&amp;F変更にも対処。
24+ *
25+ * <p>L&amp;F変更にも対処。
2526 */
2627 public final class Monodizer implements PropertyChangeListener{
2728
@@ -29,11 +30,9 @@
2930 public static final String PROPNAME_FONT = "font";
3031 /** L&amp;F変更時のプロパティ名。 */
3132 public static final String PROPNAME_UI = "UI";
32- /** Font.MONOSPACED代替品。 */
33- public static final String FAMILY_MONO = "Monospaced";
3433
3534 private static final Map<TextAttribute, String> TEXTATTR_MONO =
36- Collections.singletonMap(TextAttribute.FAMILY, FAMILY_MONO);
35+ Collections.singletonMap(TextAttribute.FAMILY, Font.MONOSPACED);
3736
3837 private static final Monodizer CHANGER = new Monodizer();
3938
@@ -49,6 +48,7 @@
4948
5049 /**
5150 * 等幅フォントか否か判定する。
51+ *
5252 * @param font フォント
5353 * @return 等幅フォントならtrue
5454 */
@@ -59,14 +59,16 @@
5959 if( ! (attr instanceof String) ) return false;
6060
6161 String family = (String) attr;
62- if(family.equals(FAMILY_MONO)) return true;
62+ if(family.equals(Font.MONOSPACED)) return true;
6363
6464 return false;
6565 }
6666
6767 /**
6868 * 任意のフォントの等幅化を行う。
69- * 等幅以外の属性は可能な限り保持する。
69+ *
70+ * <p>等幅以外の属性は可能な限り保持する。
71+ *
7072 * @param font 任意のフォント
7173 * @return 等幅フォント
7274 */
@@ -77,7 +79,9 @@
7779
7880 /**
7981 * 任意のコンポーネントをフォント等幅化する。
80- * L&amp;F変更に対処するためのリスナ組み込みも行われる。
82+ *
83+ * <p>L&amp;F変更に対処するためのリスナ組み込みも行われる。
84+ *
8185 * @param comp コンポーネント
8286 */
8387 public static void monodize(JComponent comp){
@@ -97,6 +101,7 @@
97101
98102 /**
99103 * コンポーネントに微修正を加える。
104+ *
100105 * @param comp コンポーネント
101106 */
102107 private static void modifyComponent(JComponent comp){
@@ -113,6 +118,7 @@
113118
114119 /**
115120 * テキストコンポーネントへの微修正を行う。
121+ *
116122 * @param textComp テキストコンポーネント
117123 */
118124 private static void modifyTextComponent(JTextComponent textComp){
@@ -126,6 +132,7 @@
126132
127133 /**
128134 * コンボボックスのエディタを等幅化する。
135+ *
129136 * @param comboBox コンボボックス
130137 */
131138 private static void modifyComboBox(JComboBox<?> comboBox){
@@ -147,6 +154,7 @@
147154
148155 /**
149156 * フォント変更イベントの受信。
157+ *
150158 * @param event フォント変更イベント
151159 */
152160 @Override
Show on old repository browser