📄 aboutdialog.java
字号:
/* * JMule - Java file sharing client * Copyright (C) 2007-2008 JMule team ( jmule@jmule.org / http://jmule.org ) * * Any parts of this program derived from other projects, or contributed * by third-party developers are copyrighted by their respective authors. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * */package org.jmule.ui.swing.dialogs;import java.awt.Color;import java.awt.Cursor;import java.awt.GridLayout;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.util.Set;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JTable;import org.jmule.core.JMConstants;import org.jmule.ui.UIConstants;import org.jmule.ui.swing.BrowserLauncher;import org.jmule.ui.swing.ImgRep;import org.jmule.ui.swing.common.GradientPanel;/** * * Created on Sep 4, 2008 * @author javajox * @version $Revision: 1.1 $ * Last changed by $Author: javajox $ on $Date: 2008/10/16 17:35:11 $ */public class AboutDialog extends javax.swing.JDialog { private javax.swing.JPanel bottom_panel; private javax.swing.JLabel bug_reports_label; private javax.swing.JButton close_button; private javax.swing.JLabel downloads_label; private javax.swing.JPanel general_panel; private javax.swing.JLabel home_page_label; private javax.swing.JPanel internet_panel; private javax.swing.JLabel jmule_icon; private javax.swing.JLabel jmule_license_label; private javax.swing.JLabel jmule_name_label; private javax.swing.JLabel jmule_shot_desc_label; private javax.swing.JLabel jmule_version_label; private javax.swing.JPanel license_panel; private javax.swing.JScrollPane license_scroll_pane; private javax.swing.JTextArea license_text_area; private javax.swing.JLabel open_support_label; private javax.swing.JLabel project_forums_label; private javax.swing.JLabel sf_web_page_label; private javax.swing.JTabbedPane tabbed_pane; private GradientPanel top_panel; // new ----- private javax.swing.JLabel copyright_team; private javax.swing.JLabel forum_jmule_org_label; private javax.swing.JLabel forums_label; private javax.swing.JLabel jmule_org_label; private javax.swing.JLabel jmule_version; private javax.swing.JScrollPane scroll_pane; private javax.swing.JTextPane text_pane; private javax.swing.JLabel web_site_label; // end new class PropertiesPanel extends JPanel { private JScrollPane scroll_pane; private JTable table; public PropertiesPanel() { this.setLayout(new GridLayout(1,1)); String[] column_names = { "Property", "Value" }; Set keys = System.getProperties().keySet(); Object[][] data = new Object[keys.size()][2]; int i = 0; for(Object key : keys) { String value = (String) key; data[i][0] = key; data[i][1] = System.getProperty(value); ++i; } table = new JTable(data,column_names); scroll_pane = new JScrollPane(); scroll_pane.setViewportView(table); this.add(scroll_pane); } } class NightlyBuildPanel extends JPanel { private JLabel label_icon; public NightlyBuildPanel() { label_icon = new JLabel(); label_icon.setForeground(Color.RED); label_icon.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); label_icon.setIcon(ImgRep.getIcon("bomb.png")); label_icon.setText("<html><center>Attention !!! This is highly unstable nightly build of JMule,<br> your feedback on our forums FORUM.JMULE.ORG<br> will be greatly appreciated</center></html>"); label_icon.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); label_icon.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); this.setLayout(new GridLayout(1,1)); this.add(label_icon); } } public AboutDialog(java.awt.Frame parent, boolean modal) { super(parent, modal); this.setTitle("About"); initComponents(); this.setSize(500, 400); } private void initComponents() { top_panel = new GradientPanel(new java.awt.Color(255, 140, 5), new java.awt.Color(255, 255, 255)); jmule_name_label = new javax.swing.JLabel(); jmule_version_label = new javax.swing.JLabel(); jmule_icon = new javax.swing.JLabel(); tabbed_pane = new javax.swing.JTabbedPane(); general_panel = new javax.swing.JPanel(); internet_panel = new javax.swing.JPanel(); home_page_label = new javax.swing.JLabel(); sf_web_page_label = new javax.swing.JLabel(); project_forums_label = new javax.swing.JLabel(); bug_reports_label = new javax.swing.JLabel(); open_support_label = new javax.swing.JLabel(); downloads_label = new javax.swing.JLabel(); jmule_shot_desc_label = new javax.swing.JLabel(); jmule_license_label = new javax.swing.JLabel(); license_panel = new javax.swing.JPanel(); license_scroll_pane = new javax.swing.JScrollPane(); license_text_area = new javax.swing.JTextArea(); bottom_panel = new javax.swing.JPanel(); close_button = new javax.swing.JButton(); JPanel description_panel = new JPanel(); setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); description_panel.setLayout(new GridLayout(1,1)); top_panel.setBackground(new java.awt.Color(255, 153, 0)); top_panel.setPreferredSize(new java.awt.Dimension(100, 70)); jmule_name_label.setFont(new java.awt.Font("Dialog", 1, 14)); jmule_name_label.setText(JMConstants.JMULE_NAME); jmule_version_label.setFont(new java.awt.Font("Dialog", 0, 12)); jmule_version_label.setText("Version: " + JMConstants.CURRENT_JMULE_VERSION); jmule_icon.setIcon(ImgRep.getIcon("jmule_logo.png")); org.jdesktop.layout.GroupLayout top_panelLayout = new org.jdesktop.layout.GroupLayout(top_panel); top_panel.setLayout(top_panelLayout); top_panelLayout.setHorizontalGroup( top_panelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(top_panelLayout.createSequentialGroup() .addContainerGap() .add(top_panelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false) .add(jmule_name_label, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .add(jmule_version_label, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 217, Short.MAX_VALUE)) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 201, Short.MAX_VALUE) .add(jmule_icon) .addContainerGap()) ); top_panelLayout.setVerticalGroup( top_panelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(top_panelLayout.createSequentialGroup() .addContainerGap() .add(top_panelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(top_panelLayout.createSequentialGroup() .add(jmule_name_label) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(jmule_version_label)) .add(jmule_icon)) .addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); getContentPane().add(top_panel, java.awt.BorderLayout.PAGE_START);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -