MainWindow.java

Go to the documentation of this file.
00001 /*
00002  * MainWindow.java
00003  *
00004  * Created on 7 octobre 2003, 13:38
00005  *  
00006  *  Copyright (C) 2003 Philippe MOULIN
00007  *  www.net2map.org
00008  *
00009  *  This program is free software; you can redistribute it and/or
00010  *  modify it under the terms of the GNU General Public License
00011  *  as published by the Free Software Foundation; either version 2
00012  *  of the License, or (at your option) any later version.
00013  *
00014  *  This program is distributed in the hope that it will be useful,
00015  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00016  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017  *  GNU Lesser General Public License for more details.
00018  *
00019  *  You should have received a copy of the GNU General Public License
00020  *  along with this program; if not, write to the Free Software
00021  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00022  */
00023 
00026 package org.net2map.pov.gui;
00027 
00028 import org.net2map.pov.p2p.*;
00029 
00030 import org.apache.log4j.*;
00031  
00036 public class MainWindow extends javax.swing.JFrame
00037 {
00038     static public Logger logger = Logger.getLogger(MainWindow.class.getName());   
00039     static HTMLLayout theLog4jLayout = new HTMLLayout(); 
00040     //private LocalNode theLocalNode = null;
00041     //private RequestProcessor theRequestProcessor = null;
00042     
00043     private PanelContainer mainPanelContainer = new PanelContainer(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("main"),java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("the_main_panel_container"), PanelContainer.TABS_ON_TOP_MODE);
00044     
00045     //Create panels
00046     private SearchPanel theSearchPanel = null; 
00047     private ChatPanel theChatPanel = null;
00048     private LogMessagesPanel theLogMessagesPanel = null;
00049     private ConfigurationPanel theConfigurationPanel = null;
00050     private IndexingPanel theIndexingPanel = null;
00051     
00052     private com.incors.plaf.kunststoff.KunststoffLookAndFeel kunststoffLnF = null;
00053     private ColorTheme theColorTheme = null;
00055     public MainWindow()
00056     {
00057         // Set up a simple configuration that logs on the console.
00058         org.apache.log4j.BasicConfigurator.configure();
00059         logger.setLevel((org.apache.log4j.Level)org.apache.log4j.Priority.DEBUG);
00060         try
00061         {
00062             
00063             //PropertyConfigurator.configure(ClassLoader.getSystemResource("log4j.properties"));
00064             Logger.getRootLogger().addAppender(new org.apache.log4j.RollingFileAppender(theLog4jLayout,"jxta.log.html",true));
00065             logger.addAppender(new org.apache.log4j.RollingFileAppender(theLog4jLayout,"pov.log.html",true));
00066         }
00067         catch( java.io.IOException theIOException )
00068         {
00069             System.out.println("EXCEPTION!:\t failed to open log file " + theIOException);
00070         }
00071         try
00072         {
00073             
00074             kunststoffLnF
00075             = new com.incors.plaf.kunststoff.KunststoffLookAndFeel();
00076             theColorTheme = new ColorTheme();
00077             kunststoffLnF.setCurrentTheme(theColorTheme);
00078             kunststoffLnF.setCurrentGradientTheme(theColorTheme);
00079             javax.swing.UIManager.setLookAndFeel(kunststoffLnF);
00080         }
00081         catch(javax.swing.UnsupportedLookAndFeelException theException)
00082         {
00083             System.out.println(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("Failed_to_set_Kunststoff_Look_and_feel!"));
00084         }
00085         javax.swing.UIManager.getLookAndFeelDefaults().put("ClassLoader", getClass().getClassLoader());
00086         initComponents();
00087         
00088         theLogMessagesPanel = new LogMessagesPanel();        
00089         Logger.getRootLogger().addAppender(theLogMessagesPanel.getLogMessagesPanelAppender());
00090 
00091 
00092 
00093         
00094         theConfigurationPanel = new ConfigurationPanel(this);
00095         theIndexingPanel = new IndexingPanel();
00096 
00097         
00098         //theRequestProcessor = new RequestProcessor(theLocalNode);
00099         //theLocalNode.setRequestProcessor(theRequestProcessor);
00100         //theRequestProcessor.setResultListener(theSearchPanel);
00101         //theSearchPanel.setRequestProcessor(theRequestProcessor);
00102         
00103         this.setSize(640,480);        
00104         logger.debug("application started!");
00105         
00106 
00107         mainPanelContainer.addPanel(theLogMessagesPanel);
00108         mainPanelContainer.addPanel(theConfigurationPanel);
00109         mainPanelContainer.addPanel(theIndexingPanel);
00110         
00111         this.getContentPane().add(mainPanelContainer);
00112         javax.swing.SwingUtilities.updateComponentTreeUI(this);
00113         //this.validate();
00114         logger.warn("The ressource bundle's locale:" + java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getLocale());
00115         logger.warn("The ressource bundle'content:" + java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getKeys().toString());
00116     }
00117     
00118     public void displayNetworkDependentPanels()
00119     {                 
00120         theSearchPanel = new SearchPanel();
00121         theChatPanel = new ChatPanel();  
00122         //theChatPanel.setLocalNode(theLocalNode);
00123         mainPanelContainer.addPanel(theSearchPanel);
00124         mainPanelContainer.addPanel(theChatPanel);
00125         javax.swing.SwingUtilities.updateComponentTreeUI(this);
00126     }
00127     
00133     private void initComponents()//GEN-BEGIN:initComponents
00134     {
00135         desktopPane = new javax.swing.JDesktopPane();
00136         menuBar = new javax.swing.JMenuBar();
00137         fileMenu = new javax.swing.JMenu();
00138         openMenuItem = new javax.swing.JMenuItem();
00139         saveMenuItem = new javax.swing.JMenuItem();
00140         saveAsMenuItem = new javax.swing.JMenuItem();
00141         exitMenuItem = new javax.swing.JMenuItem();
00142         editMenu = new javax.swing.JMenu();
00143         cutMenuItem = new javax.swing.JMenuItem();
00144         copyMenuItem = new javax.swing.JMenuItem();
00145         pasteMenuItem = new javax.swing.JMenuItem();
00146         deleteMenuItem = new javax.swing.JMenuItem();
00147         helpMenu = new javax.swing.JMenu();
00148         contentMenuItem = new javax.swing.JMenuItem();
00149         aboutMenuItem = new javax.swing.JMenuItem();
00150 
00151         addWindowListener(new java.awt.event.WindowAdapter()
00152         {
00153             public void windowClosing(java.awt.event.WindowEvent evt)
00154             {
00155                 exitForm(evt);
00156             }
00157         });
00158 
00159         getContentPane().add(desktopPane, java.awt.BorderLayout.CENTER);
00160 
00161         fileMenu.setText(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("File"));
00162         openMenuItem.setText(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("Open"));
00163         fileMenu.add(openMenuItem);
00164 
00165         saveMenuItem.setText(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("Save"));
00166         fileMenu.add(saveMenuItem);
00167 
00168         saveAsMenuItem.setText(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("Save_As_..."));
00169         fileMenu.add(saveAsMenuItem);
00170 
00171         exitMenuItem.setText(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("Exit"));
00172         exitMenuItem.addActionListener(new java.awt.event.ActionListener()
00173         {
00174             public void actionPerformed(java.awt.event.ActionEvent evt)
00175             {
00176                 exitMenuItemActionPerformed(evt);
00177             }
00178         });
00179 
00180         fileMenu.add(exitMenuItem);
00181 
00182         menuBar.add(fileMenu);
00183 
00184         editMenu.setText(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("Edit"));
00185         cutMenuItem.setText(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("Cut"));
00186         editMenu.add(cutMenuItem);
00187 
00188         copyMenuItem.setText(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("Copy"));
00189         editMenu.add(copyMenuItem);
00190 
00191         pasteMenuItem.setText(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("Paste"));
00192         editMenu.add(pasteMenuItem);
00193 
00194         deleteMenuItem.setText(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("Delete"));
00195         editMenu.add(deleteMenuItem);
00196 
00197         menuBar.add(editMenu);
00198 
00199         helpMenu.setText(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("Help"));
00200         contentMenuItem.setText(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("Contents"));
00201         helpMenu.add(contentMenuItem);
00202 
00203         aboutMenuItem.setText(java.util.ResourceBundle.getBundle("org/net2map/pov/gui/properties").getString("About"));
00204         helpMenu.add(aboutMenuItem);
00205 
00206         menuBar.add(helpMenu);
00207 
00208         setJMenuBar(menuBar);
00209 
00210         pack();
00211     }//GEN-END:initComponents
00212     
00213     private void exitMenuItemActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_exitMenuItemActionPerformed
00214     {
00215         LocalNode.getInstance().stopEverything();
00216         org.net2map.pov.indexer.IndexerTask.stopThread();
00217         System.exit(0);
00218     }//GEN-LAST:event_exitMenuItemActionPerformed
00219     
00221     private void exitForm(java.awt.event.WindowEvent evt)//GEN-FIRST:event_exitForm
00222     {        
00223         LocalNode.getInstance().stopEverything();
00224         org.net2map.pov.indexer.IndexerTask.stopThread();
00225         System.exit(0);
00226     }//GEN-LAST:event_exitForm
00227     
00231     public static void main(String args[])
00232     {
00233         new MainWindow().show();
00234     }
00235     
00236     // Variables declaration - do not modify//GEN-BEGIN:variables
00237     private javax.swing.JMenuItem aboutMenuItem;
00238     private javax.swing.JMenuItem contentMenuItem;
00239     private javax.swing.JMenuItem copyMenuItem;
00240     private javax.swing.JMenuItem cutMenuItem;
00241     private javax.swing.JMenuItem deleteMenuItem;
00242     private javax.swing.JDesktopPane desktopPane;
00243     private javax.swing.JMenu editMenu;
00244     private javax.swing.JMenuItem exitMenuItem;
00245     private javax.swing.JMenu fileMenu;
00246     private javax.swing.JMenu helpMenu;
00247     private javax.swing.JMenuBar menuBar;
00248     private javax.swing.JMenuItem openMenuItem;
00249     private javax.swing.JMenuItem pasteMenuItem;
00250     private javax.swing.JMenuItem saveAsMenuItem;
00251     private javax.swing.JMenuItem saveMenuItem;
00252     // End of variables declaration//GEN-END:variables
00253     
00254 }
Accueil | Téléchargement | Manuel | Doc. technique | Sources CVS | Faq | Nous contacter
©2003 - All Rights Reserved