+Controls the indentation settings.
+
+ Lets you change the general indentation settings.
+Lets you choose the way lines should be indented.
+
+Standard indent
+
+With standard indentation, lines will be indented according to the
+current indentation level (Note that the indentation level changes as the block
+or parentheses level changes).
+ Example 4.30. Method declaration (standard indented)
+public void severalParameters(String one, int two, String three,
+ StringObject four, AnotherObject five) {
+...
+}
+ |
Example 4.31. Method Call (standard indented)
+vector.add(new AppServerReference(
+ "RemoteApplicationManager",
+ poa.create_reference_with_id("RemoteApplicationManager".getBytes(),
+ RemoteApplicationManagerHelper.id())));
+ |
Example 4.32. Assignment (standard indented)
+doublette[InteressentenPflegeController.GEBURTSDATUM] = versichertenResultSetRow[i].field[0]
+ .substring(0, 2) + "."
+ + versichertenResultSetRow[i].field[0].substring(2, 4) + "."
+ + versichertenResultSetRow[i].field[0].substring(4, 6);
+ |
+Deep indent
+
+Deep indentation means that lines will be indented relative to the current
+parentheses or assignment offset. This way consecutive code sections are somewhat easier
+to recognize at the downside of consuming more horizontal space.
+ Example 4.33. Method declaration (deep indented)
+public void severalParameters(String one, int two, String three,
+ StringObject four, AnotherObject five) {
+ ...
+}
+ |
Example 4.34. Method Call (deep indented)
+this.add(lbPunktzahl,
+ new GridBagLayout(0, 1, 2, 1, 0.0, 0.0,
+ GribBagConstraints.WEST,
+ GribBagConstraints.NONE,
+ new Insets(0, GribBagConstraints.WEST,
+ GribBagConstraints.WEST,
+ GribBagConstraints.WEST), 0, 0));
+ |
Example 4.35. Assignment (deep indented)
+doublette[Controller.GEBURTSDATUM] = versichertenResultSetRow[i].field[0]
+ .substring(0, 2) + "."
+ + versichertenResultSetRow[i].field[0]
+ .substring(2, 4)
+ + "."
+ + versichertenResultSetRow[i].field[0]
+ .substring(4, 6);
+ |
+Lets you set different indentation sizes.
+
+General indent
+
+
+Specifies the number of spaces to use for general indentation (Studies have
+found that 2 to 4 spaces for indentation is optimal)
+ Example 4.36. 2 space general indent
+public class Preferences
+{
+->private Preferences()
+->{
+->}
+
+->public static void main(String[] argv)
+->{
+->->de.hunsicker.jalopy.swing.PreferencesDialog.main(argv);
+->}
+}
+ |
Example 4.37. 4 space general indent
+public class Preferences
+{
+--->private Preferences()
+--->{
+--->}
+
+--->public static void main(String[] argv)
+--->{
+--->--->de.hunsicker.jalopy.swing.PreferencesDialog.main(argv);
+--->}
+}
+ |
+Leading indent
+
+
+Specifies the number of spaces to prepend before every line printed.
+ Example 4.38. 6 space leading indent
+----->public class Preferences
+----->{
+-----> private Preferences()
+-----> {
+-----> }
+
+-----> public static void main(String[] argv)
+-----> {
+-----> de.hunsicker.jalopy.swing.PreferencesDialog.main(argv);
+-----> }
+----->}
+ |
+Continuation indent
+
+
+Specifies the number of spaces that should be inserted in front of
+continuation lines, i.e. the consecutive lines in case of a line wrap.
+ Example 4.39. 2 space continuation indent
+if ((condition1 && condition2)
+ ->|| (condition3 && condition4)
+ ->|| !(condition5 && condition6)) {
+ doSomethingAboutIt();
+}
+ |
Example 4.40. 4 space continuation indent
+if ((condition1 && condition2)
+ --->|| (condition3 && condition4)
+ --->|| !(condition5 && condition6)) {
+ doSomethingAboutIt();
+}
+ |
+Trailing comment indent
+
+
+
+
+Specifies the number of spaces to insert between trailing comments and the
+preceding statement.
+ Example 4.41. 3 space trailing comment indent
+new String[] {
+ "Sunday",-->// Sunday
+ "Monday",-->// Monday
+ "Tuesday",-->// Tuesday
+ "Wednesday",-->// Wednesday
+ "Thursday",-->// Thursday
+ "Friday",-->// Friday
+ "Saturday"-->// Saturday
+}
+ |
+Original Tab indent
+
+Specifies the original tabular size of the source code. Some indentations
+or alignments may fail, if you miss the correct size here.
+
+
+
+Extends indent
+
+If enabled, specifies the whitespace to print before the extends
+keyword in case it was printed on a new line.
+ Example 4.42. extends indentation with 6 spaces
+public interface Channel
+------>extends Puttable, Takable
+{
+ ...
+}
+ |
+Implements indent
+
+Specifies the whitespace to print before the implements
+keyword in case it was printed on a new line.
+ Example 4.43. implements indentation with 8 spaces
+public class SynchronizedBoolean
+------->implements Comparable, Cloneable
+{
+ ...
+}
+ |
+Throws indent
+
+Specifies the whitespace to print before the throws
+keyword in case it was printed on a new line.
+
+ Example 4.44. throws indentation with 3 spaces
+private static final File getDestinationFile(File dest, String packageName,
+ String filename)
+-->throws IOException, FooException
+{
+ ...
+}
+ |
+Use tabs to indent
+
+
+Normally, Jalopy uses spaces to indent lines. If you prefer tabs, check this box.
+
+Indent "case" from "switch"
+
+The Sun Java code convention recommends a switch style where case statements
+are not indented relative to the switch statement as a whole. However, this
+option allows you to indent the case statements to make the entire switch
+statement stand out.
+ Example 4.45. Switch statement (unindented)
+switch (prio)
+{
+case Priority.ERROR_INT :
+case Priority.FATAL_INT :
+ color = Color.red;
+ break;
+
+case Priority.WARN_INT :
+ color = Color.blue;
+ break;
+
+default:
+ color = Color.black;
+ break;
+}
+ |
Example 4.46. Switch statement (indented)
+switch (prio)
+{
+--->case Priority.ERROR_INT :
+--->case Priority.FATAL_INT :
+---> color = Color.red;
+---> break;
+
+--->case Priority.WARN_INT :
+---> color = Color.blue;
+---> break;
+
+--->default:
+---> color = Color.black;
+---> break;
+}
+ |
+Indent labels
+
+
+Specifies whether lables should be indented with the current indentation level.
+ Example 4.47. Unindented label
+// advance to the first CLASS_DEF or INTERFACE_DEF
+LOOP:
+ for (AST child = tree.getFirstChild();
+ child != null;
+ child = child.getNextSibling())
+ {
+ switch (child.getType())
+ {
+ case JavaTokenTypes.CLASS_DEF :
+ case JavaTokenTypes.INTERFACE_DEF :
+ next = child;
+ break LOOP;
+ default :
+ break;
+ }
+ }
+ |
Example 4.48. Indented label
+ // advance to the first CLASS_DEF or INTERFACE_DEF
+ LOOP:
+ for (AST child = tree.getFirstChild();
+ child != null;
+ child = child.getNextSibling())
+ {
+ switch (child.getType()) {
+ case JavaTokenTypes.CLASS_DEF :
+ case JavaTokenTypes.INTERFACE_DEF :
+ next = child;
+ break LOOP;
+
+ default :
+ break;
+ }
+ }
+ |
+Indent first column comments
+
+Normally, all comments will be indented relative to their position in the code
+to avoid that comments break the logical structure of the program. Some
+developers may like to disable the indentation for first column comments
+during the developing phase.
+ Example 4.49. First column comment (indented)
+ public static Printer create(AST node)
+ {
+
+ /*
+ if (node == null)
+ {
+ return new NullPrinter();
+ }
+ */
+ return create(node.getType());
+ }
+ |
Example 4.50. First column comment (unindented)
+ public static Printer create(AST node)
+ {
+
+/*
+ if (node == null)
+ {
+ return new NullPrinter();
+ }
+*/
+ return create(node.getType());
+ }
+ |
+Variable identifiers
+
+If enabled, aligns the identifiers of variable declarations.
+ Example 4.51. Variable identifiers
+String text = "text";
+int a = -1;
+History.Entry entry = new History.Entry(text);
+ |
Example 4.52. Variable identifiers (aligned)
+String text = "text";
+int a = -1;
+History.Entry entry = new History.Entry(text);
+ |
+Variable assignments
+
+If enabled, aligns the assignment parts of variable declarations or, surprise, assignments.
+ Example 4.53. Variable assignments (aligned)
+String text = "text";
+int a = -1;
+History.Entry entry = new History.Entry(text);
+ |
+If both variable alignment options are enabled, you can achieve a style like
+the following:
+ Example 4.54. Variable identifiers/assignments (both aligned)
+String text = "text";
+int a = -1;
+History.Entry entry = new History.Entry(text);
+ |
+
+
+Method Def parameters
+
+If enabled, aligns the parameters of method declarations. This only applies if
+all parameters will be wrapped; either because wrapping is forced or the
+max. line length is reached. To force aligning, you have to enable the
+wrapping for method parameters (See Method Def parameters).
+ Example 4.55. Method declaration parameters
+public static File create(final File file,
+ File directory,
+ int backupLevel)
+{
+ ...
+}
+ |
Example 4.56. Method declaration parameters (aligned)
+public static File create(final File file,
+ File directory,
+ int backupLevel)
+{
+ ...
+}
+ |
+Method Call chains
+
+If disabled, indentation happens according to the current indentation level.
+ Example 4.57. Method Call chain (standard indented)
+Fachschluesselerzeugung.createService()
+.getNeuerFachschluesselServiceService(
+ FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT);
+ |
+Otherwise indentation is performed relative to the column offset of the first chain link.
+ Example 4.58. Method Call chain (aligned)
+Fachschluesselerzeugung.createService()
+ .getNeuerFachschluesselServiceService(
+ FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT);
+ |
+Ternary expressions
+
+If disabled, ternary expressions are printed according to the current
+indentation policy.
+ Example 4.59. Ternary operators (standard indented)
+ alpha = (aLongBooleanExpression) ? beta |
+ : gamma; |
+ |
Example 4.60. Ternary operators (deep indented)
+ alpha = (aLongBooleanExpression) ? beta |
+ : gamma; |
+ |
+If enabled, the second operator will always be aligned relative to the first one.
+ Example 4.61. Ternary expresssions (aligned)
+ alpha = (aLongBooleanExpression) ? beta |
+ : gamma; |
+ |
+Note that this switch only takes affect, if indeed a line break was inserted
+before the second expression. You can force such line breaks with the
+Wrap always before ternary expression colon setting.
+
+Lets you specify extra indentation for consectutive lines of certain expressions.
+
+Blocks
+
+The Sun brace style could make seeing the statement body difficult. To
+workaround this problem, you may want to use continuation indentation in case you like this
+brace style. This setting applies for if, for, while
+and do-while blocks.
+ Example 4.62. Non-continuation indentation
+if ((condition1 && condition2)
+ || (condition3 && condition4)
+ || !(condition5 && condition6)) { // BAD WRAPS
+ doSomethingAboutIt(); // MAKE THIS LINE EASY TO MISS
+}
+ |
Example 4.63. Continuation indentation
+if ((condition1 && condition2)
+ || (condition3 && condition4)
+ || !(condition5 && condition6)) {
+ doSomethingAboutIt();
+}
+ |
+Refer to Section 4.3.1.1.1, “Styles” for the available brace style options.
+
+Operators
+
+If enabled, indentation will be increased before an operand will be printed.
+ Example 4.64. Ternary expression (deep indented)
+String comma = spaceAfterComma
+ --->? COMMA_SPACE
+ --->: COMMA;
+ |
|