summaryrefslogtreecommitdiffstats
path: root/src/org/jetbrains/java/decompiler/main/TextBuffer.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/org/jetbrains/java/decompiler/main/TextBuffer.java')
-rw-r--r--src/org/jetbrains/java/decompiler/main/TextBuffer.java16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/org/jetbrains/java/decompiler/main/TextBuffer.java b/src/org/jetbrains/java/decompiler/main/TextBuffer.java
index 6d279bf..32766ca 100644
--- a/src/org/jetbrains/java/decompiler/main/TextBuffer.java
+++ b/src/org/jetbrains/java/decompiler/main/TextBuffer.java
@@ -15,6 +15,8 @@
*/
package org.jetbrains.java.decompiler.main;
+import org.jetbrains.java.decompiler.main.extern.IFernflowerPreferences;
+
import java.util.*;
/**
@@ -24,6 +26,7 @@ import java.util.*;
*/
public class TextBuffer {
private final String myLineSeparator = DecompilerContext.getNewLineSeparator();
+ private final String myIndent = (String)DecompilerContext.getProperty(IFernflowerPreferences.INDENT_STRING);
private final StringBuilder myStringBuilder;
private Map<Integer, Integer> myLineToOffsetMapping = null;
@@ -57,13 +60,21 @@ public class TextBuffer {
return this;
}
- public void addBanner(String banner) {
+ public TextBuffer appendIndent(int length) {
+ while (length-- > 0) {
+ append(myIndent);
+ }
+ return this;
+ }
+
+ public TextBuffer addBanner(String banner) {
myStringBuilder.insert(0, banner);
if (myLineToOffsetMapping != null) {
for (Integer line : myLineToOffsetMapping.keySet()) {
myLineToOffsetMapping.put(line, myLineToOffsetMapping.get(line) + banner.length());
}
}
+ return this;
}
@Override
@@ -138,7 +149,7 @@ public class TextBuffer {
myStringBuilder.setLength(position);
}
- public void append(TextBuffer buffer) {
+ public TextBuffer append(TextBuffer buffer) {
if (buffer.myLineToOffsetMapping != null && !buffer.myLineToOffsetMapping.isEmpty()) {
checkMapCreated();
for (Map.Entry<Integer, Integer> entry : buffer.myLineToOffsetMapping.entrySet()) {
@@ -146,6 +157,7 @@ public class TextBuffer {
}
}
myStringBuilder.append(buffer.myStringBuilder);
+ return this;
}
private void checkMapCreated() {