From: Holger Z. <hz...@us...> - 2004-09-19 19:54:01
|
Update of /cvsroot/jake2/jake2/src/jake2/qcommon In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21869/src/jake2/qcommon Modified Files: Q2DataDialog.java Q2DataTest.java Qcommon.java Log Message: splash screen with status messages Index: Qcommon.java =================================================================== RCS file: /cvsroot/jake2/jake2/src/jake2/qcommon/Qcommon.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** Qcommon.java 18 Sep 2004 12:36:53 -0000 1.7 --- Qcommon.java 19 Sep 2004 19:53:51 -0000 1.8 *************** *** 27,30 **** --- 27,31 ---- import jake2.Globals; + import jake2.Jake2; import jake2.client.*; import jake2.game.Cmd; *************** *** 73,78 **** --- 74,81 ---- Cbuf.Execute(); + Jake2.Q2Dialog.setStatus("initializing filesystem..."); FS.InitFilesystem(); + Jake2.Q2Dialog.setStatus("loading config..."); Cbuf.AddText("exec default.cfg\n"); Cbuf.Execute(); *************** *** 109,116 **** --- 112,122 ---- Cvar.Get("version", s, CVAR_SERVERINFO | CVAR_NOSET); + Jake2.Q2Dialog.setStatus("initializing network subsystem..."); NET.NET_Init(); //ok Netchan.Netchan_Init(); //ok + Jake2.Q2Dialog.setStatus("initializing server subsystem..."); SV_MAIN.SV_Init(); //ok + Jake2.Q2Dialog.setStatus("initializing client subsystem..."); CL.Init(); *************** *** 127,130 **** --- 133,137 ---- Com.Printf("====== Quake2 Initialized ======\n\n"); + Jake2.Q2Dialog.dispose(); } catch (longjmpException e) { Index: Q2DataDialog.java =================================================================== RCS file: /cvsroot/jake2/jake2/src/jake2/qcommon/Q2DataDialog.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Q2DataDialog.java 18 Sep 2004 12:36:53 -0000 1.1 --- Q2DataDialog.java 19 Sep 2004 19:53:51 -0000 1.2 *************** *** 7,17 **** package jake2.qcommon; ! import jake2.Globals; ! import java.awt.DisplayMode; import java.awt.GraphicsEnvironment; import java.io.IOException; import javax.swing.JFileChooser; /** --- 7,18 ---- package jake2.qcommon; ! import java.awt.*; import java.awt.DisplayMode; import java.awt.GraphicsEnvironment; import java.io.IOException; + import javax.swing.*; import javax.swing.JFileChooser; + import javax.swing.JPanel; /** *************** *** 22,32 **** /** Creates new form Q2DataDialog */ ! public Q2DataDialog(java.awt.Frame parent, boolean modal) { ! super(parent, modal); initComponents(); ! DisplayMode mode = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDisplayMode(); ! int x = (mode.getWidth() - getWidth()) / 2; ! int y = (mode.getHeight() - getHeight()) / 2; ! setLocation(x, y); } --- 23,34 ---- /** Creates new form Q2DataDialog */ ! public Q2DataDialog() { ! super(); initComponents(); ! ! DisplayMode mode = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDisplayMode(); ! int x = (mode.getWidth() - getWidth()) / 2; ! int y = (mode.getHeight() - getHeight()) / 2; ! setLocation(x, y); } *************** *** 39,44 **** java.awt.GridBagConstraints gridBagConstraints; ! jPanel1 = new javax.swing.JPanel(); ! jPanel2 = new javax.swing.JPanel(); jTextField1 = new javax.swing.JTextField(); changeButton = new javax.swing.JButton(); --- 41,47 ---- java.awt.GridBagConstraints gridBagConstraints; ! choosePanel = new javax.swing.JPanel(); ! statusPanel = new JPanel(); ! status = new JLabel("initializing Jake2..."); jTextField1 = new javax.swing.JTextField(); changeButton = new javax.swing.JButton(); *************** *** 48,53 **** setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE); ! setTitle("Looking for Quake2 level data..."); ! setModal(true); setResizable(false); addWindowListener(new java.awt.event.WindowAdapter() { --- 51,56 ---- setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE); ! setTitle("Jake2 - Bytonic Software"); ! setResizable(false); addWindowListener(new java.awt.event.WindowAdapter() { *************** *** 57,72 **** }); ! jPanel1.setBackground(new java.awt.Color(255, 255, 255)); ! jPanel1.setDoubleBuffered(false); ! jPanel1.setMaximumSize(new java.awt.Dimension(400, 200)); ! jPanel1.setMinimumSize(new java.awt.Dimension(400, 200)); ! jPanel1.setPreferredSize(new java.awt.Dimension(400, 200)); ! getContentPane().add(jPanel1, java.awt.BorderLayout.CENTER); ! ! jPanel2.setLayout(new java.awt.GridBagLayout()); ! jPanel2.setMaximumSize(new java.awt.Dimension(400, 100)); ! jPanel2.setMinimumSize(new java.awt.Dimension(400, 100)); ! jPanel2.setPreferredSize(new java.awt.Dimension(400, 100)); jTextField1.setPreferredSize(null); gridBagConstraints = new java.awt.GridBagConstraints(); --- 60,68 ---- }); ! choosePanel.setLayout(new java.awt.GridBagLayout()); ! choosePanel.setMaximumSize(new java.awt.Dimension(400, 100)); ! choosePanel.setMinimumSize(new java.awt.Dimension(400, 100)); ! choosePanel.setPreferredSize(new java.awt.Dimension(400, 100)); jTextField1.setPreferredSize(null); gridBagConstraints = new java.awt.GridBagConstraints(); *************** *** 77,81 **** gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); gridBagConstraints.weightx = 1.0; ! jPanel2.add(jTextField1, gridBagConstraints); changeButton.setText("change"); --- 73,77 ---- gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); gridBagConstraints.weightx = 1.0; ! choosePanel.add(jTextField1, gridBagConstraints); changeButton.setText("change"); *************** *** 91,95 **** gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; ! jPanel2.add(changeButton, gridBagConstraints); installButton.setText("Install"); --- 87,91 ---- gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; ! choosePanel.add(changeButton, gridBagConstraints); installButton.setText("Install"); *************** *** 105,109 **** gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; ! jPanel2.add(installButton, gridBagConstraints); exitButton.setText("Exit"); --- 101,105 ---- gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; ! choosePanel.add(installButton, gridBagConstraints); exitButton.setText("Exit"); *************** *** 118,122 **** gridBagConstraints.gridy = 1; gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); ! jPanel2.add(exitButton, gridBagConstraints); okButton.setText("OK"); --- 114,118 ---- gridBagConstraints.gridy = 1; gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); ! choosePanel.add(exitButton, gridBagConstraints); okButton.setText("OK"); *************** *** 132,139 **** gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; ! jPanel2.add(okButton, gridBagConstraints); ! getContentPane().add(jPanel2, java.awt.BorderLayout.SOUTH); pack(); }//GEN-END:initComponents --- 128,152 ---- gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; ! choosePanel.add(okButton, gridBagConstraints); ! //getContentPane().add(choosePanel, java.awt.BorderLayout.SOUTH); ! ! Jake2Canvas c = new Jake2Canvas(); ! getContentPane().add(c, BorderLayout.CENTER); + statusPanel.setLayout(new java.awt.GridBagLayout()); + statusPanel.setMaximumSize(new java.awt.Dimension(400, 100)); + statusPanel.setMinimumSize(new java.awt.Dimension(400, 100)); + statusPanel.setPreferredSize(new java.awt.Dimension(400, 100)); + gridBagConstraints = new java.awt.GridBagConstraints(); + gridBagConstraints.gridx = 0; + gridBagConstraints.gridy = 0; + gridBagConstraints.gridwidth = 1; + gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; + gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); + gridBagConstraints.weightx = 1.0; + statusPanel.add(status, gridBagConstraints); + getContentPane().add(statusPanel, java.awt.BorderLayout.SOUTH); + pack(); }//GEN-END:initComponents *************** *** 146,150 **** System.exit(1); dispose(); - notifyAll(); }//GEN-LAST:event_exitButtonActionPerformed --- 159,162 ---- *************** *** 154,161 **** FS.setCDDir(); ! synchronized (this) { ! notify(); } - dispose(); }//GEN-LAST:event_okButtonActionPerformed --- 166,172 ---- FS.setCDDir(); ! synchronized(this) { ! notifyAll(); } }//GEN-LAST:event_okButtonActionPerformed *************** *** 179,183 **** System.exit(1); dispose(); - notifyAll(); }//GEN-LAST:event_formWindowClosing --- 190,193 ---- *************** *** 186,190 **** */ public static void main(String args[]) { ! new Q2DataDialog(new javax.swing.JFrame(), true).show(); } --- 196,201 ---- */ public static void main(String args[]) { ! new Q2DataDialog().show(); ! System.out.println("Hi"); } *************** *** 193,198 **** private javax.swing.JButton exitButton; private javax.swing.JButton installButton; ! private javax.swing.JPanel jPanel1; ! private javax.swing.JPanel jPanel2; private javax.swing.JTextField jTextField1; private javax.swing.JButton okButton; --- 204,211 ---- private javax.swing.JButton exitButton; private javax.swing.JButton installButton; ! private Jake2Canvas canvas; ! private javax.swing.JPanel choosePanel; ! private JPanel statusPanel; ! private JLabel status; private javax.swing.JTextField jTextField1; private javax.swing.JButton okButton; *************** *** 200,202 **** --- 213,255 ---- private String dir; + + void showChooseDialog() { + getContentPane().remove(statusPanel); + getContentPane().add(choosePanel, BorderLayout.SOUTH); + validate(); + repaint(); + } + + void showStatus() { + getContentPane().remove(choosePanel); + getContentPane().add(statusPanel, BorderLayout.SOUTH); + validate(); + repaint(); + } + + void setStatus(String text) { + status.setText(text); + } + + static class Jake2Canvas extends Canvas { + private Image image; + Jake2Canvas() { + setSize(400, 200); + image = Toolkit.getDefaultToolkit().getImage(getClass().getResource("/splash.png")); + while (!Toolkit.getDefaultToolkit().prepareImage(image, -1, -1, null)) { + try { + Thread.sleep(50); + } catch (InterruptedException e) {} + } + } + + + /* (non-Javadoc) + * @see java.awt.Component#paint(java.awt.Graphics) + */ + public void paint(Graphics g) { + g.drawImage(image, 0, 0, null); + } + + } } Index: Q2DataTest.java =================================================================== RCS file: /cvsroot/jake2/jake2/src/jake2/qcommon/Q2DataTest.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Q2DataTest.java 18 Sep 2004 12:36:53 -0000 1.1 --- Q2DataTest.java 19 Sep 2004 19:53:51 -0000 1.2 *************** *** 7,10 **** --- 7,12 ---- package jake2.qcommon; + import jake2.Jake2; + /** * Q2DataTest *************** *** 14,23 **** static void run() { while (FS.LoadFile("pics/colormap.pcx") == null) { ! Q2DataDialog d = new Q2DataDialog(null, true); ! d.setVisible(true); try { ! d.wait(); ! } catch (Exception e) {} } } } --- 16,28 ---- static void run() { while (FS.LoadFile("pics/colormap.pcx") == null) { ! Jake2.Q2Dialog.showChooseDialog(); ! try { ! synchronized(Jake2.Q2Dialog) { ! Jake2.Q2Dialog.wait(); ! } ! } catch (InterruptedException e) {} } + Jake2.Q2Dialog.showStatus(); } } |