//$Header: /cvsroot-fuse/mec-as2/39/mendelson/comm/as2/client/about/AboutDialog.java,v 1.1 2012/04/18 14:10:24 heller Exp $
package de.mendelson.comm.as2.client.about;
import javax.swing.*;
import de.mendelson.Copyright;
import de.mendelson.comm.as2.AS2ServerVersion;
import de.mendelson.util.MecResourceBundle;
import java.io.File;
import java.io.FileReader;
import java.io.StringWriter;
import java.util.*;
/*
* Copyright (C) mendelson-e-commerce GmbH Berlin Germany
*
* This software is subject to the license agreement set forth in the license.
* Please read and agree to all terms before using this software.
* Other product and brand names are trademarks of their respective owners.
*/
/**
* Dialog to show the about info
* @author S.Heller
* @version $Revision: 1.1 $
*/
public class AboutDialog extends JDialog {
/**Localize the GUI*/
private MecResourceBundle rb = null;
/** Creates new form AboutDialog */
public AboutDialog( JFrame parent ) {
super(parent, true);
//load resource bundle
try{
this.rb = (MecResourceBundle)ResourceBundle.getBundle(
ResourceBundleAboutDialog.class.getName());
} catch ( MissingResourceException e ) {
throw new RuntimeException( "Oops..resource bundle "
+ e.getClassName() + " not found." );
}
this.setTitle( this.rb.getResourceString( "title" ));
this.initComponents();
this.getRootPane().setDefaultButton( this.jButtonOk );
this.jLabelProductName.setText( "<HTML><b>"
+ AS2ServerVersion.getProductName()
+ " " + AS2ServerVersion.getVersion()
+ " <i>" + AS2ServerVersion.getBuild() + "</i></b><HTML>" );
this.jLabelBuildDate.setText(
this.rb.getResourceString( "builddate",
new Object[]{ AS2ServerVersion.getLastModificationDate() }));
this.jLabelCopyright.setText( Copyright.getCopyrightMessage() );
this.jLabelStreet.setText( AS2ServerVersion.getStreet() );
this.jLabelZip.setText( AS2ServerVersion.getZip());
this.jLabelTel.setText( AS2ServerVersion.getTelephone() );
this.jLabelEMail.setText( AS2ServerVersion.getInfoEmail() );
this.displayLicense();
}
/**Displays the license text in the GUI*/
private void displayLicense(){
try{
File file = new File( "license/LICENSE.gpl.txt" );
FileReader reader = new FileReader( file );
StringWriter writer = new StringWriter();
int read = 0;
char[] buffer = new char[4096];
while( read != -1 ){
read = reader.read( buffer );
if( read > 0 )
writer.write( buffer, 0, read );
}
reader.close();
writer.flush();
writer.close();
this.jTextAreaLicense.setText( writer.getBuffer().toString() );
this.jTextAreaLicense.setCaretPosition( 0 );
} catch( Exception e ){
this.jTextAreaLicense.setText( "License agreement not found." );
}
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {
java.awt.GridBagConstraints gridBagConstraints;
jTabbedPane = new javax.swing.JTabbedPane();
jPanelMain = new javax.swing.JPanel();
jPanelInfo = new javax.swing.JPanel();
jLabelProductName = new javax.swing.JLabel();
jLabelCopyright = new javax.swing.JLabel();
jLabelImage = new javax.swing.JLabel();
jLabelTel = new javax.swing.JLabel();
jLabelStreet = new javax.swing.JLabel();
jLabelZip = new javax.swing.JLabel();
jLabelEMail = new javax.swing.JLabel();
jLabelBuildDate = new javax.swing.JLabel();
jLabelWebsiteGerman = new javax.swing.JLabel();
jLabelWebSiteInternational = new javax.swing.JLabel();
jPanelSep = new javax.swing.JPanel();
jSeparator1 = new javax.swing.JSeparator();
jPanelSeparator = new javax.swing.JPanel();
jSeparator = new javax.swing.JSeparator();
jPanelLicense = new javax.swing.JPanel();
jScrollPaneLicense = new javax.swing.JScrollPane();
jTextAreaLicense = new javax.swing.JTextArea();
jPanelButton = new javax.swing.JPanel();
jButtonOk = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
setResizable(false);
addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent evt) {
closeDialog(evt);
}
});
getContentPane().setLayout(new java.awt.GridBagLayout());
jPanelMain.setLayout(new java.awt.GridBagLayout());
jPanelInfo.setLayout(new java.awt.GridBagLayout());
jLabelProductName.setFont(new java.awt.Font("Dialog", 1, 14));
jLabelProductName.setText("<productName>");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 0;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTHWEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(20, 5, 5, 5);
jPanelInfo.add(jLabelProductName, gridBagConstraints);
jLabelCopyright.setText("<copyright>");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 6;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 0, 5);
jPanelInfo.add(jLabelCopyright, gridBagConstraints);
jLabelImage.setIcon(new javax.swing.ImageIcon(getClass().getResource("/de/mendelson/comm/as2/client/about/logocommprotocols.gif"))); // NOI18N
jLabelImage.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.gridheight = 4;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(20, 5, 10, 5);
jPanelInfo.add(jLabelImage, gridBagConstraints);
jLabelTel.setText("<Tel>");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 9;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 0, 5);
jPanelInfo.add(jLabelTel, gridBagConstraints);
jLabelStreet.setText("<street>");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 7;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 0, 5);
jPanelInfo.add(jLabelStreet, gridBagConstraints);
jLabelZip.setText("<zip>");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 8;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 0, 5);
jPanelInfo.add(jLabelZip, gridBagConstraints);
jLabelEMail.setText("<email>");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 10;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
jPanelInfo.add(jLabelEMail, gridBagConstraints);
jLabelBuildDate.setText("<build date>");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 1;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
jPanelInfo.add(jLabelBuildDate, gridBagConstraints);
jLabelWebsiteGerman.setText("http://www.mendelson-e-c.com");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 13;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 15, 5);
jPanelInfo.add(jLabelWebsiteGerman, gridBagConstraints);
jLabelWebSiteInternational.setText("http://www.mendelson.de");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 12;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(15, 5, 0, 5);
jPanelInfo.add(jLabelWebSiteInternational, gridBagConstraints);
jPanelSep.setLayout(new java.awt.GridBagLayout());
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.weightx = 1.0;
jPanelSep.add(jSeparator1, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 5;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
jPanelInfo.add(jPanelSep, gridBagConstraints);
jPanelSeparator.setLayout(new java.awt.GridBagLayout());
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(1, 1, 1, 1);
jPanelSeparator.add(jSeparator, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 11;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
jPanelInfo.add(jPanelSeparator, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.weighty = 1.0;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
jPanelMain.add(jPanelInfo, gridBagConstraints);
jTabbedPane.addTab(this.rb.getResourceString( "tab.about" ), jPanelMain);
jPanelLicense.setLayout(new java.awt.GridBagLayout());
jTextAreaLicense.setColumns(20);
jTextAreaLicense.setFont(new java.awt.Font("Arial", 0, 12));
jTextAreaLicense.setRows(5);
jScrollPaneLicense.setViewportView(jTextAreaLicense);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.weighty = 1.0;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
jPanelLicense.add(jScrollPaneLicense, gridBagConstraints);
jTabbedPane.addTab(this.rb.getResourceString( "tab.license" ), jPanelLicense);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.weighty = 1.0;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
getContentPane().add(jTabbedPane, gridBagConstraints);
jButtonOk.setFont(new java.awt.Font("Dialog", 0, 12));
jButtonOk.setText(this.rb.getResourceString( "button.ok" ));
jButtonOk.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonOkActionPerformed(evt);
}
});
jPanelButton.add(jButtonOk);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.weightx = 1.0;
getContentPane().add(jPanelButton, gridBagConstraints);
java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
setBounds((screenSize.width-461)/2, (screenSize.height-407)/2, 461, 407);
}// </editor-fold>//GEN-END:initComponents
private void jButtonOkActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonOkActionPerformed
this.setVisible( false );
this.dispose();
}//GEN-LAST:event_jButtonOkActionPerformed
/** Closes the dialog */
private void closeDialog(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_closeDialog
this.setVisible(false);
this.dispose();
}//GEN-LAST:event_closeDialog
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JButton jButtonOk;
private javax.swing.JLabel jLabelBuildDate;
private javax.swing.JLabel jLabelCopyright;
private javax.swing.JLabel jLabelEMail;
private javax.swing.JLabel jLabelImage;
private javax.swing.JLabel jLabelProductName;
private javax.swing.JLabel jLabelStreet;
private javax.swing.JLabel jLabelTel;
private javax.swing.JLabel jLabelWebSiteInternational;
private javax.swing.JLabel jLabelWebsiteGerman;
private javax.swing.JLabel jLabelZip;
private javax.swing.JPanel jPanelButton;
private javax.swing.JPanel jPanelInfo;
private javax.swing.JPanel jPanelLicense;
private javax.swing.JPanel jPanelMain;
private javax.swing.JPanel jPanelSep;
private javax.swing.JPanel jPanelSeparator;
private javax.swing.JScrollPane jScrollPaneLicense;
private javax.swing.JSeparator jSeparator;
private javax.swing.JSeparator jSeparator1;
private javax.swing.JTabbedPane jTabbedPane;
private javax.swing.JTextArea jTextAreaLicense;
// End of variables declaration//GEN-END:variables
}