+/*
+ * ApplicationUI.java
+ *
+ * Created on 2007/07/21, 22:37
+ */
+
+package org.jent.checksmtp;
+
+import java.awt.Dimension;
+import java.awt.Toolkit;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+
+/**
+ *
+ * @author Takuya Ono <takuya-o@users.sourceforge.jp>
+ */
+public class ApplicationUI extends javax.swing.JFrame {
+
+ /** Creates new form ApplicationUI */
+ public ApplicationUI() {
+ initComponents();
+
+ resetDisplay();
+ }
+
+ private void resetDisplay() {
+ jTextFieldReceiverPort.setText(Integer.toString(ApplicationProperties.getSmtpPort()));
+ jTextFieldServerHost.setText(ApplicationProperties.getSmtpServerHost());
+ jTextFieldServerPort.setText(Integer.toString(ApplicationProperties.getSmtpServerPort()));
+ jCheckBoxEnableRemoteConnect.setSelected(ApplicationProperties.getSmtpEnebleRemoteConnect());
+
+ jCheckBoxLdap.setSelected(ApplicationProperties.getLdap());
+ jTextFieldProviderUrl.setText(ApplicationProperties.getLdapProviderURL());
+ jTextFieldBaseDn.setText(ApplicationProperties.getLdapRoot());
+ jTextFieldAttribute.setText(ApplicationProperties.getLdapAttributes());
+ jCheckBoxIsSjis.setSelected(ApplicationProperties.getLdapIsSjis());
+
+ }
+
+
+ /** 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() {
+ jTabbedPane = new javax.swing.JTabbedPane();
+ jPanelMail = new javax.swing.JPanel();
+ jLabel1 = new javax.swing.JLabel();
+ jLabel2 = new javax.swing.JLabel();
+ jLabel3 = new javax.swing.JLabel();
+ jTextFieldReceiverPort = new javax.swing.JTextField();
+ jTextFieldServerHost = new javax.swing.JTextField();
+ jTextFieldServerPort = new javax.swing.JTextField();
+ jCheckBoxEnableRemoteConnect = new javax.swing.JCheckBox();
+ jPanelLDAP = new javax.swing.JPanel();
+ jCheckBoxLdap = new javax.swing.JCheckBox();
+ jLabel4 = new javax.swing.JLabel();
+ jLabel5 = new javax.swing.JLabel();
+ jLabel6 = new javax.swing.JLabel();
+ jTextFieldProviderUrl = new javax.swing.JTextField();
+ jTextFieldBaseDn = new javax.swing.JTextField();
+ jTextFieldAttribute = new javax.swing.JTextField();
+ jCheckBoxIsSjis = new javax.swing.JCheckBox();
+ jButtonOK = new javax.swing.JButton();
+ jButtonCancel = new javax.swing.JButton();
+ jButtonQuit = new javax.swing.JButton();
+
+ setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
+ setTitle("Mail Dest. Confirm Properties");
+ addComponentListener(new java.awt.event.ComponentAdapter() {
+ public void componentHidden(java.awt.event.ComponentEvent evt) {
+ formComponentHidden(evt);
+ }
+ });
+
+ jLabel1.setText("Receiver Port:");
+
+ jLabel2.setText("Mail Server:");
+
+ jLabel3.setText("Port:");
+
+ jTextFieldReceiverPort.setText("8725");
+ jTextFieldReceiverPort.setToolTipText("Mail Destination Confirmer SMTP port number.");
+
+ jTextFieldServerHost.setText("mail");
+ jTextFieldServerHost.setToolTipText("Mail server host name or IP address.");
+
+ jTextFieldServerPort.setText("25");
+ jTextFieldServerPort.setToolTipText("Mail server port number.");
+
+ jCheckBoxEnableRemoteConnect.setText("Enable remote connect");
+ jCheckBoxEnableRemoteConnect.setToolTipText("Enable remote machine access this service. (Usually: disable)");
+ jCheckBoxEnableRemoteConnect.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
+ jCheckBoxEnableRemoteConnect.setMargin(new java.awt.Insets(0, 0, 0, 0));
+
+ org.jdesktop.layout.GroupLayout jPanelMailLayout = new org.jdesktop.layout.GroupLayout(jPanelMail);
+ jPanelMail.setLayout(jPanelMailLayout);
+ jPanelMailLayout.setHorizontalGroup(
+ jPanelMailLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanelMailLayout.createSequentialGroup()
+ .addContainerGap()
+ .add(jPanelMailLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanelMailLayout.createSequentialGroup()
+ .add(jLabel1)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jTextFieldReceiverPort, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 112, Short.MAX_VALUE)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jCheckBoxEnableRemoteConnect))
+ .add(jPanelMailLayout.createSequentialGroup()
+ .add(jLabel2)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jTextFieldServerHost, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 170, Short.MAX_VALUE)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jLabel3)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jTextFieldServerPort, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 54, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
+ .addContainerGap())
+ );
+
+ jPanelMailLayout.linkSize(new java.awt.Component[] {jLabel1, jLabel2}, org.jdesktop.layout.GroupLayout.HORIZONTAL);
+
+ jPanelMailLayout.setVerticalGroup(
+ jPanelMailLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanelMailLayout.createSequentialGroup()
+ .addContainerGap()
+ .add(jPanelMailLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel1)
+ .add(jCheckBoxEnableRemoteConnect)
+ .add(jTextFieldReceiverPort, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jPanelMailLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel2)
+ .add(jLabel3)
+ .add(jTextFieldServerHost, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jTextFieldServerPort, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .addContainerGap(74, Short.MAX_VALUE))
+ );
+ jTabbedPane.addTab("Mail", jPanelMail);
+
+ jCheckBoxLdap.setText("Enable LDAP search");
+ jCheckBoxLdap.setToolTipText("Enable LDAP configration.");
+ jCheckBoxLdap.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
+ jCheckBoxLdap.setMargin(new java.awt.Insets(0, 0, 0, 0));
+ jCheckBoxLdap.addChangeListener(new javax.swing.event.ChangeListener() {
+ public void stateChanged(javax.swing.event.ChangeEvent evt) {
+ jCheckBoxLdapStateChanged(evt);
+ }
+ });
+
+ jLabel4.setText("URL:");
+
+ jLabel5.setText("Root DN:");
+
+ jLabel6.setText("Attribuite:");
+
+ jTextFieldProviderUrl.setText("ldap://localhost:389/");
+ jTextFieldProviderUrl.setToolTipText("LDAP server URL.");
+ jTextFieldProviderUrl.setEnabled(false);
+
+ jTextFieldBaseDn.setText("C=JP");
+ jTextFieldBaseDn.setToolTipText("LDAP search start DN.");
+ jTextFieldBaseDn.setEnabled(false);
+
+ jTextFieldAttribute.setText("cn");
+ jTextFieldAttribute.setToolTipText("Display Attribuite. Example: cn title;lang-ja-jp");
+ jTextFieldAttribute.setEnabled(false);
+
+ jCheckBoxIsSjis.setText("Force SJIS");
+ jCheckBoxIsSjis.setToolTipText("Check this, when LDAP server use Shift JIS on network.");
+ jCheckBoxIsSjis.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
+ jCheckBoxIsSjis.setEnabled(false);
+ jCheckBoxIsSjis.setMargin(new java.awt.Insets(0, 0, 0, 0));
+
+ org.jdesktop.layout.GroupLayout jPanelLDAPLayout = new org.jdesktop.layout.GroupLayout(jPanelLDAP);
+ jPanelLDAP.setLayout(jPanelLDAPLayout);
+ jPanelLDAPLayout.setHorizontalGroup(
+ jPanelLDAPLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanelLDAPLayout.createSequentialGroup()
+ .add(jPanelLDAPLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanelLDAPLayout.createSequentialGroup()
+ .addContainerGap()
+ .add(jPanelLDAPLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jLabel6)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jLabel5)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jLabel4))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jPanelLDAPLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jTextFieldAttribute, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 296, Short.MAX_VALUE)
+ .add(jTextFieldBaseDn, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 296, Short.MAX_VALUE)
+ .add(jPanelLDAPLayout.createSequentialGroup()
+ .add(jTextFieldProviderUrl, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 213, Short.MAX_VALUE)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jCheckBoxIsSjis))))
+ .add(jPanelLDAPLayout.createSequentialGroup()
+ .add(12, 12, 12)
+ .add(jCheckBoxLdap)))
+ .addContainerGap())
+ );
+
+ jPanelLDAPLayout.linkSize(new java.awt.Component[] {jLabel4, jLabel5, jLabel6}, org.jdesktop.layout.GroupLayout.HORIZONTAL);
+
+ jPanelLDAPLayout.setVerticalGroup(
+ jPanelLDAPLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jPanelLDAPLayout.createSequentialGroup()
+ .addContainerGap()
+ .add(jCheckBoxLdap)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jPanelLDAPLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel4)
+ .add(jTextFieldProviderUrl, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jCheckBoxIsSjis))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jPanelLDAPLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel5)
+ .add(jTextFieldBaseDn, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jPanelLDAPLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel6)
+ .add(jTextFieldAttribute, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .addContainerGap(28, Short.MAX_VALUE))
+ );
+ jTabbedPane.addTab("LDAP", jPanelLDAP);
+
+ jButtonOK.setText("OK");
+ jButtonOK.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ jButtonOKActionPerformed(evt);
+ }
+ });
+
+ jButtonCancel.setText("Cancel");
+ jButtonCancel.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ jButtonCancelActionPerformed(evt);
+ }
+ });
+
+ jButtonQuit.setText("Quit");
+ jButtonQuit.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ jButtonQuitActionPerformed(evt);
+ }
+ });
+
+ org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
+ getContentPane().setLayout(layout);
+ layout.setHorizontalGroup(
+ layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jTabbedPane, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 400, Short.MAX_VALUE)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
+ .addContainerGap()
+ .add(jButtonQuit)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 145, Short.MAX_VALUE)
+ .add(jButtonOK)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jButtonCancel)
+ .addContainerGap())
+ );
+
+ layout.linkSize(new java.awt.Component[] {jButtonCancel, jButtonOK, jButtonQuit}, org.jdesktop.layout.GroupLayout.HORIZONTAL);
+
+ layout.setVerticalGroup(
+ layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(layout.createSequentialGroup()
+ .add(jTabbedPane, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 157, Short.MAX_VALUE)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jButtonCancel)
+ .add(jButtonOK)
+ .add(jButtonQuit))
+ .addContainerGap())
+ );
+ pack();
+ }// </editor-fold>//GEN-END:initComponents
+
+ private void formComponentHidden(java.awt.event.ComponentEvent evt) {//GEN-FIRST:event_formComponentHidden
+// TODO add your handling code here:
+ }//GEN-LAST:event_formComponentHidden
+
+ private void jButtonOKActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonOKActionPerformed
+ int port;
+ try {
+ port = Integer.parseInt(jTextFieldReceiverPort.getText());
+ } catch (NumberFormatException ex) {
+ ex.printStackTrace();
+ port = ApplicationProperties.getSmtpPort(); //last saved value.
+ jTextFieldReceiverPort.setText(Integer.toString(port));
+ }
+ String serverHost = jTextFieldServerHost.getText();
+ int serverPort;
+ try {
+ serverPort = Integer.parseInt(jTextFieldServerPort.getText());
+ } catch (NumberFormatException ex) {
+ ex.printStackTrace();
+ serverPort = ApplicationProperties.getSmtpServerPort(); //last saved value.
+ jTextFieldServerPort.setText(Integer.toString(serverPort));
+ }
+ boolean enableRemoteConnect = jCheckBoxEnableRemoteConnect.isSelected();
+
+ boolean enableLdap = jCheckBoxLdap.isSelected();
+ String ldapUrl = jTextFieldProviderUrl.getText();
+ String rootDn = jTextFieldBaseDn.getText();
+ String attribute = jTextFieldAttribute.getText();
+ boolean isSjis = jCheckBoxIsSjis.isSelected();
+
+ if ( port != ApplicationProperties.getSmtpPort()
+ || !serverHost.equals(ApplicationProperties.getSmtpServerHost())
+ || serverPort != ApplicationProperties.getSmtpServerPort()
+ || enableRemoteConnect != ApplicationProperties.getSmtpEnebleRemoteConnect()
+
+ || enableLdap != ApplicationProperties.getLdap()
+ || !ldapUrl.equals(ApplicationProperties.getLdapProviderURL())
+ || !rootDn.equals(ApplicationProperties.getLdapRoot())
+ || !attribute.equals(ApplicationProperties.getLdapAttributes())
+ || isSjis != ApplicationProperties.getLdapIsSjis()
+ || isModifiedPotition()
+ ) {
+ // When modify data, save properries file.
+ ApplicationProperties.setSmtpPort(port);
+ ApplicationProperties.setSmtpServerHost(serverHost);
+ ApplicationProperties.setSmtpServerPort(serverPort);
+ ApplicationProperties.setSmtpEnableRemoteConnect(enableRemoteConnect);
+
+ ApplicationProperties.setLdap(enableLdap);
+ ApplicationProperties.setLdapProviderURL(ldapUrl);
+ ApplicationProperties.setLdapRoot(rootDn);
+ ApplicationProperties.setLdapAttributes(attribute);
+ ApplicationProperties.setLdapIsSjis(isSjis);
+
+ smtpClient.configChangeNotify();
+ if ( !ApplicationProperties.save() ) {
+ //TODO: Display Save error Dialog.
+ }
+ }
+ iconified();
+
+ }//GEN-LAST:event_jButtonOKActionPerformed
+
+ private void jButtonQuitActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonQuitActionPerformed
+ System.exit(0);
+ }//GEN-LAST:event_jButtonQuitActionPerformed
+
+ private void jCheckBoxLdapStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_jCheckBoxLdapStateChanged
+// TODO add your handling code here:
+ boolean check = jCheckBoxLdap.isSelected();
+ jTextFieldProviderUrl.setEnabled(check);
+ jTextFieldBaseDn.setEnabled(check);
+ jTextFieldAttribute.setEnabled(check);
+ jCheckBoxIsSjis.setEnabled(check);
+ }//GEN-LAST:event_jCheckBoxLdapStateChanged
+
+ private void jButtonCancelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonCancelActionPerformed
+// TODO add your handling code here:
+ //this.setVisible(false);
+ resetDisplay();
+ iconified();
+ }//GEN-LAST:event_jButtonCancelActionPerformed
+
+ private boolean isModifiedPotition() {
+ int x = this.getX(); //TODO: get real potition on screen.
+ int y = this.getY();
+ int h = this.getHeight();
+ int w = this.getWidth();
+ boolean modified = false;
+
+ if ( x != ApplicationProperties.getConfigDialogPosX()
+ || y != ApplicationProperties.getConfigDialogPosY()
+ || h != ApplicationProperties.getConfigDialogPosH()
+ || w != ApplicationProperties.getConfigDialogPosW()
+ ) {
+ modified = true;
+ ApplicationProperties.setConfigDialogPosX(x);
+ ApplicationProperties.setConfigDialogPosY(y);
+ ApplicationProperties.setConfigDialogPosH(h);
+ ApplicationProperties.setConfigDialogPosW(w);
+ }
+ return modified;
+ }
+
+
+ private boolean initSystemTray() {
+ boolean useSystemTray = false;
+ try {
+ Class.forName("java.awt.SystemTray");
+ /* TODO: SystemTray suuport
+ java.awt.SystemTray tray = java.awt.SystemTray.getSystemTray();
+ if(tray.isSupported()){
+ java.awt.TrayIcon trayIcon = new java.awt.TrayIcon(
+ new javax.swing.ImageIcon(
+ SystemTrayTest.class.getResource("images/mdc.gif")).getImage());
+ trayIcon.setImageAutoSize(true);
+
+ // create a action listener to listen for default action executed on the tray icon
+ ActionListener listener = new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ // execute default action of the application
+ if ( e.paramString().equal("Quit")) {
+ System.exit(0);
+ } else {
+ setVisible(true);
+ if ( this.getExtendedState() == ICONIFIED ) {
+ this.setExtendedState(NORMAL);
+ }
+ }
+ }
+ };
+ java.awt.PopupMenu popup = new java.awt.PopupMenu();
+ popup.addActionListener(listener);
+ popup.add("Config");
+ popup.add("Quit");
+ trayIcon.setPopupMenu(popup);
+ tray.add(trayIcon);
+ useSystemTray = true;
+ }
+ */
+ } catch (ClassNotFoundException ex) {
+ // Do not support SystemTray on this VM.
+ }
+ return useSystemTray;
+}
+
+private void iconified() {
+ if ( useSystemTray ) {
+ this.setVisible(false);
+ } else {
+ this.setExtendedState(ICONIFIED);
+ }
+}
+
+/**
+ * @param args the command line arguments
+ */
+public static void main(String args[]) {
+ /* TKYN OLD
+ try {
+ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ */
+
+ //TKYN ORIGNAL BLOCK
+ java.awt.EventQueue.invokeLater(new Runnable() {
+ public void run() {
+ Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
+ ApplicationUI applicationUI = new ApplicationUI();
+ applicationUI.setVisible(true);
+
+ applicationUI.useSystemTray = applicationUI.initSystemTray();
+
+ //If exsist configuration file, iconise at start up.
+ if ( ApplicationProperties.isFileLoaded() ) {
+ int x = ApplicationProperties.getConfigDialogPosX();
+ int y = ApplicationProperties.getConfigDialogPosY();
+ int w = ApplicationProperties.getConfigDialogPosW();
+ int h = ApplicationProperties.getConfigDialogPosH();
+
+ if ( x > screenSize.width ) {
+ x = screenSize.width - w;
+ if ( x < 0 ) { x = 0; };
+ }
+ if ( y > screenSize.height ) {
+ y = screenSize.height - h;
+ if ( y < 0 ) { y = 0; };
+ }
+ applicationUI.setBounds(x, y, w, h);
+ applicationUI.iconified();
+ } else {
+ //No Configuration file.
+ Dimension frameSize = ApplicationProperties.getConfigurationDialogSize();
+ if (frameSize.height > screenSize.height) {
+ frameSize.height = screenSize.height;
+ }
+ if (frameSize.width > screenSize.width) {
+ frameSize.width = screenSize.width;
+ }
+
+ applicationUI.setBounds(
+ (screenSize.width - frameSize.width) / 2,
+ (screenSize.height - frameSize.height) / 2,
+ frameSize.width, frameSize.height );
+ }
+ }
+ });
+
+ smtpClient = new SMTPclient();
+}
+private static SMTPclient smtpClient = null;
+private boolean useSystemTray = false;
+
+ // Variables declaration - do not modify//GEN-BEGIN:variables
+ private javax.swing.JButton jButtonCancel;
+ private javax.swing.JButton jButtonOK;
+ private javax.swing.JButton jButtonQuit;
+ private javax.swing.JCheckBox jCheckBoxEnableRemoteConnect;
+ private javax.swing.JCheckBox jCheckBoxIsSjis;
+ private javax.swing.JCheckBox jCheckBoxLdap;
+ private javax.swing.JLabel jLabel1;
+ private javax.swing.JLabel jLabel2;
+ private javax.swing.JLabel jLabel3;
+ private javax.swing.JLabel jLabel4;
+ private javax.swing.JLabel jLabel5;
+ private javax.swing.JLabel jLabel6;
+ private javax.swing.JPanel jPanelLDAP;
+ private javax.swing.JPanel jPanelMail;
+ private javax.swing.JTabbedPane jTabbedPane;
+ private javax.swing.JTextField jTextFieldAttribute;
+ private javax.swing.JTextField jTextFieldBaseDn;
+ private javax.swing.JTextField jTextFieldProviderUrl;
+ private javax.swing.JTextField jTextFieldReceiverPort;
+ private javax.swing.JTextField jTextFieldServerHost;
+ private javax.swing.JTextField jTextFieldServerPort;
+ // End of variables declaration//GEN-END:variables
+
+}