psmith 2003/09/22 00:01:23 Modified: src/java/org/apache/log4j/chainsaw WelcomePanel.java Log: Changes so that the Welcome panel can kick of the Tutorial. Revision Changes Path 1.5 +48 -53 jakarta-log4j/src/java/org/apache/log4j/chainsaw/WelcomePanel.java Index: WelcomePanel.java =================================================================== RCS file: /home/cvs/jakarta-log4j/src/java/org/apache/log4j/chainsaw/WelcomePanel.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- WelcomePanel.java 19 Sep 2003 08:15:33 -0000 1.4 +++ WelcomePanel.java 22 Sep 2003 07:01:23 -0000 1.5 @@ -49,20 +49,12 @@ package org.apache.log4j.chainsaw; -import org.apache.log4j.chainsaw.help.Tutorial; -import org.apache.log4j.chainsaw.icons.ChainsawIcons; - import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; -import java.awt.GridBagConstraints; -import java.awt.GridBagLayout; import java.awt.event.ActionEvent; - import java.io.IOException; - import java.net.URL; - import java.util.Stack; import javax.swing.AbstractAction; @@ -73,12 +65,13 @@ import javax.swing.JEditorPane; import javax.swing.JPanel; import javax.swing.JScrollPane; -import javax.swing.JSeparator; import javax.swing.JToolBar; import javax.swing.SwingUtilities; import javax.swing.event.HyperlinkEvent; import javax.swing.event.HyperlinkListener; +import org.apache.log4j.chainsaw.icons.ChainsawIcons; + /** * An initial Welcome Panel that is used when Chainsaw starts up, displays @@ -89,30 +82,32 @@ * @author Scott Deboy <[EMAIL PROTECTED]> */ public class WelcomePanel extends JPanel { - private static WelcomePanel instance = new WelcomePanel(); private Stack urlStack = new Stack(); private final JEditorPane textInfo = new JEditorPane(); - private final URLToolbar urlToolbar = new URLToolbar(); + private final URLToolbar urlToolbar = new URLToolbar(); private final URL helpURL; private final URL exampleConfigURL; private final URL tutorialURL; - - private WelcomePanel() { + private LogUI logui; + + public WelcomePanel(LogUI logui) { setLayout(new BorderLayout()); + this.logui = logui; setBackground(Color.white); add(urlToolbar, BorderLayout.NORTH); - helpURL = + helpURL = getClass().getClassLoader().getResource( "org/apache/log4j/chainsaw/WelcomePanel.html"); - + exampleConfigURL = - getClass().getClassLoader().getResource( - "org/apache/log4j/chainsaw/log4j-receiver-sample.xml"); + getClass().getClassLoader().getResource( + "org/apache/log4j/chainsaw/log4j-receiver-sample.xml"); + + tutorialURL = + getClass().getClassLoader().getResource( + "org/apache/log4j/chainsaw/help/tutorial.html"); - tutorialURL = getClass().getClassLoader().getResource( - "org/apache/log4j/chainsaw/help/tutorial.html"); - if (helpURL != null) { textInfo.setBorder(BorderFactory.createEmptyBorder(0, 5, 0, 5)); textInfo.setEditable(false); @@ -128,9 +123,6 @@ new HyperlinkListener() { public void hyperlinkUpdate(HyperlinkEvent e) { if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) { - if(e.getDescription().equals("StartTutorial")){ - new Thread(new Tutorial()).start(); - }else{ urlStack.add(textInfo.getPage()); try { @@ -139,7 +131,6 @@ } catch (IOException e1) { e1.printStackTrace(); } - } } } }); @@ -148,7 +139,7 @@ } } } - + void setURL(final URL url) { SwingUtilities.invokeLater( new Runnable() { @@ -162,7 +153,13 @@ } } }); - + } + + /** + * @return + */ + public final URL getTutorialURL() { + return tutorialURL; } private class URLToolbar extends JToolBar { @@ -172,11 +169,11 @@ if (urlStack.isEmpty()) { return; } - setURL((URL)urlStack.pop()); + setURL((URL) urlStack.pop()); } }; - + private final Action homeAction = new AbstractAction(null, new ImageIcon(ChainsawIcons.ICON_HOME)) { public void actionPerformed(ActionEvent e) { @@ -186,35 +183,41 @@ }; private URLToolbar() { - setFloatable(false); + setFloatable(false); updateToolbar(); previousAction.putValue(Action.SHORT_DESCRIPTION, "Back"); homeAction.putValue(Action.SHORT_DESCRIPTION, "Home"); JButton home = new SmallButton(homeAction); add(home); - - addSeparator(); + + addSeparator(); + JButton previous = new SmallButton(previousAction); previous.setEnabled(false); add(previous); - + addSeparator(); - add(new SmallButton(new AbstractAction("Tutorial"){ + add( + new SmallButton( + new AbstractAction("Tutorial", new ImageIcon(ChainsawIcons.HELP)) { + public void actionPerformed(ActionEvent e) { + logui.setupTutorial(); + } + })); + addSeparator(); + + final Action exampleConfigAction = + new AbstractAction("View example Receiver configuration") { + public void actionPerformed(ActionEvent e) { + setURL(exampleConfigURL); + } + }; - public void actionPerformed(ActionEvent e) { - setURL(tutorialURL); - - }})); - addSeparator(); - final Action exampleConfigAction = new AbstractAction("View example Receiver configuration"){ + exampleConfigAction.putValue( + Action.SHORT_DESCRIPTION, + "Displays an example Log4j configuration file with several Receivers defined."); - public void actionPerformed(ActionEvent e) { - setURL(exampleConfigURL); - - }}; - exampleConfigAction.putValue(Action.SHORT_DESCRIPTION, "Displays an example Log4j configuration file with several Receivers defined."); - JButton exampleButton = new SmallButton(exampleConfigAction); add(exampleButton); @@ -226,12 +229,4 @@ previousAction.setEnabled(!urlStack.isEmpty()); } } - /** - * - */ - public static WelcomePanel getInstance() { - return instance; - - } - }
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]