xref: /trunk/main/scripting/workben/installer/Welcome.java (revision cdf0e10c4e3984b49a9502b011690b615761d4a3)
1 package installer;
2 
3 /*
4  * Welcome.java
5  *
6  * Created on 04 July 2002, 15:43
7  */
8 
9 /**
10  *
11  * @author  mike
12  */
13 import java.awt.event.*;
14 import javax.swing.*;
15 import java.io.*;
16 import java.net.*;
17 import java.util.Properties;
18 
19 public class Welcome extends javax.swing.JPanel implements ActionListener {
20 
21     /** Creates new form Welcome */
22     public Welcome(InstallWizard wizard) {
23     this.wizard = wizard;
24     setBorder(new javax.swing.border.EtchedBorder(javax.swing.border.EtchedBorder.RAISED));
25         initComponents();
26     }
27 
28     /** This method is called from within the constructor to
29      * initialize the form.
30      * WARNING: Do NOT modify this code. The content of this method is
31      * always regenerated by the Form Editor.
32      */
33     private void initComponents() {//GEN-BEGIN:initComponents
34         welcomePanel = new javax.swing.JPanel();
35         area = new javax.swing.JTextArea();
36     nextButtonEnable = true;
37 
38         setLayout(new java.awt.BorderLayout());
39 
40         welcomePanel.setLayout(new java.awt.BorderLayout());
41         area.setEditable(false);
42         area.setLineWrap(true);
43 
44         String message = "\n\tOffice Scripting Framework Version 0.3" +
45             "\n\n\n\tPlease ensure that you have exited from Office";
46 
47     /* String userDir = (String) System.getProperty( "user.dir" );
48     boolean isValid = validateCurrentUserDir(userDir);
49     if( !isValid ) {
50         nextButtonEnable = false;
51         message = "Please run Installer from the program directory in a valid Office installation";
52         setUpWelcomePanel(message);
53         return;
54     }
55 
56     int programPosition = userDir.lastIndexOf("program");
57     String offInstallPth = null;
58     offInstallPth = userDir.substring( 0, programPosition );
59 
60         wizard.storeLocation(offInstallPth); */
61     setUpWelcomePanel(message);
62 
63     }//GEN-END:initComponents
64 
65     private void setUpWelcomePanel(String message){
66     area.setText( message );
67         welcomePanel.add(area, java.awt.BorderLayout.CENTER);
68         add(welcomePanel, java.awt.BorderLayout.CENTER);
69     NavPanel nav = new NavPanel(wizard, false, nextButtonEnable, true, "", InstallWizard.VERSIONS);
70     nav.setNextListener(this);
71     add(nav, java.awt.BorderLayout.SOUTH);
72 
73     //Banner br = new Banner();
74     //add(br, java.awt.BorderLayout.WEST);
75     }
76 
77 
78     private boolean validateCurrentUserDir(String userDir){
79 
80 
81 
82     Properties props = null;
83 
84         File fileVersions = null;
85     try
86     {
87             fileVersions = InstUtil.buildSversionLocation();
88     }
89     catch(IOException eFnF)
90     {
91             System.err.println("Cannot find sversion.ini/.sversionrc");
92             JOptionPane.showMessageDialog(this, eFnF.getMessage(), "File not Found", JOptionPane.ERROR_MESSAGE);
93             wizard.exitForm(null);
94     }
95 
96         try {
97             props = InstUtil.getOfficeVersions(fileVersions);
98         }
99         catch (IOException eIO) {
100             //Message about no installed versions found
101             System.err.println("Failed to parse SVERSION");
102             JOptionPane.showMessageDialog(this, "There was a problem reading from the Office settings file.", "Parse Error", JOptionPane.ERROR_MESSAGE);
103             wizard.exitForm(null);
104         }
105 
106 
107     boolean versionMatch = false;
108 
109     for( int i = 0; i < versions.length; i++ ) {
110         String key = versions[i];
111         String progPath = ( String )props.getProperty( key );
112         if ( progPath != null ){
113             progPath = progPath  + File.separator + "program";
114 
115             File tmpFile = new File(progPath + File.separator + "oostubversion.txt");
116             try{
117             tmpFile.createNewFile();
118 
119                 if( new File(userDir + File.separator + "oostubversion.txt").exists())
120                 {
121                     versionMatch = true;
122                     break;
123                 }
124             }
125             catch( IOException e)
126             {
127                 // Fail silently
128             }
129             tmpFile.delete();
130         }
131     }
132     return versionMatch;
133     }
134 
135 
136 
137     public java.awt.Dimension getPreferredSize() {
138         return new java.awt.Dimension(InstallWizard.DEFWIDTH, InstallWizard.DEFHEIGHT);
139     }
140 
141     public void actionPerformed(ActionEvent ev)
142     {
143         //Perform next actions here...
144     }
145 
146 
147     // Variables declaration - do not modify//GEN-BEGIN:variables
148     private javax.swing.JPanel welcomePanel;
149     private javax.swing.JTextArea area;
150     private InstallWizard wizard;
151     //private static final String [] versions = {"OpenOffice.org 643", "StarOffice 6.1"};
152     private static final String [] versions = { "StarOffice 6.1" };
153     private boolean nextButtonEnable = true;
154 
155     // End of variables declaration//GEN-END:variables
156 }
157