1
23
24package org.jzuul.gdk;
25
26import org.eclipse.swt.SWT;
27import org.eclipse.swt.widgets.Display;
28import org.eclipse.swt.widgets.MessageBox;
29import org.eclipse.swt.widgets.Shell;
30import org.jzuul.gdk.swt.GDKMainWindow;
31import org.jzuul.gdk.swt.Messages;
32import org.jzuul.gdk.swt.Splash;
33
34
39public class Main {
40
41 public static void main(String[] args) {
42 String filename = null;
43 if (args.length > 0) {
44 filename = args[0];
45 }
46 Main main = new Main(filename);
47 }
48
49 private Main(String filename) {
50 Display display = new Display();
51 Splash s = new Splash(display);
52 int steps = 3;
53 if (filename != null) steps++;
54 s.show(steps, Messages.getString("SPLASH_STARTING"));
56 GDKMainWindow main = new GDKMainWindow();
57
58 try {
59 s.nextTask(Messages.getString("SPLASH_CREATING_GUI")); main.createGui(display);
61
62 if (filename != null) {
63 s.nextTask(Messages.getString("SPLASH_LOADING")); main.openFile(filename);
65 }
66
67 s.nextTask(Messages.getString("SPLASH_FINISHED")); s.close();
69
70 main.open(display);
71
72 } catch (Exception e) {
73 main.saveFile();
74
75 MessageBox mb = new MessageBox(new Shell(display), SWT.ICON_ERROR);
76 mb.setText(Messages.getString("FATAL_ERROR")); mb.setMessage(Messages.getString("FATAL_ERROR_OCCURED") + e.getMessage() + Messages.getString("FATAL_ERROR_DATA"));
79 mb.open();
80 e.printStackTrace();
81 }
82 }
83}