📄 mainwindow.java
字号:
if(status_bar_visibility.isSelected()) status_bar.setVisible(true); else status_bar.setVisible(false); } }); tool_bar_visibility.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { if(tool_bar_visibility.isSelected()) main_buttons_bar.setVisible(true); else main_buttons_bar.setVisible(false); } }); final MainWindow _this = this; about.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { AboutDialog about_dialog = new AboutDialog(_this,true); SwingUtils.setWindowLocationRelativeTo(about_dialog,_this); about_dialog.setVisible(true); } }); file.setText(_._("mainwindow.mainmenu.file")); fnew.setText("New"); view.setText(_._("mainwindow.mainmenu.view")); tabs.setText(_._("mainwindow.mainmenu.view.tabs")); tools.setText(_._("mainwindow.mainmenu.tools")); help.setText(_._("mainwindow.mainmenu.help")); exit.setText(_._("mainwindow.mainmenu.file.exit")); exit.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { shutdownTheSystem(); } }); new_downloads.setText("Download(s)"); new_downloads.setIcon(ImgRep.getIcon("menuicons/folder_down.png")); new_downloads.setMnemonic('d'); new_downloads.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_D, java.awt.event.InputEvent.CTRL_MASK)); new_servers.setText("Server(s)"); new_servers.setIcon(ImgRep.getIcon("menuicons/server_add.png")); new_servers.setMnemonic('s'); new_servers.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, java.awt.event.InputEvent.CTRL_MASK)); exit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F4, java.awt.event.InputEvent.ALT_MASK)); exit.setMnemonic('x'); exit.setIcon(ImgRep.getIcon("menuicons/door_in.png")); import_server_list.setText(_._("mainwindow.mainmenu.file.import")); import_server_list.setIcon(ImgRep.getIcon("import.png")); servers.setText(_._("mainwindow.mainmenu.view.tabs.servers")); servers.setIcon(ImgRep.getIcon("menuicons/servers.png")); servers.setMnemonic('s'); servers.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_1, java.awt.event.InputEvent.CTRL_MASK)); transfers.setText(_._("mainwindow.mainmenu.view.tabs.transfers")); transfers.setIcon(ImgRep.getIcon("menuicons/transfer.png")); transfers.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_2, java.awt.event.InputEvent.CTRL_MASK)); search.setText(_._("mainwindow.mainmenu.view.tabs.search")); search.setIcon(ImgRep.getIcon("menuicons/search.png")); search.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_3, java.awt.event.InputEvent.CTRL_MASK)); shared_files.setText(_._("mainwindow.mainmenu.view.tabs.shared")); shared_files.setIcon(ImgRep.getIcon("menuicons/shared_files.png")); shared_files.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_4, java.awt.event.InputEvent.CTRL_MASK)); stats.setText(_._("mainwindow.mainmenu.view.tabs.stats")); stats.setIcon(ImgRep.getIcon("menuicons/statistics.png")); stats.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_5, java.awt.event.InputEvent.CTRL_MASK)); logs.setText(_._("mainwindow.mainmenu.view.tabs.logs")); logs.setIcon(ImgRep.getIcon("menuicons/logs.png")); logs.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_6, java.awt.event.InputEvent.CTRL_MASK)); ui_chooser.setText(_._("mainwindow.mainmenu.tools.uichooser")); ui_chooser.setIcon(ImgRep.getIcon("menuicons/switchui.png")); ui_chooser.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_U, java.awt.event.InputEvent.CTRL_MASK)); ui_chooser.setMnemonic('u'); config_wizard.setText(_._("mainwindow.mainmenu.tools.wizard")); config_wizard.setIcon(ImgRep.getIcon("menuicons/wizard.png")); config_wizard.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_W, java.awt.event.InputEvent.CTRL_MASK)); config_wizard.setMnemonic('w'); options.setText(_._("mainwindow.mainmenu.tools.options")); options.setIcon(ImgRep.getIcon("menuicons/cog_edit.png")); options.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, java.awt.event.InputEvent.CTRL_MASK)); options.setMnemonic('o'); open_support.setText("Open support"); open_support.setIcon(ImgRep.getIcon("menuicons/world_link.png")); project_forums.setText("Project forums"); project_forums.setIcon(ImgRep.getIcon("menuicons/world_link.png")); bug_tracker.setText("Bug tracker"); bug_tracker.setIcon(ImgRep.getIcon("menuicons/world_link.png")); check_for_updates.setText("Check for updates"); check_for_updates.setIcon(ImgRep.getIcon("updater.png")); about.setText(_._("mainwindow.mainmenu.help.about")); about.setIcon(ImgRep.getIcon("menuicons/information.png")); tool_bar_visibility.setText(_._("mainwindow.mainmenu.view.toolbar")); status_bar_visibility.setText(_._("mainwindow.mainmenu.view.statusbar")); main_menu_bar.add( file ); main_menu_bar.add( view ); main_menu_bar.add( tools ); main_menu_bar.add( help ); //file.add( fnew ); //file.addSeparator(); file.add( import_server_list ); file.addSeparator(); file.add( exit ); fnew.add( new_downloads ); fnew.add( new_servers ); tabs.add( servers ); tabs.add( transfers ); tabs.add( search ); tabs.add( shared_files ); tabs.add( stats ); view.add(tabs); view.add(tool_bar_visibility); view.add(status_bar_visibility); tools.add( ui_chooser ); tools.add( config_wizard ); tools.add( new JSeparator() ); tools.add( options ); help.add( open_support ); help.add( bug_tracker ); help.add( project_forums ); help.addSeparator(); help.add( check_for_updates ); help.addSeparator(); help.add( about ); this.setJMenuBar( main_menu_bar ); } private void setActiveMainTab(AbstractTab active_tab, JRadioButtonMenuItem menu_item_button) { if(active_tab != previous_panel) { if(previous_panel != null) { previous_panel.setVisible(false); previous_panel.deregisterAllRefreshables(); } active_tab.setVisible(true); setView( active_tab ); active_tab.registerAllRefreshables(); previous_panel = active_tab; menu_item_button.setSelected(true); } } //TODO extract this for a new class -> MainButtonsBar.java private void setMainButtonsBar() { main_buttons_bar = new JToolBar(); this.getContentPane().add( main_buttons_bar, BorderLayout.NORTH ); //main_buttons_bar.setPreferredSize( new java.awt.Dimension(425, 50) ); main_buttons_bar.setFloatable( false ); ButtonGroup button_group = new ButtonGroup(); connect_button = new JButton(); connect_button.setIcon( UISwingImageRepository.getIcon("connect_do.png") ); connect_button.setText("Connect"); connect_button.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); connect_button.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); main_buttons_bar.add(connect_button); main_buttons_bar.addSeparator(); server_list_button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { setActiveMainTab(server_list_tab, servers); // if(previous_panel != null) previous_panel.setVisible(false); // server_list_tab.setVisible(true); // setView( server_list_tab ); // previous_panel = server_list_tab; // servers.setSelected(true); } }); server_list_button.setIcon( UISwingImageRepository.getIcon("servers.png") ); server_list_button.setText("Servers"); button_group.add(server_list_button); main_buttons_bar.add(server_list_button); transfers_button.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { setActiveMainTab(transfers_tab, transfers); // if(previous_panel != null) previous_panel.setVisible(false); // transfers_tab.setVisible(true); // setView( transfers_tab ); // previous_panel = transfers_tab; // transfers.setSelected(true); } }); transfers_button.setIcon( UISwingImageRepository.getIcon("transfer.png") ); transfers_button.setText("Transfers"); button_group.add( transfers_button ); main_buttons_bar.add( transfers_button ); search_button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { setActiveMainTab(search_tab, search); //if(previous_panel != null) previous_panel.setVisible(false); //search_tab.setVisible(true); //setView( search_tab ); //previous_panel = search_tab; //search.setSelected(true); } }); search_button.setIcon( UISwingImageRepository.getIcon("search.png") ); search_button.setText("Search Files"); button_group.add( search_button ); main_buttons_bar.add( search_button ); shared_files_button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { setActiveMainTab(shared_tab, shared_files); // if(previous_panel != null) previous_panel.setVisible(false); // shared_tab.setVisible(true); // setView( shared_tab ); // previous_panel = shared_tab; // shared_files.setSelected(true); } }); shared_files_button.setIcon( UISwingImageRepository.getIcon("shared_files.png") ); shared_files_button.setText("Shared Files"); button_group.add( shared_files_button ); main_buttons_bar.add( shared_files_button ); statistics_button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { setActiveMainTab(statistic_tab, stats); //if(previous_panel != null) previous_panel.setVisible(false); //statistic_tab.setVisible(true); //setView( statistic_tab ); //previous_panel = statistic_tab; //stats.setSelected(true); } }); statistics_button.setText("Statistics"); statistics_button.setIcon( UISwingImageRepository.getIcon("statistics.png") ); button_group.add( statistics_button ); main_buttons_bar.add( statistics_button ); log_button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { setActiveMainTab(log_tab, logs); // if(previous_panel != null) previous_panel.setVisible(false); // log_tab.setVisible(true); // setView( log_tab ); // previous_panel = log_tab; // logs.setSelected(true); } }); log_button.setText("Log"); log_button.setIcon(ImgRep.getIcon("logs.png")); button_group.add( log_button ); main_buttons_bar.add( log_button ); // sets the actions to menu items servers.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { server_list_button.doClick(); } }); transfers.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { transfers_button.doClick(); } }); search.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { search_button.doClick(); } }); shared_files.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { shared_files_button.doClick(); } }); stats.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { statistics_button.doClick(); } }); logs.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { log_button.doClick(); } }); // ------------------------------------------------------------ final MainWindow _this = this; final JFileChooser file_chooser; FileSystemView file_system_view; file_system_view = FileSystemView.getFileSystemView(); file_chooser = new JFileChooser( file_system_view ); file_chooser.setFileSelectionMode(JFileChooser.FILES_ONLY); file_chooser.setMultiSelectionEnabled(false); file_chooser.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { if(event.getActionCommand() == JFileChooser.APPROVE_SELECTION) { final File file = file_chooser.getSelectedFile(); (new JMThread(new JMRunnable() { public void JMRun() { try { _server_manager.importList(file.getAbsolutePath()); } catch (Throwable e) { e.printStackTrace(); SwingUtilities.invokeLater(new Runnable() { public void run() {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -