public GUI(String Profile, NetworkInterface NetObj) { MainDisplay = new Display(); MainShell = new Shell(MainDisplay); Updater = new GUIUpdaterThread(NetObj, this); Updater.setDaemon(true); // restartOpt=false; if (Profile.equals("SERVER") == true) { // FIX THIS ASAP UserProfile = "SERVER"; MainServer = (JTServer) NetObj; MainServer.test(); System.out.println( "GUI invoked with " + MainServer.getLocalUserIP() + ":" + MainServer.getLocalUserPort()); MainClient = null; } else if (Profile.equals("CLIENT") == true) { // FIX THIS ASAP UserProfile = "CLIENT"; MainClient = (JTClient) NetObj; MainClient.test(); MainServer = null; System.out.println( "GUI invoked with target " + MainClient.getTargetIP() + ":" + MainClient.getTargetPort()); System.out.println( "and client " + MainClient.getLocalUserName() + "@" + MainClient.getLocalUserIP() + ":" + MainClient.getLocalUserPort()); } else { confirmWin( MainShell, "Internal Error! No extension of JTNetworkInterface active!", jeremeTalk.JTC.OK); destroy(); } Calibri = new Font(MainDisplay, "Calibri", 12, SWT.NORMAL); Red = new Color(MainDisplay, 0x80, 0, 0); Green = new Color(MainDisplay, 0, 0x80, 0); Blue = new Color(MainDisplay, 0, 0, 0x80); White = new Color(MainDisplay, 0xFF, 0xFF, 0xFF); Black = new Color(MainDisplay, 0, 0, 0); Gray = new Color(MainDisplay, 0xCC, 0xCC, 0xCC); GridLayout GlobalWinGL = new GridLayout(); GlobalWinGL.numColumns = 3; GlobalWinGL.marginHeight = 10; GlobalWinGL.marginWidth = 10; GlobalWinGL.verticalSpacing = 5; GlobalWinGL.horizontalSpacing = 5; MainShell.setLayout(GlobalWinGL); initWidgets(); addWidgetListeners(); MainShell.setMenuBar(GlobalMainMenu); MainShell.pack(); MainShell.setLocation(centralize(MainDisplay.getPrimaryMonitor().getBounds(), MainShell)); MainShell.setText( "JeremeTalk v1.0 : Welcome " + NetObj.getLocalUserName() + " | You are " + UserProfile); MainShell.open(); Updater.start(); while (!MainShell.isDisposed()) { if (!MainDisplay.readAndDispatch()) MainDisplay.sleep(); } if (MainServer == null) MainClient.freePort(); else MainServer.freePort(); Updater.kill(); System.out.println("GUI Destroyed!"); }