/** * MAIN FUNCTION * * @param args {@link String} array of program arguments */ public static void main(String[] args) { // create sync manager and tray icon SyncManager manager = new SyncManager(); TrayManager.createTrayIcon( Toolkit.getDefaultToolkit().getImage(SimpleMirror.TRAY_ICON_FILE), SimpleMirror.TRAY_TOOLTIP); // check program arguments for (String arg : args) { if (arg.equals("-q") || arg.equals("-quiet")) { SimpleMirror.LOG_ENABLED = false; } else if (arg.equals("-s") || arg.equals("-service")) { SimpleMirror.START_SERVICE = true; } else if (arg.equals("-h") || arg.equals("-help")) { System.err.println( "SimpleMirror Syntax: java -jar simplemirror.jar <config-file> [-q | -quiet]"); System.err.println("-quiet\tno console output"); System.err.println("-q\tsee -quiet"); System.err.println("-service\truns as service after first sync"); System.err.println("-s\tsee -service"); System.err.println("-help\tshow this help"); System.err.println("-h\tsee -help"); } else { SimpleMirror.CONFIG_FILE = arg; } } // start sync service if (SimpleMirror.START_SERVICE) { // background sync thread SimpleMirror.sSyncService = new SyncService(manager); new Thread(sSyncService).start(); // background keep alive thread new Thread(new KeepAliveThread()).start(); } else { try { manager.setMirrors(SimpleMirror.readMirrors()); if (manager.sync()) { SimpleMirror.log("Synchronized"); } else { SimpleMirror.err("Error while synchronizing"); } } catch (IOException e) { SimpleMirror.err("Can not read mirrors from " + SimpleMirror.CONFIG_FILE); } TrayManager.removeTrayIcon(); } }
private void statusChanged() { Control.Status status = mControl.getCurrentStatus(); switch (status) { case CONNECTING: mStatusBarLabel.setText(Tr.tr("Connecting...")); break; case CONNECTED: mChatView.setColor(Color.WHITE); mStatusBarLabel.setText(Tr.tr("Connected")); NotificationManager.hideAllNotifications(); break; case DISCONNECTING: mStatusBarLabel.setText(Tr.tr("Disconnecting...")); break; case DISCONNECTED: mChatView.setColor(Color.LIGHT_GRAY); mStatusBarLabel.setText(Tr.tr("Not connected")); // if (mTrayIcon != null) // trayIcon.setImage(updatedImage); break; case SHUTTING_DOWN: mMainFrame.save(); mChatListView.save(); mTrayManager.removeTray(); mMainFrame.setVisible(false); mMainFrame.dispose(); break; case FAILED: mStatusBarLabel.setText(Tr.tr("Connecting failed")); break; case ERROR: mChatView.setColor(Color.lightGray); mStatusBarLabel.setText(Tr.tr("Connection error")); break; } mMainFrame.onStatusChanged(status); }
void updateTray() { mTrayManager.setTray(); }