📄 settingsdialog.java
字号:
GridBagLayout capacities_panelLayout = new GridBagLayout(); capacities_panelLayout.columnWidths = new int[] {7, 7, 7, 7}; capacities_panelLayout.rowHeights = new int[] {7, 7, 20}; capacities_panelLayout.columnWeights = new double[] {0.1, 0.1, 0.1, 0.1}; capacities_panelLayout.rowWeights = new double[] {0.1, 0.1, 0.1}; getContentPane().add(capacities_panel, new GridBagConstraints(0, 8, 4, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0)); capacities_panel.setLayout(capacities_panelLayout); capacities_panel.setBorder(BorderFactory.createTitledBorder("Capacities")); capacities_panel.add(download_capacity_label, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0)); capacities_panel.add(upload_capacity_label, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0)); capacities_panel.add(download_capacity_text_field, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0)); capacities_panel.add(upload_capacity_text_field, new GridBagConstraints(1, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0)); capacities_panel.add(capacity_k_bit_s_radiobox, new GridBagConstraints(1, 2, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0)); capacities_panel.add(capacity_k_byte_s_radiobox, new GridBagConstraints(2, 2, 1, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0)); button_group.add(capacity_k_bit_s_radiobox); button_group.add(capacity_k_byte_s_radiobox); } { operations_panel = new JPanel(); GridBagLayout operations_panelLayout = new GridBagLayout(); getContentPane().add(operations_panel, new GridBagConstraints(0, 9, 4, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0)); operations_panelLayout.rowWeights = new double[] {0.1}; operations_panelLayout.rowHeights = new int[] {7}; operations_panelLayout.columnWeights = new double[] {0.1, 0.1, 0.1, 0.1}; operations_panelLayout.columnWidths = new int[] {7, 7, 7, 7}; operations_panel.setLayout(operations_panelLayout); operations_panel.add(ok_button, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 10, 0, 10), 0, 0)); operations_panel.add(cancel_button, new GridBagConstraints(2, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 10, 0, 10), 0, 0)); operations_panel.add(apply_button, new GridBagConstraints(3, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 10, 0, 10), 0, 0)); } } } catch (Exception e) { e.printStackTrace(); } ok_button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { saveSettings(); setVisible(false); } }); apply_button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { saveSettings(); } }); cancel_button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { setVisible(false); } }); } public DialogAction getDialogAction() { return dialog_action; } public String getNickname() { return nickname_text_field.getText(); } public int getTCP() { return Integer.parseInt(tcp_text_field.getText()); } public int getUDP() { return Integer.parseInt(udp_text_field.getText()); } public boolean isUDPEnabled() { return enable_udp_checkbox.isSelected(); } public long getDownloadLimit() { return Long.parseLong(download_limit_text_field.getText()) * 1024; } public long getUploadLimit() { return Long.parseLong(upload_limit_text_field.getText()) * 1024; } public boolean isPromptOnExitEnabled() { return prompt_on_exit_checkbox.isSelected(); } public boolean isUpdateServerListOnConnect() { return update_servelist_checkbox.isSelected(); } public boolean isCheckForUpdatesEnabled() { return check_for_updates_checkbox.isSelected(); } public boolean isNightlyBuildWarning() { return nightly_build_warning_checkbox.isSelected(); } public boolean isDownloadLimitEnabled() { return enabled_download_limit_checkbox.isSelected(); } public boolean isUploadLimitEnabled() { return enabled_upload_limit_checkbox.isSelected(); } public long getDownloadCapacity() { long row_download = Long.parseLong(download_capacity_text_field.getText()); if(capacity_k_bit_s_radiobox.isSelected()) return (row_download/8)*1024; return row_download*1024; } public long getUploadCapacity() { long row_upload = Long.parseLong(upload_capacity_text_field.getText()); if(capacity_k_bit_s_radiobox.isSelected()) return (row_upload/8)*1024; return row_upload*1024; } public void setUDP(int udp) { udp_text_field.setText(udp + ""); } public void setTCP(int tcp) { tcp_text_field.setText(tcp + ""); } public void setDownloadBandwidth(long downloadBandwidth) { download_capacity_text_field.setText(downloadBandwidth + ""); } public void setUploadBandwidth(long uploadBandwidth) { upload_capacity_text_field.setText(uploadBandwidth + ""); } public void setDownloadLimitEnabled(boolean enabled) { enabled_download_limit_checkbox.setSelected(enabled); download_limit_text_field.setEnabled(enabled); } public void setUploadLimitEnabled(boolean enabled) { enabled_upload_limit_checkbox.setSelected(enabled); upload_limit_text_field.setEnabled(enabled); } public void setDownloadLimit(long downloadLimit) { download_limit_text_field.setText(downloadLimit + ""); } public void setUploadLimit(long uploadLimit) { upload_limit_text_field.setText(uploadLimit + ""); } public void setNickname(String nickName) { nickname_text_field.setText(nickName); } public void setUpdateServerListEnabled(boolean value) { update_servelist_checkbox.setSelected(value); } public void setCheckForUpdatesEnabled(boolean value) { check_for_updates_checkbox.setSelected(value); } public void setPromptOnExitEnabled(boolean value) { prompt_on_exit_checkbox.setSelected(value); } public void setNightlyBuildWarningEnabled(boolean value) { nightly_build_warning_checkbox.setSelected(value); } private void setInitData() { // core settings this.setNickname(_config.getNickName()); this.setTCP(_config.getTCP()); this.setUDP(_config.getUDP()); this.enable_udp_checkbox.setSelected(_config.isUDPEnabled()); this.udp_text_field.setEnabled(_config.isUDPEnabled()); this.setDownloadBandwidth(_config.getDownloadBandwidth()/1024); this.setUploadBandwidth(_config.getUploadBandwidth()/1024); if( _config.getDownloadLimit() != 0 ) { this.setDownloadLimitEnabled(true); this.setDownloadLimit(_config.getDownloadLimit()/1024); } else { this.setDownloadLimitEnabled(false); this.setDownloadLimit(0); } if( _config.getUploadLimit() !=0 ) { this.setUploadLimitEnabled(true); this.setUploadLimit(_config.getUploadLimit()/1024); } else { this.setUploadLimitEnabled(false); this.setUploadLimit(0); } // ui settings //setUpdateServerListEnabled(_ui_pref.isUpdate) this.setCheckForUpdatesEnabled(_ui_pref.isCheckForUpdatesAtStartup()); this.setPromptOnExitEnabled(_ui_pref.isPromptOnExitEnabled()); //this.setNightlyBuildWarningEnabled(_ui_pref. setNightlyBuildWarningEnabled(SwingConstants.SWING_ROOT))); this.setUpdateServerListEnabled(_config.getBooleanParameter(ConfigurationManager.SERVER_LIST_UPDATE_ON_CONNECT_KEY, true)); if(JMConstants.IS_NIGHTLY_BUILD) this.setNightlyBuildWarningEnabled(_ui_pref.isNightlyBuildWarning()); } private void saveSettings() { // core settings if( _config.getTCP() != this.getTCP() ) _config.setTCP(this.getTCP()); if( _config.getUDP() != this.getUDP() ) _config.setUDP(this.getUDP()); if( _config.isUDPEnabled() != this.isUDPEnabled() ) _config.setUDPEnabled(this.isUDPEnabled()); if( !_config.getNickName().equals(this.getNickname()) ) _config.setNickName(this.getNickname()); if( _config.getDownloadBandwidth() != this.getDownloadCapacity() )_config.setDownloadBandwidth(this.getDownloadCapacity()); if( _config.getUploadBandwidth() != this.getUploadCapacity()) _config.setUploadBandwidth(getUploadCapacity()); if( this.isDownloadLimitEnabled() ) _config.setDownloadLimit(getDownloadLimit()); else _config.setDownloadLimit(0); if( this.isUploadLimitEnabled() ) _config.setUploadLimit(getUploadLimit()); else _config.setUploadLimit(0); _config.setParameter(ConfigurationManager.SERVER_LIST_UPDATE_ON_CONNECT_KEY, isUpdateServerListOnConnect()); // swing ui settings //if(_ui_pref.is) if( _ui_pref.isPromptOnExitEnabled() != isPromptOnExitEnabled() ) _ui_pref.setPromptOnExit(isPromptOnExitEnabled()); if( _ui_pref.isCheckForUpdatesAtStartup() != this.isCheckForUpdatesEnabled() ) _ui_pref.setCheckForUpdatesAtStartup(isCheckForUpdatesEnabled()); if(JMConstants.IS_NIGHTLY_BUILD) if( _ui_pref.isNightlyBuildWarning() != this.isNightlyBuildWarning() ) _ui_pref.setNightlyBuildWarning(this.isNightlyBuildWarning()); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -