@@ -81,6 +81,8 @@ public final class FmtOptions {
81
81
public static final String CLASS_DECL_BRACE_PLACEMENT = "classDeclBracePlacement" ; //NOI18N
82
82
public static final String ANONYMOUS_CLASS_BRACE_PLACEMENT = "anonymousClassBracePlacement" ; //NOI18N
83
83
public static final String METHOD_DECL_BRACE_PLACEMENT = "methodDeclBracePlacement" ; //NOI18N
84
+ public static final String FIELD_DECL_BRACE_PLACEMENT = "fieldDeclBracePlacement" ; //NOI18N
85
+ public static final String PROPERTY_HOOK_DECL_BRACE_PLACEMENT = "propertyHookDeclBracePlacement" ; //NOI18N
84
86
public static final String IF_BRACE_PLACEMENT = "ifBracePlacement" ; //NOI18N
85
87
public static final String FOR_BRACE_PLACEMENT = "forBracePlacement" ; //NOI18N
86
88
public static final String WHILE_BRACE_PLACEMENT = "whileBracePlacement" ; //NOI18N
@@ -104,7 +106,10 @@ public final class FmtOptions {
104
106
public static final String BLANK_LINES_BEFORE_FIELDS = "blankLinesBeforeField" ; //NOI18N
105
107
public static final String BLANK_LINES_BETWEEN_FIELDS = "blankLinesBetweenField" ; //NOI18N
106
108
public static final String BLANK_LINES_AFTER_FIELDS = "blankLinesAfterField" ; //NOI18N
109
+ public static final String BLANK_LINES_BEFORE_PROPERTY_HOOKS = "blankLinesBeforePropertyHooks" ; //NOI18N
110
+ public static final String BLANK_LINES_BETWEEN_PROPERTY_HOOKS = "blankLinesBetweenPropertyHooks" ; //NOI18N
107
111
public static final String BLANK_LINES_EMPTY_FUNCTION_BODY = "blankLinesEmptyFunctionBody" ; //NOI18N
112
+ public static final String BLANK_LINES_EMPTY_PROPERTY_HOOK_BODY = "blankLinesEmptyPropertyHookBody" ; //NOI18N
108
113
public static final String BLANK_LINES_EOF = "blankLinesEndOfFile" ; //NOI18N
109
114
public static final String BLANK_LINES_GROUP_FIELDS_WITHOUT_DOC_AND_ATTRIBUTES = "blankLinesGroupFieldsWithoutDocAndAttributes" ; //NOI18N
110
115
public static final String BLANK_LINES_BEFORE_FUNCTION = "blankLinesBeforeFunction" ; //NOI18N
@@ -146,6 +151,8 @@ public final class FmtOptions {
146
151
public static final String SPACE_BEFORE_CLASS_DECL_LEFT_BRACE = "spaceBeforeClassDeclLeftBrace" ; //NOI18N
147
152
public static final String SPACE_BEFORE_ANONYMOUS_CLASS_LEFT_BRACE = "spaceBeforeAnonymousClassLeftBrace" ; //NOI18N
148
153
public static final String SPACE_BEFORE_METHOD_DECL_LEFT_BRACE = "spaceBeforeMethodDeclLeftBrace" ; //NOI18N
154
+ public static final String SPACE_BEFORE_FIELD_DECL_LEFT_BRACE = "spaceBeforeFieldDeclLeftBrace" ; //NOI18N
155
+ public static final String SPACE_BEFORE_PROPERTY_HOOK_DECL_LEFT_BRACE = "spaceBeforePropertyHookDeclLeftBrace" ; //NOI18N
149
156
public static final String SPACE_BEFORE_IF_LEFT_BRACE = "spaceBeforeIfLeftBrace" ; //NOI18N
150
157
public static final String SPACE_BEFORE_ELSE_LEFT_BRACE = "spaceBeforeElseLeftBrace" ; //NOI18N
151
158
public static final String SPACE_BEFORE_WHILE_LEFT_BRACE = "spaceBeforeWhileLeftBrace" ; //NOI18N
@@ -239,15 +246,15 @@ private FmtOptions() {
239
246
}
240
247
241
248
public static int getDefaultAsInt (String key ) {
242
- return Integer .parseInt (defaults .get (key ));
249
+ return Integer .parseInt (DEFAULTS .get (key ));
243
250
}
244
251
245
252
public static boolean getDefaultAsBoolean (String key ) {
246
- return Boolean .parseBoolean (defaults .get (key ));
253
+ return Boolean .parseBoolean (DEFAULTS .get (key ));
247
254
}
248
255
249
256
public static String getDefaultAsString (String key ) {
250
- return defaults .get (key );
257
+ return DEFAULTS .get (key );
251
258
}
252
259
// Private section ---------------------------------------------------------
253
260
private static final String TRUE = "true" ; // NOI18N
@@ -260,13 +267,9 @@ public static String getDefaultAsString(String key) {
260
267
public static final String WRAP_ALWAYS = CodeStyle .WrapStyle .WRAP_ALWAYS .name ();
261
268
public static final String WRAP_IF_LONG = CodeStyle .WrapStyle .WRAP_IF_LONG .name ();
262
269
public static final String WRAP_NEVER = CodeStyle .WrapStyle .WRAP_NEVER .name ();
263
- private static Map <String , String > defaults ;
270
+ private static final Map <String , String > DEFAULTS = Map . copyOf ( createDefaults ()) ;
264
271
265
- static {
266
- createDefaults ();
267
- }
268
-
269
- private static void createDefaults () {
272
+ private static Map <String , String > createDefaults () {
270
273
String [][] defaultValues = {
271
274
{EXPAND_TAB_TO_SPACES , TRUE }, //NOI18N
272
275
{TAB_SIZE , "8" }, //NOI18N
@@ -281,6 +284,8 @@ private static void createDefaults() {
281
284
{CLASS_DECL_BRACE_PLACEMENT , OBRACE_SAMELINE },
282
285
{ANONYMOUS_CLASS_BRACE_PLACEMENT , OBRACE_SAMELINE },
283
286
{METHOD_DECL_BRACE_PLACEMENT , OBRACE_SAMELINE },
287
+ {FIELD_DECL_BRACE_PLACEMENT , OBRACE_SAMELINE },
288
+ {PROPERTY_HOOK_DECL_BRACE_PLACEMENT , OBRACE_SAMELINE },
284
289
{IF_BRACE_PLACEMENT , OBRACE_SAMELINE },
285
290
{FOR_BRACE_PLACEMENT , OBRACE_SAMELINE },
286
291
{WHILE_BRACE_PLACEMENT , OBRACE_SAMELINE },
@@ -303,10 +308,13 @@ private static void createDefaults() {
303
308
{BLANK_LINES_BEFORE_CLASS_END , "0" }, //NOI18N
304
309
{BLANK_LINES_BEFORE_FIELDS , "1" }, //NOI18N
305
310
{BLANK_LINES_EMPTY_FUNCTION_BODY , TRUE },
311
+ {BLANK_LINES_BEFORE_PROPERTY_HOOKS , "0" }, //NOI18N
312
+ {BLANK_LINES_EMPTY_PROPERTY_HOOK_BODY , FALSE },
306
313
{BLANK_LINES_EOF , FALSE },
307
314
{BLANK_LINES_GROUP_FIELDS_WITHOUT_DOC_AND_ATTRIBUTES , TRUE },
308
315
{BLANK_LINES_BETWEEN_FIELDS , "1" }, //NOI18N
309
316
{BLANK_LINES_AFTER_FIELDS , "1" }, //NOI18N
317
+ {BLANK_LINES_BETWEEN_PROPERTY_HOOKS , "0" }, //NOI18N
310
318
{BLANK_LINES_BEFORE_FUNCTION , "1" }, //NOI18N
311
319
{BLANK_LINES_AFTER_FUNCTION , "1" }, //NOI18N
312
320
{BLANK_LINES_BEFORE_FUNCTION_END , "0" }, //NOI18N
@@ -346,6 +354,8 @@ private static void createDefaults() {
346
354
{SPACE_AROUND_INTERSECTION_TYPE_SEPARATOR , FALSE },
347
355
{SPACE_BEFORE_CLASS_DECL_LEFT_BRACE , TRUE },
348
356
{SPACE_BEFORE_METHOD_DECL_LEFT_BRACE , TRUE },
357
+ {SPACE_BEFORE_FIELD_DECL_LEFT_BRACE , TRUE },
358
+ {SPACE_BEFORE_PROPERTY_HOOK_DECL_LEFT_BRACE , TRUE },
349
359
{SPACE_BEFORE_IF_LEFT_BRACE , TRUE },
350
360
{SPACE_BEFORE_ELSE_LEFT_BRACE , TRUE },
351
361
{SPACE_BEFORE_WHILE_LEFT_BRACE , TRUE },
@@ -436,16 +446,15 @@ private static void createDefaults() {
436
446
{USES_KEEP_EXISTING_TYPE_ORDER , TRUE },
437
447
};
438
448
439
- defaults = new HashMap <>();
440
-
449
+ Map <String , String > defaults = new HashMap <>();
441
450
for (java .lang .String [] strings : defaultValues ) {
442
451
defaults .put (strings [0 ], strings [1 ]);
443
452
}
444
-
453
+ return defaults ;
445
454
}
446
455
447
456
public static Map <String , String > getDefaults () {
448
- return defaults ;
457
+ return DEFAULTS ;
449
458
}
450
459
451
460
// Support section ---------------------------------------------------------
@@ -569,19 +578,15 @@ public void refreshPreview() {
569
578
pane .setIgnoreRepaint (true );
570
579
571
580
final Document doc = pane .getDocument ();
572
- if (doc instanceof BaseDocument ) {
581
+ if (doc instanceof BaseDocument baseDocument ) {
573
582
final Reformat reformat = Reformat .get (doc );
574
583
reformat .lock ();
575
584
try {
576
- ((BaseDocument ) doc ).runAtomic (new Runnable () {
577
- @ Override
578
- public void run () {
579
-
580
- try {
581
- reformat .reformat (0 , doc .getLength ());
582
- } catch (BadLocationException ble ) {
583
- LOGGER .log (Level .WARNING , null , ble );
584
- }
585
+ baseDocument .runAtomic (() -> {
586
+ try {
587
+ reformat .reformat (0 , doc .getLength ());
588
+ } catch (BadLocationException ble ) {
589
+ LOGGER .log (Level .WARNING , null , ble );
585
590
}
586
591
});
587
592
} finally {
@@ -650,27 +655,22 @@ public PreferencesCustomizer create(Preferences preferences) {
650
655
// Private methods -----------------------------------------------------
651
656
private void performOperation (Operation operation , JComponent jc , String optionID , Preferences p ) {
652
657
switch (operation ) {
653
- case LOAD :
654
- loadData (jc , optionID , p );
655
- break ;
656
- case STORE :
657
- storeData (jc , optionID , p );
658
- break ;
659
- case ADD_LISTENERS :
660
- addListener (jc );
661
- break ;
662
- default :
658
+ case LOAD -> loadData (jc , optionID , p );
659
+ case STORE -> storeData (jc , optionID , p );
660
+ case ADD_LISTENERS -> addListener (jc );
661
+ default -> {
663
662
assert false : operation ;
663
+ }
664
664
}
665
665
}
666
666
667
667
private void scan (Operation what , Preferences p ) {
668
668
for (JComponent jc : components ) {
669
669
Object o = jc .getClientProperty (OPTION_ID );
670
- if (o instanceof String ) {
671
- performOperation (what , jc , ( String ) o , p );
672
- } else if (o instanceof String []) {
673
- for (String oid : ( String []) o ) {
670
+ if (o instanceof String string ) {
671
+ performOperation (what , jc , string , p );
672
+ } else if (o instanceof String [] strings ) {
673
+ for (String oid : strings ) {
674
674
performOperation (what , jc , oid , p );
675
675
}
676
676
}
@@ -679,8 +679,7 @@ private void scan(Operation what, Preferences p) {
679
679
680
680
private void scan (Container container , List <JComponent > components ) {
681
681
for (Component c : container .getComponents ()) {
682
- if (c instanceof JComponent ) {
683
- JComponent jc = (JComponent ) c ;
682
+ if (c instanceof JComponent jc ) {
684
683
Object o = jc .getClientProperty (OPTION_ID );
685
684
if (o instanceof String || o instanceof String []) {
686
685
components .add (jc );
@@ -698,22 +697,18 @@ private void scan(Container container, List<JComponent> components) {
698
697
*/
699
698
private void loadData (JComponent jc , String optionID , Preferences node ) {
700
699
701
- if (jc instanceof JTextField ) {
702
- JTextField field = (JTextField ) jc ;
700
+ if (jc instanceof JTextField field ) {
703
701
field .setText (node .get (optionID , getDefaultAsString (optionID )));
704
- } else if (jc instanceof JCheckBox ) {
705
- JCheckBox checkBox = (JCheckBox ) jc ;
702
+ } else if (jc instanceof JCheckBox checkBox ) {
706
703
boolean df = getDefaultAsBoolean (optionID );
707
704
checkBox .setSelected (node .getBoolean (optionID , df ));
708
- } else if (jc instanceof JComboBox ) {
709
- JComboBox cb = (JComboBox ) jc ;
705
+ } else if (jc instanceof JComboBox comboBox ) {
710
706
String value = node .get (optionID , getDefaultAsString (optionID ));
711
707
ComboBoxModel model = createModel (value );
712
- cb .setModel (model );
708
+ comboBox .setModel (model );
713
709
ComboItem item = whichItem (value , model );
714
- cb .setSelectedItem (item );
715
- } else if (jc instanceof JRadioButton ) {
716
- JRadioButton radioButton = (JRadioButton ) jc ;
710
+ comboBox .setSelectedItem (item );
711
+ } else if (jc instanceof JRadioButton radioButton ) {
717
712
boolean df = getDefaultAsBoolean (optionID );
718
713
radioButton .setSelected (node .getBoolean (optionID , df ));
719
714
}
@@ -769,16 +764,13 @@ && getDefaultAsString(optionID).equals(text)) {
769
764
}
770
765
771
766
private void addListener (JComponent jc ) {
772
- if (jc instanceof JTextField ) {
773
- JTextField field = (JTextField ) jc ;
767
+ if (jc instanceof JTextField field ) {
774
768
field .addActionListener (this );
775
769
field .getDocument ().addDocumentListener (this );
776
- } else if (jc instanceof JCheckBox ) {
777
- JCheckBox checkBox = (JCheckBox ) jc ;
770
+ } else if (jc instanceof JCheckBox checkBox ) {
778
771
checkBox .addActionListener (this );
779
- } else if (jc instanceof JComboBox ) {
780
- JComboBox cb = (JComboBox ) jc ;
781
- cb .addActionListener (this );
772
+ } else if (jc instanceof JComboBox comboBox ) {
773
+ comboBox .addActionListener (this );
782
774
}
783
775
}
784
776
@@ -956,7 +948,7 @@ public interface CodeStyleProducer {
956
948
}
957
949
958
950
public static boolean isInteger (String optionID ) {
959
- String value = defaults .get (optionID );
951
+ String value = DEFAULTS .get (optionID );
960
952
961
953
try {
962
954
Integer .parseInt (value );
0 commit comments