Commit | Line | Data |
---|---|---|
a3b510ab NR |
1 | package be.nikiroo.jvcard.test; |
2 | ||
3 | import java.io.File; | |
4 | import java.io.IOException; | |
5 | import java.util.List; | |
6 | ||
7 | import be.nikiroo.jvcard.Card; | |
8 | import be.nikiroo.jvcard.parsers.Format; | |
9 | import be.nikiroo.jvcard.tui.ContactList; | |
10 | import be.nikiroo.jvcard.tui.MainWindow; | |
11 | import be.nikiroo.jvcard.tui.TuiLauncher; | |
12 | ||
13 | import com.googlecode.lanterna.TerminalSize; | |
14 | import com.googlecode.lanterna.TextColor; | |
15 | import com.googlecode.lanterna.gui2.BasicWindow; | |
16 | import com.googlecode.lanterna.gui2.BorderLayout; | |
17 | import com.googlecode.lanterna.gui2.Button; | |
18 | import com.googlecode.lanterna.gui2.DefaultWindowManager; | |
19 | import com.googlecode.lanterna.gui2.EmptySpace; | |
20 | import com.googlecode.lanterna.gui2.GridLayout; | |
21 | import com.googlecode.lanterna.gui2.Label; | |
22 | import com.googlecode.lanterna.gui2.MultiWindowTextGUI; | |
23 | import com.googlecode.lanterna.gui2.Panel; | |
24 | import com.googlecode.lanterna.gui2.TextBox; | |
25 | import com.googlecode.lanterna.gui2.Window; | |
26 | import com.googlecode.lanterna.gui2.table.Table; | |
27 | import com.googlecode.lanterna.screen.Screen; | |
28 | import com.googlecode.lanterna.screen.TerminalScreen; | |
29 | import com.googlecode.lanterna.terminal.DefaultTerminalFactory; | |
30 | import com.googlecode.lanterna.terminal.Terminal; | |
31 | ||
32 | public class TestCli { | |
33 | public static void main(String[] args) throws IOException { | |
34 | Boolean textMode = null; | |
35 | if (args.length > 0 && args[0].equals("--tui")) | |
36 | textMode = true; | |
37 | if (args.length > 0 && args[0].equals("--gui")) | |
38 | textMode = false; | |
39 | ||
40 | //TODO: do not hardcode that: | |
41 | Card card = new Card(new File("/home/niki/.addressbook"), Format.Abook); | |
42 | Window win = new MainWindow(new ContactList(card)); | |
43 | // | |
44 | ||
45 | TuiLauncher.start(textMode, win); | |
46 | ||
47 | /* | |
48 | * String file = args.length > 0 ? args[0] : null; String file2 = | |
49 | * args.length > 1 ? args[1] : null; | |
50 | * | |
51 | * if (file == null) file = | |
52 | * "/home/niki/workspace/rcard/utils/CVcard/test.vcf"; if (file2 == | |
53 | * null) file2 = "/home/niki/workspace/rcard/utils/CVcard/test.abook"; | |
54 | * | |
55 | * Card card = new Card(new File(file), Format.VCard21); | |
56 | * System.out.println(card.toString()); | |
57 | * | |
58 | * System.out.println("\n -- PINE -- \n"); | |
59 | * | |
60 | * card = new Card(new File(file2), Format.Abook); | |
61 | * System.out.println(card.toString(Format.Abook)); | |
62 | */ | |
63 | } | |
64 | ||
65 | static private Table test2() throws IOException { | |
66 | final Table<String> table = new Table<String>("Column 1", "Column 2", | |
67 | "Column 3"); | |
68 | table.getTableModel().addRow("1", "2", "3"); | |
69 | table.setSelectAction(new Runnable() { | |
70 | @Override | |
71 | public void run() { | |
72 | List<String> data = table.getTableModel().getRow( | |
73 | table.getSelectedRow()); | |
74 | for (int i = 0; i < data.size(); i++) { | |
75 | System.out.println(data.get(i)); | |
76 | } | |
77 | } | |
78 | }); | |
79 | ||
80 | return table; | |
81 | } | |
82 | ||
83 | static private void test() throws IOException { | |
84 | // Setup terminal and screen layers | |
85 | Terminal terminal = new DefaultTerminalFactory().createTerminal(); | |
86 | Screen screen = new TerminalScreen(terminal); | |
87 | screen.startScreen(); | |
88 | ||
89 | // Create panel to hold components | |
90 | Panel panel = new Panel(); | |
91 | panel.setLayoutManager(new GridLayout(2)); | |
92 | ||
93 | panel.addComponent(new Label("Forename")); | |
94 | panel.addComponent(new TextBox()); | |
95 | ||
96 | panel.addComponent(new Label("Surname")); | |
97 | panel.addComponent(new TextBox()); | |
98 | ||
99 | panel.addComponent(new EmptySpace(new TerminalSize(0, 0))); // Empty | |
100 | // space | |
101 | // underneath | |
102 | // labels | |
103 | panel.addComponent(new Button("Submit")); | |
104 | ||
105 | // Create window to hold the panel | |
106 | BasicWindow window = new BasicWindow(); | |
107 | window.setComponent(panel); | |
108 | ||
109 | // Create gui and start gui | |
110 | MultiWindowTextGUI gui = new MultiWindowTextGUI(screen, | |
111 | new DefaultWindowManager(), new EmptySpace(TextColor.ANSI.BLUE)); | |
112 | gui.addWindowAndWait(window); | |
113 | } | |
114 | } |