Normand Briere
2019-04-22 a9e12f6c508810604c8c91ee15451776b08ce1a1
timeflow/app/TimeflowApp.java
....@@ -25,8 +25,7 @@
2525
2626 public class TimeflowApp extends JFrame
2727 {
28
-
29
- public TFModel model = new TFModel();
28
+ public TimeflowModel model = new TimeflowModel();
3029 public JFileChooser fileChooser;
3130 AboutWindow splash;
3231 String[][] examples;
....@@ -36,10 +35,10 @@
3635 public JMenu filterMenu;
3736 JMenuItem save = new JMenuItem("Save");
3837 FilterControlPanel filterControlPanel;
39
- LinkTabPane leftPanel;
38
+ //LinkTabPane
39
+ JTabbedPane leftPanel;
4040 TFListener filterMenuMaker = new TFListener()
4141 {
42
-
4342 @Override
4443 public void note(TFEvent e)
4544 {
....@@ -70,35 +69,8 @@
7069 }
7170 };
7271
73
- void splash(boolean visible)
72
+ public JMenuBar TimeFlowWindow(Container container) throws HeadlessException
7473 {
75
- splash.setVisible(visible);
76
- }
77
-
78
- public void init() throws Exception
79
- {
80
- Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
81
- setBounds(0, 0, Math.min(d.width, 1200), Math.min(d.height, 900));
82
- setTitle(Display.version());
83
- setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
84
- final QuitAction quitAction = new QuitAction(this, model);
85
- addWindowListener(new WindowAdapter()
86
- {
87
-
88
- @Override
89
- public void windowClosing(WindowEvent e)
90
- {
91
- quitAction.quit();
92
- }
93
-
94
- public void windowStateChanged(WindowEvent e)
95
- {
96
- repaint();
97
- }
98
- });
99
- Image icon = Toolkit.getDefaultToolkit().getImage("images/icon.gif");
100
- setIconImage(icon);
101
-
10274 // read example directory
10375 String[] ex = getVisibleFiles("settings/examples");
10476 int n = ex.length;
....@@ -112,21 +84,23 @@
11284 examples[i][0] = s;
11385 examples[i][1] = "settings/examples/" + ex[i];
11486 }
87
+
11588 templates = getVisibleFiles("settings/templates");
11689 fileChooser = new JFileChooser(state.getCurrentFile());
11790
118
- getContentPane().setLayout(new BorderLayout());
91
+ container.setLayout(new BorderLayout());
11992
12093 // left tab area, with vertical gray divider.
12194 JPanel leftHolder = new JPanel();
122
- getContentPane().add(leftHolder, BorderLayout.WEST);
95
+ container.add(leftHolder, BorderLayout.EAST); // WEST);
12396
12497 leftHolder.setLayout(new BorderLayout());
12598 JPanel pad = new Pad(3, 3);
12699 pad.setBackground(Color.gray);
127100 leftHolder.add(pad, BorderLayout.EAST);
128101
129
- leftPanel = new LinkTabPane();//JTabbedPane();
102
+ leftPanel = new //LinkTabPane();
103
+ JTabbedPane();
130104 leftHolder.add(leftPanel, BorderLayout.CENTER);
131105
132106 JPanel configPanel = new JPanel();
....@@ -141,18 +115,17 @@
141115 configPanel.add(legend, BorderLayout.CENTER);
142116 legend.add(new SizeLegendPanel(model), BorderLayout.NORTH);
143117 legend.add(new ColorLegendPanel(model), BorderLayout.CENTER);
144
- leftPanel.addTab(configPanel, "Display", true);
118
+ leftPanel.add(configPanel, "Display"); //, true);
145119
146
- leftPanel.addTab(filterControlPanel, "Filter", true);
120
+ leftPanel.add(filterControlPanel, "Filter"); //, true);
147121
148122 // center tab area
149123
150124 final LinkTabPane center = new LinkTabPane();
151
- getContentPane().add(center, BorderLayout.CENTER);
125
+ container.add(center, BorderLayout.CENTER);
152126
153127 center.addPropertyChangeListener(new PropertyChangeListener()
154128 {
155
-
156129 @Override
157130 public void propertyChange(PropertyChangeEvent evt)
158131 {
....@@ -165,18 +138,18 @@
165138 AbstractView[] views =
166139 {
167140 timeline,
168
- new CalendarView(model),
141
+ //new CalendarView(model),
169142 new ListView(model),
170143 new TableView(model),
171144 new BarGraphView(model),
172
- intro,
173
- new DescriptionView(model),
145
+ //intro,
174146 new SummaryView(model),
147
+ new DescriptionView(model),
175148 };
176149
177150 for (int i = 0; i < views.length; i++)
178151 {
179
- center.addTab(views[i], views[i].getName(), i < 5);
152
+ center.addTab(views[i], views[i].getName(), true); // i < 5);
180153 displayPanel.addLocalControl(views[i].getName(), views[i].getControls());
181154 }
182155
....@@ -187,7 +160,6 @@
187160 // but then, once data is loaded, switch directly to the timeline view.
188161 model.addListener(new TFListener()
189162 {
190
-
191163 @Override
192164 public void note(TFEvent e)
193165 {
....@@ -203,12 +175,15 @@
203175 });
204176
205177 JMenuBar menubar = new JMenuBar();
206
- setJMenuBar(menubar);
178
+
179
+ // frame.setJMenuBar(menubar);
207180
208181 JMenu fileMenu = new JMenu("File");
209182 menubar.add(fileMenu);
210183
211
- fileMenu.add(new NewDataAction(this));
184
+ TimeflowAction tlAction = new NewDataAction(this);
185
+ fileMenu.add(tlAction);
186
+ tlAction.actionPerformed(null);
212187 fileMenu.add(new CopySchemaAction(this));
213188
214189 JMenu templateMenu = new JMenu("New From Template");
....@@ -231,12 +206,10 @@
231206
232207 fileMenu.addSeparator();
233208
234
-
235209 JMenuItem open = new JMenuItem("Open...");
236210 fileMenu.add(open);
237211 open.addActionListener(new ActionListener()
238212 {
239
-
240213 @Override
241214 public void actionPerformed(ActionEvent e)
242215 {
....@@ -254,7 +227,6 @@
254227 fileMenu.add(impDel);
255228 impDel.addActionListener(new ActionListener()
256229 {
257
-
258230 @Override
259231 public void actionPerformed(ActionEvent e)
260232 {
....@@ -273,7 +245,6 @@
273245 save.setEnabled(false);
274246 save.addActionListener(new ActionListener()
275247 {
276
-
277248 @Override
278249 public void actionPerformed(ActionEvent e)
279250 {
....@@ -283,7 +254,6 @@
283254 });
284255 model.addListener(new TFListener()
285256 {
286
-
287257 @Override
288258 public void note(TFEvent e)
289259 {
....@@ -295,7 +265,6 @@
295265 fileMenu.add(saveAs);
296266 saveAs.addActionListener(new ActionListener()
297267 {
298
-
299268 @Override
300269 public void actionPerformed(ActionEvent e)
301270 {
....@@ -309,7 +278,6 @@
309278 fileMenu.add(exportTSV);
310279 exportTSV.addActionListener(new ActionListener()
311280 {
312
-
313281 @Override
314282 public void actionPerformed(ActionEvent e)
315283 {
....@@ -320,7 +288,6 @@
320288 fileMenu.add(exportCSV);
321289 exportCSV.addActionListener(new ActionListener()
322290 {
323
-
324291 @Override
325292 public void actionPerformed(ActionEvent e)
326293 {
....@@ -331,15 +298,14 @@
331298 fileMenu.add(exportHTML);
332299 exportHTML.addActionListener(new ActionListener()
333300 {
334
-
335301 @Override
336302 public void actionPerformed(ActionEvent e)
337303 {
338304 exportHtml();
339305 }
340306 });
341
- fileMenu.addSeparator();
342
- fileMenu.add(quitAction);
307
+// fileMenu.addSeparator();
308
+// fileMenu.add(quitAction);
343309
344310 JMenu editMenu = new JMenu("Edit");
345311 menubar.add(editMenu);
....@@ -370,7 +336,6 @@
370336 final String file = examples[i][1];
371337 example.addActionListener(new ActionListener()
372338 {
373
-
374339 @Override
375340 public void actionPerformed(ActionEvent e)
376341 {
....@@ -380,7 +345,7 @@
380345 }
381346
382347 JMenu helpMenu = new JMenu("Help");
383
- menubar.add(helpMenu);
348
+ //menubar.add(helpMenu);
384349
385350 helpMenu.add(new WebDocAction(this));
386351
....@@ -388,7 +353,6 @@
388353 helpMenu.add(about);
389354 about.addActionListener(new ActionListener()
390355 {
391
-
392356 @Override
393357 public void actionPerformed(ActionEvent e)
394358 {
....@@ -398,7 +362,6 @@
398362
399363 model.addListener(new TFListener()
400364 {
401
-
402365 @Override
403366 public void note(TFEvent e)
404367 {
....@@ -414,6 +377,41 @@
414377 }
415378 }
416379 });
380
+
381
+ return menubar;
382
+ }
383
+
384
+ void splash(boolean visible)
385
+ {
386
+ splash.setVisible(visible);
387
+ }
388
+
389
+ public void init() throws Exception
390
+ {
391
+ Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
392
+ setBounds(0, 0, Math.min(d.width, 1200), Math.min(d.height, 900));
393
+ setTitle(Display.version());
394
+ setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
395
+// final QuitAction quitAction = new QuitAction(this, model);
396
+// addWindowListener(new WindowAdapter()
397
+// {
398
+// @Override
399
+// public void windowClosing(WindowEvent e)
400
+// {
401
+// quitAction.quit();
402
+// }
403
+//
404
+// public void windowStateChanged(WindowEvent e)
405
+// {
406
+// repaint();
407
+// }
408
+// });
409
+ Image icon = Toolkit.getDefaultToolkit().getImage("images/icon.gif");
410
+ setIconImage(icon);
411
+
412
+ Container container = getContentPane();
413
+
414
+ TimeFlowWindow(container);
417415 }
418416
419417 void makeRecentFileMenu()