Skip to content

Commit 2d1c417

Browse files
committed
Update DTDEncoder.
1 parent 6998f79 commit 2d1c417

1 file changed

Lines changed: 22 additions & 0 deletions

File tree

  • sierra-tools/dtd-encoder/src/main/java/org/httprpc/sierra/tools

sierra-tools/dtd-encoder/src/main/java/org/httprpc/sierra/tools/DTDEncoder.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import org.httprpc.sierra.VerticalAlignment;
2424

2525
import javax.swing.Icon;
26+
import javax.swing.JComponent;
2627
import javax.swing.JMenu;
2728
import javax.swing.JMenuBar;
2829
import javax.swing.JPanel;
@@ -35,6 +36,7 @@
3536
import java.awt.Font;
3637
import java.awt.Image;
3738
import java.io.File;
39+
import java.io.FileInputStream;
3840
import java.io.FileOutputStream;
3941
import java.io.IOException;
4042
import java.io.Writer;
@@ -44,6 +46,7 @@
4446
import java.util.HashSet;
4547
import java.util.List;
4648
import java.util.Map;
49+
import java.util.Properties;
4750

4851
import static org.httprpc.sierra.UILoader.*;
4952

@@ -250,7 +253,26 @@ private void declareAttributeList(String tag, Class<?> type, Writer writer) thro
250253
writer.append(";>\n");
251254
}
252255

256+
@SuppressWarnings("unchecked")
253257
public static void main(String[] args) throws Exception {
258+
if (args.length > 0) {
259+
var bindings = new Properties();
260+
261+
var directory = new File(System.getProperty("user.dir"));
262+
var file = new File(directory, args[0]);
263+
264+
try (var inputStream = new FileInputStream(file)) {
265+
bindings.load(inputStream);
266+
}
267+
268+
for (var entry : bindings.entrySet()) {
269+
var tag = (String)entry.getKey();
270+
var type = (Class<? extends JComponent>)Class.forName((String)entry.getValue());
271+
272+
UILoader.bind(tag, type, () -> null);
273+
}
274+
}
275+
254276
var typeSet = new HashSet<Class<?>>();
255277

256278
var tags = new HashMap<Class<?>, String>();

0 commit comments

Comments
 (0)