public static void init() { WebLookAndFeel.install(); WebFrame baseFrame = new WebFrame("Almöhi - <Hier sollte der Host stehen, zudem eine Verbindung besteht>"); WebTabbedPane tabbedPane = new WebTabbedPane(WebTabbedPane.TOP); WebTextArea textArea = new WebTextArea(); textArea.setEditable(false); tabbedPane.addTab("Bla", new WebLabel("Führerhauptquartier")); tabbedPane.addTab("Bla2", new WebLabel("Blondi")); WebAsyncTree tree = new WebAsyncTree(new DataProvider()); WebSplitPane vert = new WebSplitPane(JSplitPane.VERTICAL_SPLIT, tabbedPane, textArea); WebSplitPane hor = new WebSplitPane(JSplitPane.HORIZONTAL_SPLIT, tree, vert); baseFrame.add(hor); baseFrame.setVisible(true); baseFrame.setState(baseFrame.MAXIMIZED_BOTH); baseFrame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); }
@Override public Component prepareView() { tabPan = new WebTabbedPane(); tabPan.setOpaque(false); tabPan.setTabPlacement(WebTabbedPane.TOP); tabPan.addTab(" Enter Hour Details ", getForm()); return tabPan; }
public static WebTabbedPane createExampleTabs(WebLookAndFeelDemo owner, WebProgressDialog load) { // All example groups load.setText("Loading groups list"); List<ExampleGroup> exampleGroups = getExampleGroups(); load.setMinimum(0); load.setMaximum(exampleGroups.size() + 1); load.setProgress(0); // Example tabs WebTabbedPane exampleTabs = new WebTabbedPane(); exampleTabs.setTabbedPaneStyle(TabbedPaneStyle.attached); // exampleTabs.setTabLayoutPolicy ( WebTabbedPane.SCROLL_TAB_LAYOUT ); // Progress component IconProgress ip = (IconProgress) load.getMiddleComponent(); // Creating all examples int progress = 1; for (ExampleGroup group : exampleGroups) { // Updating progress state load.setText("Loading group: " + group.getGroupName()); load.setProgress(progress); progress++; // Updating progress icons Icon gi = group.getGroupIcon(); ip.addLoadedElement(gi); // Adding group view to new tab exampleTabs.addTab(group.getGroupName(), gi, createGroupView(owner, group)); // Applying foreground settings exampleTabs.setSelectedForegroundAt( exampleTabs.getTabCount() - 1, group.getPreferredForeground()); // Applying specific group settings to tab group.modifyExampleTab(exampleTabs.getTabCount() - 1, exampleTabs); } load.setProgress(progress); return exampleTabs; }
MainFrame( final View view, TableView<?, ?> userList, TableView<?, ?> threadList, Component content, Component searchPanel, Component statusBar) { mView = view; // general view + behaviour this.setTitle("Kontalk Java Client"); this.setSize(mConf.getInt(Config.VIEW_FRAME_WIDTH), mConf.getInt(Config.VIEW_FRAME_HEIGHT)); this.setIconImage(Utils.getImage("kontalk.png")); // closing behaviour this.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE); this.addWindowListener( new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { if (mConf.getBoolean(Config.MAIN_TRAY_CLOSE) && SystemTray.getSystemTray().getTrayIcons().length > 0) MainFrame.this.toggleState(); else mView.callShutDown(); } }); // menu WebMenuBar menubar = new WebMenuBar(); this.setJMenuBar(menubar); WebMenu konNetMenu = new WebMenu("KonNet"); konNetMenu.setMnemonic(KeyEvent.VK_K); mConnectMenuItem = new WebMenuItem(Tr.tr("Connect")); mConnectMenuItem.setAccelerator(Hotkey.ALT_C); mConnectMenuItem.setToolTipText(Tr.tr("Connect to Server")); mConnectMenuItem.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent event) { mView.callConnect(); } }); konNetMenu.add(mConnectMenuItem); mDisconnectMenuItem = new WebMenuItem(Tr.tr("Disconnect")); mDisconnectMenuItem.setAccelerator(Hotkey.ALT_D); mDisconnectMenuItem.setToolTipText(Tr.tr("Disconnect from Server")); mDisconnectMenuItem.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent event) { mView.callDisconnect(); } }); konNetMenu.add(mDisconnectMenuItem); konNetMenu.addSeparator(); WebMenuItem statusMenuItem = new WebMenuItem(Tr.tr("Set status")); statusMenuItem.setAccelerator(Hotkey.ALT_S); statusMenuItem.setToolTipText(Tr.tr("Set status text send to other user")); statusMenuItem.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent event) { WebDialog statusDialog = new StatusDialog(); statusDialog.setVisible(true); } }); konNetMenu.add(statusMenuItem); konNetMenu.addSeparator(); WebMenuItem exitMenuItem = new WebMenuItem(Tr.tr("Exit")); exitMenuItem.setAccelerator(Hotkey.ALT_E); exitMenuItem.setToolTipText(Tr.tr("Exit application")); exitMenuItem.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent event) { mView.callShutDown(); } }); konNetMenu.add(exitMenuItem); menubar.add(konNetMenu); WebMenu optionsMenu = new WebMenu(Tr.tr("Options")); optionsMenu.setMnemonic(KeyEvent.VK_O); WebMenuItem conConfMenuItem = new WebMenuItem(Tr.tr("Preferences")); conConfMenuItem.setAccelerator(Hotkey.ALT_P); conConfMenuItem.setToolTipText(Tr.tr("Set application preferences")); conConfMenuItem.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent event) { mView.showConfig(); } }); optionsMenu.add(conConfMenuItem); menubar.add(optionsMenu); WebMenu helpMenu = new WebMenu(Tr.tr("Help")); helpMenu.setMnemonic(KeyEvent.VK_H); WebMenuItem aboutMenuItem = new WebMenuItem(Tr.tr("About")); aboutMenuItem.setToolTipText(Tr.tr("About Kontalk")); aboutMenuItem.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent event) { MainFrame.this.showAboutDialog(); } }); helpMenu.add(aboutMenuItem); menubar.add(helpMenu); // Layout... this.setLayout(new BorderLayout(5, 5)); // ...left... WebPanel sidePanel = new WebPanel(false); sidePanel.add(searchPanel, BorderLayout.NORTH); mTabbedPane = new WebTabbedPane(WebTabbedPane.LEFT); WebButton newThreadButton = new WebButton(Tr.tr("New")); newThreadButton.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO new thread button } }); // String threadOverlayText = // Tr.t/r("No chats to display. You can create a new chat from your contacts"); WebScrollPane threadPane = createTablePane(threadList, newThreadButton, "threadOverlayText"); mTabbedPane.addTab("", threadPane); mTabbedPane.setTabComponentAt(Tab.THREADS.ordinal(), new WebVerticalLabel(Tr.tr("Chats"))); WebButton newUserButton = new WebButton(Tr.tr("Add")); newUserButton.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent e) { WebDialog addUserDialog = new AddUserDialog(); addUserDialog.setVisible(true); } }); // String userOverlayText = T/r.tr("No contacts to display. You have no friends ;("); WebScrollPane userPane = createTablePane(userList, newUserButton, "userOverlayText"); mTabbedPane.addTab("", userPane); mTabbedPane.setTabComponentAt(Tab.USER.ordinal(), new WebVerticalLabel(Tr.tr("Contacts"))); mTabbedPane.setPreferredSize(new Dimension(250, -1)); mTabbedPane.addChangeListener( new ChangeListener() { @Override public void stateChanged(ChangeEvent e) { mView.tabPaneChanged(Tab.values()[mTabbedPane.getSelectedIndex()]); } }); sidePanel.add(mTabbedPane, BorderLayout.CENTER); this.add(sidePanel, BorderLayout.WEST); // ...right... this.add(content, BorderLayout.CENTER); // ...bottom this.add(statusBar, BorderLayout.SOUTH); }