private void initGui() throws Exception
{
Engine.instance().setGUIFactory(swingGUIFactory);
SwingEngine swingEngine = new SwingEngine(this);
if (checkSystemOSOfWindowsOrLinux())
{
if (tray == null)
{
try
{
tray = SystemTray.getSystemTray();
participantIndicator = new IOverlayIcon(getIcon("icon24"));
participantIndicator.addOverlay("message", 0, 12);
participantIndicator.addIcon("message", "new", new ImageIcon(getClass().getResource(
"/resources/emblem-message-12.png")));
systemTrayMenu = (JPopupMenu) swingEngine.render(getClass().getResource("/swixml/TrayMenu.xml"));
}
catch (Exception ignored)
{
}
}
}
SwingTagLibrary.getInstance().registerTag("filebrowser", FileBrowser.class);
swingEngine.setClassLoader(AkteraAktarioGUI.class.getClassLoader());
desktopFrame = new SwingDesktopFrame();
desktopFrame.setTitle(getAppTitle());
desktopFrame.setIconImage(getIcon("icon16").getImage());
desktopFrame.init();
desktopFrame.addCloseListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
if (tray == null)
{
quitAction.actionPerformed(e);
}
else
{
desktopFrame.setVisible(false);
}
}
});
desktopFrame.addWindowListener(new WindowAdapter()
{
@Override
public void windowIconified(WindowEvent e)
{
desktopFrame.setExtendedState(JFrame.NORMAL);
desktopFrame.setVisible(true);
desktopFrame.setVisible(false);
}
});
desktopManager = new SwingDesktopManager();
desktopManager.setDesktopFrame(desktopFrame);
JFrame jframe = desktopFrame.getJFrame();
jframe.getContentPane().setLayout(new BorderLayout());
IMenuBar menubar = (IMenuBar) swingEngine.render(getClass().getResource("/swixml/MenuBar.xml"));
jframe.setJMenuBar(menubar);
toolbar = (IToolBar) swingEngine.render(getClass().getResource("/swixml/ToolBar.xml"));
desktopPane = new IDesktopPane();
desktopPane.setDesktopManager(new MyDesktopLayouter());
desktopManager.addDesktopPane(desktopPane);
jframe.getContentPane().add(desktopPane, BorderLayout.CENTER);
toolPanel = new JPanel();
toolPanel.setLayout(new FlowLayout());
addToolBarItems();
toolPanel.revalidate();
jframe.getContentPane().add(toolPanel, BorderLayout.NORTH);
JPanel statusBar = (JPanel) swingEngine.render(getClass().getResource("/swixml/StatusBar.xml"));
jframe.getContentPane().add(statusBar, BorderLayout.SOUTH);
jframe.getToolkit().addAWTEventListener(new AWTEventListener()
{