/** * Creates an instance of <tt>FileMenu</tt>. * * @param parentWindow The parent <tt>ChatWindow</tt>. */ public FileMenu(ChatWindow parentWindow) { super(GuiActivator.getResources().getI18NString("service.gui.FILE")); this.setOpaque(false); this.parentWindow = parentWindow; this.setMnemonic(GuiActivator.getResources().getI18nMnemonic("service.gui.FILE")); this.add(myChatRoomsItem); this.add(historyItem); this.addSeparator(); this.add(closeMenuItem); this.myChatRoomsItem.setName("myChatRooms"); this.historyItem.setName("history"); this.closeMenuItem.setName("close"); this.myChatRoomsItem.addActionListener(this); this.historyItem.addActionListener(this); this.closeMenuItem.addActionListener(this); this.myChatRoomsItem.setMnemonic( GuiActivator.getResources().getI18nMnemonic("service.gui.MY_CHAT_ROOMS")); this.historyItem.setMnemonic( GuiActivator.getResources().getI18nMnemonic("service.gui.HISTORY")); this.closeMenuItem.setMnemonic( GuiActivator.getResources().getI18nMnemonic("service.gui.CLOSE")); }
private void initSmiliesSelectorBox() { this.smileysBox = new SmileysSelectorBox(); this.smileysBox.setName("smiley"); this.smileysBox.setToolTipText( GuiActivator.getResources().getI18NString("service.gui.INSERT_SMILEY") + " Ctrl-M"); SIPCommMenuBar smileyMenuBar = new SIPCommMenuBar(); smileyMenuBar.setOpaque(false); smileyMenuBar.setLayout(new FlowLayout(FlowLayout.CENTER, 0, 0)); smileyMenuBar.add(smileysBox); this.add(smileyMenuBar); }
/** Initializes this component. */ protected void init() { this.setLayout(new FlowLayout(FlowLayout.LEFT, 3, 0)); this.setOpaque(false); this.add(inviteButton); // if we leave a chat room when we close the window // there is no need for this button if (!ConfigurationUtils.isLeaveChatRoomOnWindowCloseEnabled()) this.add(leaveChatRoomButton); this.add(callButton); this.add(callVideoButton); this.add(desktopSharingButton); this.add(sendFileButton); ChatPanel chatPanel = chatContainer.getCurrentChat(); if (chatPanel == null || !(chatPanel.getChatSession() instanceof MetaContactChatSession)) sendFileButton.setEnabled(false); this.addSeparator(); this.add(historyButton); this.add(previousButton); this.add(nextButton); // We only add the options button if the property SHOW_OPTIONS_WINDOW // specifies so or if it's not set. Boolean showOptionsProp = GuiActivator.getConfigurationService() .getBoolean(ConfigurationFrame.SHOW_OPTIONS_WINDOW_PROPERTY, false); if (showOptionsProp.booleanValue()) { this.add(optionsButton); } this.addSeparator(); if (ConfigurationUtils.isFontSupportEnabled()) { this.add(fontButton); fontButton.setName("font"); fontButton.setToolTipText( GuiActivator.getResources().getI18NString("service.gui.CHANGE_FONT")); fontButton.addActionListener(this); } initSmiliesSelectorBox(); this.addSeparator(); this.inviteButton.setName("invite"); this.inviteButton.setToolTipText( GuiActivator.getResources().getI18NString("service.gui.INVITE")); this.leaveChatRoomButton.setName("leave"); this.leaveChatRoomButton.setToolTipText( GuiActivator.getResources().getI18NString("service.gui.LEAVE")); this.callButton.setName("call"); this.callButton.setToolTipText( GuiActivator.getResources().getI18NString("service.gui.CALL_CONTACT")); this.callVideoButton.setName("callVideo"); this.callVideoButton.setToolTipText( GuiActivator.getResources().getI18NString("service.gui.CALL_CONTACT")); this.desktopSharingButton.setName("desktop"); this.desktopSharingButton.setToolTipText( GuiActivator.getResources().getI18NString("service.gui.SHARE_DESKTOP_WITH_CONTACT")); this.historyButton.setName("history"); this.historyButton.setToolTipText( GuiActivator.getResources().getI18NString("service.gui.HISTORY") + " Ctrl-H"); optionsButton.setName("options"); optionsButton.setToolTipText(GuiActivator.getResources().getI18NString("service.gui.OPTIONS")); this.sendFileButton.setName("sendFile"); this.sendFileButton.setToolTipText( GuiActivator.getResources().getI18NString("service.gui.SEND_FILE")); this.previousButton.setName("previous"); this.previousButton.setToolTipText( GuiActivator.getResources().getI18NString("service.gui.PREVIOUS")); this.nextButton.setName("next"); this.nextButton.setToolTipText(GuiActivator.getResources().getI18NString("service.gui.NEXT")); inviteButton.addActionListener(this); leaveChatRoomButton.addActionListener(this); callButton.addActionListener(this); callVideoButton.addActionListener(this); desktopSharingButton.addActionListener(this); historyButton.addActionListener(this); optionsButton.addActionListener(this); sendFileButton.addActionListener(this); previousButton.addActionListener(this); nextButton.addActionListener(this); }
/** * The <tt>FileMenu</tt> is the menu in the chat window menu bar that contains save, print and * close. * * @author Yana Stamcheva */ public class FileMenu extends SIPCommMenu implements ActionListener { private JMenuItem myChatRoomsItem = new JMenuItem( GuiActivator.getResources().getI18NString("service.gui.MY_CHAT_ROOMS"), new ImageIcon(ImageLoader.getImage(ImageLoader.CHAT_ROOM_16x16_ICON))); private JMenuItem historyItem = new JMenuItem( GuiActivator.getResources().getI18NString("service.gui.HISTORY"), new ImageIcon(ImageLoader.getImage(ImageLoader.HISTORY_ICON))); private JMenuItem closeMenuItem = new JMenuItem( GuiActivator.getResources().getI18NString("service.gui.CLOSE"), new ImageIcon(ImageLoader.getImage(ImageLoader.CLOSE_ICON))); private ChatWindow parentWindow; /** * Creates an instance of <tt>FileMenu</tt>. * * @param parentWindow The parent <tt>ChatWindow</tt>. */ public FileMenu(ChatWindow parentWindow) { super(GuiActivator.getResources().getI18NString("service.gui.FILE")); this.setOpaque(false); this.parentWindow = parentWindow; this.setMnemonic(GuiActivator.getResources().getI18nMnemonic("service.gui.FILE")); this.add(myChatRoomsItem); this.add(historyItem); this.addSeparator(); this.add(closeMenuItem); this.myChatRoomsItem.setName("myChatRooms"); this.historyItem.setName("history"); this.closeMenuItem.setName("close"); this.myChatRoomsItem.addActionListener(this); this.historyItem.addActionListener(this); this.closeMenuItem.addActionListener(this); this.myChatRoomsItem.setMnemonic( GuiActivator.getResources().getI18nMnemonic("service.gui.MY_CHAT_ROOMS")); this.historyItem.setMnemonic( GuiActivator.getResources().getI18nMnemonic("service.gui.HISTORY")); this.closeMenuItem.setMnemonic( GuiActivator.getResources().getI18nMnemonic("service.gui.CLOSE")); } /** * Handles the <tt>ActionEvent</tt> when one of the menu items is selected. * * @param e the <tt>ActionEvent</tt> that notified us */ public void actionPerformed(ActionEvent e) { JMenuItem menuItem = (JMenuItem) e.getSource(); String itemText = menuItem.getName(); if (itemText.equalsIgnoreCase("myChatRooms")) { ChatRoomTableDialog.showChatRoomTableDialog(); } else if (itemText.equals("history")) { HistoryWindow history; HistoryWindowManager historyWindowManager = GuiActivator.getUIService().getHistoryWindowManager(); ChatPanel chatPanel = this.parentWindow.getCurrentChatPanel(); ChatSession chatSession = chatPanel.getChatSession(); if (historyWindowManager.containsHistoryWindowForContact(chatSession.getDescriptor())) { history = historyWindowManager.getHistoryWindowForContact(chatSession.getDescriptor()); if (history.getState() == JFrame.ICONIFIED) history.setState(JFrame.NORMAL); history.toFront(); } else { history = new HistoryWindow(chatPanel.getChatSession().getDescriptor()); history.setVisible(true); historyWindowManager.addHistoryWindowForContact(chatSession.getDescriptor(), history); } } else if (itemText.equalsIgnoreCase("close")) { this.parentWindow.setVisible(false); this.parentWindow.dispose(); } } }