psmith 2003/06/17 16:28:00 Modified: src/java/org/apache/log4j/chainsaw ChainsawToolBarAndMenus.java Log: Moved out some inner classes to top level, as they were getting a bit big and are more relevant to other areas than just inside the Toolbar and menu class. Revision Changes Path 1.38 +181 -692 jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/ChainsawToolBarAndMenus.java Index: ChainsawToolBarAndMenus.java =================================================================== RCS file: /home/cvs/jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/ChainsawToolBarAndMenus.java,v retrieving revision 1.37 retrieving revision 1.38 diff -u -r1.37 -r1.38 --- ChainsawToolBarAndMenus.java 17 Jun 2003 20:06:50 -0000 1.37 +++ ChainsawToolBarAndMenus.java 17 Jun 2003 23:28:00 -0000 1.38 @@ -46,6 +46,7 @@ * Apache Software Foundation, please see <http://www.apache.org/>. * */ + /* * Created on May 3, 2003 * @@ -54,8 +55,14 @@ */ package org.apache.log4j.chainsaw; +import org.apache.log4j.chainsaw.icons.ChainsawIcons; +import org.apache.log4j.chainsaw.prefs.LoadSettingsEvent; +import org.apache.log4j.chainsaw.prefs.SaveSettingsEvent; +import org.apache.log4j.chainsaw.prefs.SettingsListener; +import org.apache.log4j.chainsaw.prefs.SettingsManager; +import org.apache.log4j.helpers.LogLog; + import java.awt.BorderLayout; -import java.awt.Component; import java.awt.Container; import java.awt.Dimension; import java.awt.FlowLayout; @@ -68,17 +75,17 @@ import java.awt.event.KeyEvent; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; + import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; -import java.util.List; + import javax.swing.AbstractAction; import javax.swing.Action; import javax.swing.BorderFactory; import javax.swing.Box; import javax.swing.BoxLayout; import javax.swing.ButtonGroup; -import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JCheckBoxMenuItem; @@ -110,40 +117,16 @@ import javax.swing.event.ChangeListener; import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; -import javax.swing.table.AbstractTableModel; -import javax.swing.tree.DefaultMutableTreeNode; -import javax.swing.tree.DefaultTreeCellRenderer; -import javax.swing.tree.DefaultTreeModel; -import javax.swing.tree.TreeModel; -import org.apache.log4j.LogManager; -import org.apache.log4j.chainsaw.icons.ChainsawIcons; -import org.apache.log4j.chainsaw.prefs.LoadSettingsEvent; -import org.apache.log4j.chainsaw.prefs.SaveSettingsEvent; -import org.apache.log4j.chainsaw.prefs.SettingsListener; -import org.apache.log4j.chainsaw.prefs.SettingsManager; -import org.apache.log4j.helpers.LogLog; -import org.apache.log4j.net.AddressBased; -import org.apache.log4j.net.PortBased; -import org.apache.log4j.net.SocketReceiver; -import org.apache.log4j.plugins.PluginRegistry; -import org.apache.log4j.plugins.Receiver; /** * Encapsulates the full Toolbar, and menus and all the actions that can be performed from it. - * * @author Paul Smith <[EMAIL PROTECTED]> * @author Scott Deboy <[EMAIL PROTECTED]> */ -class ChainsawToolBarAndMenus implements ChangeListener, SettingsListener -{ - //~ Static fields/initializers ============================================== - +class ChainsawToolBarAndMenus implements ChangeListener, SettingsListener { private static final String SETTING_RESPONSIVENESS = "Responsiveness"; private static final String SETTING_TAB_PLACEMENT = "tab.placement"; - - //~ Instance fields ========================================================= - final JDialog receiversWindow; final JTextField findTextField; private final Action clearAction; @@ -179,10 +162,7 @@ private String levelDisplay = ChainsawConstants.LEVEL_DISPLAY_ICONS; private final Action[] logPanelSpecificActions; - //~ Constructors ============================================================ - - ChainsawToolBarAndMenus(final LogUI logui) - { + ChainsawToolBarAndMenus(final LogUI logui) { this.logui = logui; receiversWindow = new JDialog(logui, "Receivers", false); toolbar = new JToolBar(JToolBar.HORIZONTAL); @@ -205,32 +185,24 @@ createToolbar(); logPanelSpecificActions = - new Action[] - { + new Action[] { pauseAction, findNextAction, clearAction, fileMenu.getFileSaveAction(), toggleDetailPaneAction, showPreferencesAction, undockAction }; } - //~ Methods ================================================================= - /** * DOCUMENT ME! * * @param event DOCUMENT ME! */ - public void loadSettings(LoadSettingsEvent event) - { - try - { + public void loadSettings(LoadSettingsEvent event) { + try { levelDisplay = event.getSetting(ChainsawConstants.LEVEL_DISPLAY); - if (levelDisplay.equals(ChainsawConstants.LEVEL_DISPLAY_ICONS)) - { + if (levelDisplay.equals(ChainsawConstants.LEVEL_DISPLAY_ICONS)) { levelDisplayIcon.setSelected(true); - } - else - { + } else { levelDisplayText.setSelected(true); } @@ -240,18 +212,14 @@ event.asInt(ChainsawToolBarAndMenus.SETTING_TAB_PLACEMENT); SwingUtilities.invokeLater( - new Runnable() - { - public void run() - { + new Runnable() { + public void run() { responsiveSlider.setValue(responsiveness); logui.tabbedPane.setTabPlacement(tabPlacement); scanState(); } }); - } - catch (NullPointerException e) - { + } catch (NullPointerException e) { LogLog.error("error decoding setting", e); } } @@ -261,8 +229,7 @@ * * @param event DOCUMENT ME! */ - public void saveSettings(SaveSettingsEvent event) - { + public void saveSettings(SaveSettingsEvent event) { event.saveSetting( ChainsawToolBarAndMenus.SETTING_RESPONSIVENESS, responsiveSlider.getValue()); @@ -277,8 +244,7 @@ /** * DOCUMENT ME! */ - public void stateChange() - { + public void stateChange() { scanState(); } @@ -287,41 +253,32 @@ * * @param e DOCUMENT ME! */ - public void stateChanged(ChangeEvent e) - { + public void stateChanged(ChangeEvent e) { scanState(); } - JMenuBar getMenubar() - { + JMenuBar getMenubar() { return menuBar; } - JToolBar getToolbar() - { + JToolBar getToolbar() { return toolbar; } JToolBar createDockwindowToolbar( - final JFrame dockablePanel, final LogUI.LogPanel logPanel) - { + final JFrame dockablePanel, final LogUI.LogPanel logPanel) { final JToolBar toolbar = new JToolBar(); toolbar.setFloatable(false); final String ident = dockablePanel.getTitle(); final Action dockPauseAction = - new AbstractAction("Pause") - { - public void actionPerformed(ActionEvent evt) - { + new AbstractAction("Pause") { + public void actionPerformed(ActionEvent evt) { System.out.println("trying to pause '" + ident + "'"); - if (!logui.pausedList.contains(ident)) - { + if (!logui.pausedList.contains(ident)) { logui.pausedList.add(ident); - } - else - { + } else { logui.pausedList.remove(ident); } } @@ -340,12 +297,9 @@ new SmallToggleButton(dockPauseAction); dockPauseButton.setText(""); - if (logui.pausedList.contains(ident)) - { + if (logui.pausedList.contains(ident)) { dockPauseButton.getModel().setSelected(true); - } - else - { + } else { dockPauseButton.getModel().setSelected(false); } @@ -354,10 +308,8 @@ toolbar.add(dockPauseButton); Action dockShowPrefsAction = - new AbstractAction("") - { - public void actionPerformed(ActionEvent arg0) - { + new AbstractAction("") { + public void actionPerformed(ActionEvent arg0) { logPanel.showPreferences(); } }; @@ -372,10 +324,8 @@ toolbar.addSeparator(); final Action undockedClearAction = - new AbstractAction("Clear") - { - public void actionPerformed(ActionEvent arg0) - { + new AbstractAction("Clear") { + public void actionPerformed(ActionEvent arg0) { logPanel.clearModel(); } }; @@ -398,34 +348,27 @@ final JTextField findField = createFindField(); findField.getDocument().addDocumentListener( - new DocumentListener() - { - public void insertUpdate(DocumentEvent e) - { + new DocumentListener() { + public void insertUpdate(DocumentEvent e) { findInUndocked(false); } - public void removeUpdate(DocumentEvent e) - { + public void removeUpdate(DocumentEvent e) { findInUndocked(false); } - public void changedUpdate(DocumentEvent e) - { + public void changedUpdate(DocumentEvent e) { findInUndocked(false); } - private void findInUndocked(boolean next) - { + private void findInUndocked(boolean next) { localFind(next, logPanel, findField); } }); final Action undockedFindAction = - new AbstractAction() - { - public void actionPerformed(ActionEvent e) - { + new AbstractAction() { + public void actionPerformed(ActionEvent e) { localFind(true, logPanel, findField); } }; @@ -451,10 +394,8 @@ toolbar.addSeparator(); Action redockAction = - new AbstractAction("", ChainsawIcons.ICON_DOCK) - { - public void actionPerformed(ActionEvent arg0) - { + new AbstractAction("", ChainsawIcons.ICON_DOCK) { + public void actionPerformed(ActionEvent arg0) { logPanel.dock(); } }; @@ -469,22 +410,17 @@ return toolbar; } - void lookAndFeelUpdated() - { + void lookAndFeelUpdated() { SwingUtilities.updateComponentTreeUI(receiversWindow); } - private Action createClearAction() - { + private Action createClearAction() { final Action action = - new AbstractAction("Clear") - { - public void actionPerformed(ActionEvent e) - { + new AbstractAction("Clear") { + public void actionPerformed(ActionEvent e) { LogUI.LogPanel logPanel = logui.getCurrentLogPanel(); - if (logPanel == null) - { + if (logPanel == null) { return; } @@ -503,20 +439,14 @@ return action; } - private Action createCloseHelpAction() - { + private Action createCloseHelpAction() { final Action action = - new AbstractAction() - { - public void actionPerformed(ActionEvent e) - { - if (logui.tabbedPane.containsWelcomePanel()) - { + new AbstractAction() { + public void actionPerformed(ActionEvent e) { + if (logui.tabbedPane.containsWelcomePanel()) { logui.removeWelcomePanel(); closeAction.putValue(Action.NAME, "Show Welcome tab"); - } - else - { + } else { logui.addWelcomePanel(); closeAction.putValue(Action.NAME, "Close Welcome tab"); } @@ -533,30 +463,24 @@ return action; } - private void createFindDocListener(final JTextField field) - { + private void createFindDocListener(final JTextField field) { field.getDocument().addDocumentListener( - new DocumentListener() - { - public void insertUpdate(DocumentEvent e) - { + new DocumentListener() { + public void insertUpdate(DocumentEvent e) { find(false); } - public void removeUpdate(DocumentEvent e) - { + public void removeUpdate(DocumentEvent e) { find(false); } - public void changedUpdate(DocumentEvent e) - { + public void changedUpdate(DocumentEvent e) { find(false); } }); } - private JTextField createFindField() - { + private JTextField createFindField() { JTextField tf = new JTextField(); Dimension fixedSize = new Dimension(132, 24); tf.setPreferredSize(fixedSize); @@ -567,24 +491,19 @@ return tf; } - private Action createLockableToolbarAction() - { + private Action createLockableToolbarAction() { final Action lockToolbarAction = - new AbstractAction("Lock Toolbar") - { + new AbstractAction("Lock Toolbar") { private boolean lock = true; - public void actionPerformed(ActionEvent e) - { + public void actionPerformed(ActionEvent e) { lock = !lock; final boolean isLocked = lock; Runnable runnable = null; runnable = - new Runnable() - { - public void run() - { + new Runnable() { + public void run() { toolbar.setFloatable(!isLocked); toolbar.repaint(); } @@ -596,8 +515,7 @@ return lockToolbarAction; } - private void createMenuBar() - { + private void createMenuBar() { JMenu activeTabMenu = new JMenu("Current tab"); JMenuItem menuItemUseRightMouse = @@ -632,16 +550,11 @@ toggleDetailMenuItem.setSelected(true); final Action toggleStatusBarAction = - new AbstractAction("Show Status bar") - { - public void actionPerformed(ActionEvent arg0) - { - if (toggleStatusBarCheck.isSelected()) - { + new AbstractAction("Show Status bar") { + public void actionPerformed(ActionEvent arg0) { + if (toggleStatusBarCheck.isSelected()) { logui.addStatusBar(); - } - else - { + } else { logui.removeStatusBar(); } } @@ -671,10 +584,8 @@ levelIconGroup.add(levelDisplayText); levelDisplayIcon.addActionListener( - new ActionListener() - { - public void actionPerformed(ActionEvent e) - { + new ActionListener() { + public void actionPerformed(ActionEvent e) { levelDisplay = ChainsawConstants.LEVEL_DISPLAY_ICONS; SettingsManager.getInstance().saveSettings(); SettingsManager.getInstance().loadSettings(); @@ -682,10 +593,8 @@ }); levelDisplayText.addActionListener( - new ActionListener() - { - public void actionPerformed(ActionEvent e) - { + new ActionListener() { + public void actionPerformed(ActionEvent e) { levelDisplay = ChainsawConstants.LEVEL_DISPLAY_TEXT; SettingsManager.getInstance().saveSettings(); SettingsManager.getInstance().loadSettings(); @@ -700,19 +609,15 @@ tabPlacementGroup.add(tabsBottom); tabsTop.addActionListener( - new ActionListener() - { - public void actionPerformed(ActionEvent e) - { + new ActionListener() { + public void actionPerformed(ActionEvent e) { logui.tabbedPane.setTabPlacement(JTabbedPane.TOP); } }); tabsBottom.addActionListener( - new ActionListener() - { - public void actionPerformed(ActionEvent e) - { + new ActionListener() { + public void actionPerformed(ActionEvent e) { logui.tabbedPane.setTabPlacement(JTabbedPane.BOTTOM); } }); @@ -731,21 +636,16 @@ final ButtonGroup lookAndFeelGroup = new ButtonGroup(); - for (int i = 0; i < lookAndFeels.length; i++) - { + for (int i = 0; i < lookAndFeels.length; i++) { final UIManager.LookAndFeelInfo lfInfo = lookAndFeels[i]; final JRadioButtonMenuItem lfItemMenu = new JRadioButtonMenuItem(lfInfo.getName()); lfItemMenu.addActionListener( - new ActionListener() - { - public void actionPerformed(ActionEvent e) - { + new ActionListener() { + public void actionPerformed(ActionEvent e) { SwingUtilities.invokeLater( - new Runnable() - { - public void run() - { + new Runnable() { + public void run() { logui.setLookAndFeel(lfInfo.getClassName()); } }); @@ -759,12 +659,9 @@ levelIconMenu.add(levelDisplayIcon); levelIconMenu.add(levelDisplayText); - if (levelDisplay.equals(ChainsawConstants.LEVEL_DISPLAY_ICONS)) - { + if (levelDisplay.equals(ChainsawConstants.LEVEL_DISPLAY_ICONS)) { levelDisplayIcon.setSelected(true); - } - else - { + } else { levelDisplayText.setSelected(true); } @@ -784,10 +681,8 @@ JMenuItem about = new JMenuItem("About Chainsaw v2..."); about.setMnemonic('A'); about.addActionListener( - new ActionListener() - { - public void actionPerformed(ActionEvent e) - { + new ActionListener() { + public void actionPerformed(ActionEvent e) { logui.showAboutBox(); } }); @@ -800,29 +695,22 @@ menuBar.add(helpMenu); } - private Action createPauseAction() - { + private Action createPauseAction() { final Action pauseAction = - new AbstractAction("Pause") - { - public void actionPerformed(ActionEvent evt) - { + new AbstractAction("Pause") { + public void actionPerformed(ActionEvent evt) { LogUI.LogPanel logPanel = logui.getCurrentLogPanel(); - if (logPanel == null) - { + if (logPanel == null) { return; } String ident = logPanel.getIdentifier(); System.out.println("trying to pause '" + ident + "'"); - if (!logui.pausedList.contains(ident)) - { + if (!logui.pausedList.contains(ident)) { logui.pausedList.add(ident); - } - else - { + } else { logui.pausedList.remove(ident); } @@ -842,8 +730,7 @@ return pauseAction; } - private JComponent createResponsivenessSlider() - { + private JComponent createResponsivenessSlider() { JPanel responsiveNessPanel = new JPanel(); BoxLayout layout = new BoxLayout(responsiveNessPanel, BoxLayout.Y_AXIS); @@ -863,22 +750,16 @@ responsiveSlider.setPaintTrack(true); responsiveSlider.setInverted(true); responsiveSlider.getModel().addChangeListener( - new ChangeListener() - { - public void stateChanged(ChangeEvent e) - { - if (responsiveSlider.getValueIsAdjusting()) - { + new ChangeListener() { + public void stateChanged(ChangeEvent e) { + if (responsiveSlider.getValueIsAdjusting()) { /** * We'll wait until it stops. */ - } - else - { + } else { int value = responsiveSlider.getValue(); - if (value == 0) - { + if (value == 0) { value = 100; } @@ -900,17 +781,13 @@ return responsiveNessPanel; } - private Action createShowPreferencesAction() - { + private Action createShowPreferencesAction() { Action showPreferences = - new AbstractAction("", ChainsawIcons.ICON_PREFERENCES) - { - public void actionPerformed(ActionEvent arg0) - { + new AbstractAction("", ChainsawIcons.ICON_PREFERENCES) { + public void actionPerformed(ActionEvent arg0) { LogUI.LogPanel logPanel = logui.getCurrentLogPanel(); - if (logPanel != null) - { + if (logPanel != null) { logPanel.showPreferences(); } } @@ -926,8 +803,7 @@ /** * @return */ - private Action createShowReceiversAction() - { + private Action createShowReceiversAction() { final JTree tree = new JTree(ReceiversTreeModel.create()); tree.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5)); @@ -940,14 +816,11 @@ receiversWindow.setSize(320, 240); final Action action = - new AbstractAction("Show Receivers...") - { - public void actionPerformed(ActionEvent arg0) - { + new AbstractAction("Show Receivers...") { + public void actionPerformed(ActionEvent arg0) { tree.setModel(ReceiversTreeModel.create()); - if (!receiversWindow.isVisible()) - { + if (!receiversWindow.isVisible()) { receiversWindow.setVisible(true); } @@ -963,19 +836,15 @@ return action; } - private Action createToggleDetailPaneAction() - { + private Action createToggleDetailPaneAction() { Action action = - new AbstractAction("Show Detail Pane") - { + new AbstractAction("Show Detail Pane") { boolean enabled = true; - public void actionPerformed(ActionEvent evt) - { + public void actionPerformed(ActionEvent evt) { LogUI.LogPanel logPanel = logui.getCurrentLogPanel(); - if (logPanel == null) - { + if (logPanel == null) { return; } @@ -995,42 +864,32 @@ return action; } - private Action createToggleToolbarAction() - { + private Action createToggleToolbarAction() { /** * -== Begin of Show/Hide toolbar action */ final Action toggleToolbarAction = - new AbstractAction("Show Toolbar") - { + new AbstractAction("Show Toolbar") { private boolean hide = false; - public void actionPerformed(ActionEvent e) - { + public void actionPerformed(ActionEvent e) { hide = !hide; Runnable runnable = null; - if (hide) - { + if (hide) { runnable = - new Runnable() - { - public void run() - { + new Runnable() { + public void run() { logui.getContentPane().remove(toolbar); logui.getRootPane().repaint(); logui.getRootPane().revalidate(); } }; - } - else - { + } else { runnable = - new Runnable() - { - public void run() - { + new Runnable() { + public void run() { logui.getContentPane().add(toolbar, BorderLayout.NORTH); logui.getRootPane().repaint(); logui.getRootPane().revalidate(); @@ -1048,8 +907,7 @@ return toggleToolbarAction; } - private void createToolbar() - { + private void createToolbar() { Insets buttonMargins = new Insets(1, 1, 1, 1); FileMenu fileMenu = (FileMenu) menuBar.getMenu(0); @@ -1118,17 +976,13 @@ toolbar.setFloatable(false); } - private Action createUndockAction() - { + private Action createUndockAction() { Action action = - new AbstractAction("Undock", ChainsawIcons.ICON_UNDOCK) - { - public void actionPerformed(ActionEvent arg0) - { + new AbstractAction("Undock", ChainsawIcons.ICON_UNDOCK) { + public void actionPerformed(ActionEvent arg0) { LogUI.LogPanel logPanel = logui.getCurrentLogPanel(); - if (logPanel != null) - { + if (logPanel != null) { logPanel.undock(); } } @@ -1142,61 +996,47 @@ return action; } - private void find(boolean next) - { + private void find(boolean next) { LogUI.LogPanel logPanel = logui.getCurrentLogPanel(); - if (logPanel != null) - { + if (logPanel != null) { localFind(next, logPanel, findTextField); } } private void localFind( boolean next, final LogUI.LogPanel logPanel, - final JTextField theFindTextField) - { - if (!theFindTextField.getText().equals("")) - { + final JTextField theFindTextField) { + if (!theFindTextField.getText().equals("")) { if ( (lastFind.length() == 0) - || (lastFind.length() > theFindTextField.getText().length())) - { + || (lastFind.length() > theFindTextField.getText().length())) { logPanel.findFromTop(theFindTextField.getText()); - } - else - { - if (next) - { + } else { + if (next) { logPanel.findNext(theFindTextField.getText()); - } - else - { + } else { logPanel.find(theFindTextField.getText()); } } lastFind = theFindTextField.getText(); - } - else - { + } else { theFindTextField.requestFocus(); } } - private void scanState() - { - switch (logui.tabbedPane.getTabPlacement()) - { - case SwingConstants.TOP : - tabsTop.setSelected(true); + private void scanState() { + switch (logui.tabbedPane.getTabPlacement()) { + case SwingConstants.TOP: + tabsTop.setSelected(true); - break; + break; - case SwingConstants.BOTTOM : - tabsBottom.setSelected(true); + case SwingConstants.BOTTOM: + tabsBottom.setSelected(true); - break; + break; } toggleStatusBarCheck.setSelected(logui.isStatusBarVisible()); @@ -1209,33 +1049,24 @@ boolean activateLogPanelActions = true; - if (logPanel == null) - { + if (logPanel == null) { activateLogPanelActions = false; logui.getStatusBar().clear(); findTextField.setEnabled(false); - if (logui.tabbedPane.containsWelcomePanel()) - { + if (logui.tabbedPane.containsWelcomePanel()) { closeAction.setEnabled(true); - } - else - { + } else { closeAction.setEnabled(false); } - } - else - { + } else { fileMenu.getFileSaveAction().setEnabled(true); findTextField.setEnabled(true); - if (logui.pausedList.contains(logPanel.getIdentifier())) - { + if (logui.pausedList.contains(logPanel.getIdentifier())) { pauseButton.getModel().setSelected(true); logui.getStatusBar().setPaused(true); - } - else - { + } else { pauseButton.getModel().setSelected(false); logui.getStatusBar().setPaused(false); } @@ -1243,8 +1074,7 @@ detailPaneButton.getModel().setSelected(logPanel.isDetailPaneVisible()); } - for (int i = 0; i < logPanelSpecificActions.length; i++) - { + for (int i = 0; i < logPanelSpecificActions.length; i++) { logPanelSpecificActions[i].setEnabled(activateLogPanelActions); } @@ -1252,30 +1082,23 @@ UIManager.getLookAndFeel().getClass().getName(); String currentLookAndFeelName = UIManager.getLookAndFeel().getName(); - for (Iterator iter = lookAndFeelMenus.iterator(); iter.hasNext();) - { + for (Iterator iter = lookAndFeelMenus.iterator(); iter.hasNext();) { JRadioButtonMenuItem element = (JRadioButtonMenuItem) iter.next(); - if (element.getText().equals(currentLookAndFeelName)) - { + if (element.getText().equals(currentLookAndFeelName)) { element.setSelected(true); - } - else - { + } else { element.setSelected(false); } } } - private Action setupFindFieldsAndActions() - { + private Action setupFindFieldsAndActions() { createFindDocListener(findTextField); final Action action = - new AbstractAction("Find Next") - { - public void actionPerformed(ActionEvent e) - { + new AbstractAction("Find Next") { + public void actionPerformed(ActionEvent e) { find(true); } }; @@ -1289,303 +1112,6 @@ return action; } - //~ Inner Classes =========================================================== - - /** - * DOCUMENT ME! - * - * @author Paul Smith <[EMAIL PROTECTED]> - * @version $Revision$ - */ - public static class ReceiverTreeCellRenderer extends DefaultTreeCellRenderer - { - //~ Instance fields ======================================================= - - private Icon activeReceiverIcon = - new ImageIcon(ChainsawIcons.ICON_ACTIVE_RECEIVER); - private Icon inactiveReceiverIcon = - new ImageIcon(ChainsawIcons.ICON_INACTIVE_RECEIVER); - private Icon rootIcon = new ImageIcon(ChainsawIcons.ANIM_NET_CONNECT); - private ReceiverFormatterChain chain; - - //~ Constructors ========================================================== - - public ReceiverTreeCellRenderer() - { - super(); - chain = new ReceiverFormatterChain(); - chain.add( - new ReceiverFormatter() - { - public String formatDetail(Receiver receiver) - { - if (!(receiver instanceof PortBased)) - { - return null; - } - - PortBased portBased = (PortBased) receiver; - - StringBuffer buf = new StringBuffer(receiver.getName()); - - if (receiver instanceof AddressBased) - { - buf.append("::").append(((AddressBased) receiver).getAddress()); - } - - buf.append("::").append(portBased.getPort()).append(" ").append( - "(").append(receiver.isActive() ? "running" : "inactive").append( - ")"); - - return buf.toString(); - } - }); - - chain.add( - new ReceiverFormatter() - { - public String formatDetail(Receiver receiver) - { - return "(Unknown Type) :: " + receiver; - } - }); - } - - //~ Methods =============================================================== - - /** - * DOCUMENT ME! - * - * @param tree DOCUMENT ME! - * @param value DOCUMENT ME! - * @param selected DOCUMENT ME! - * @param expanded DOCUMENT ME! - * @param leaf DOCUMENT ME! - * @param row DOCUMENT ME! - * @param hasFocus DOCUMENT ME! - * - * @return DOCUMENT ME! - */ - public Component getTreeCellRendererComponent( - JTree tree, Object value, boolean selected, boolean expanded, - boolean leaf, int row, boolean hasFocus) - { - super.getTreeCellRendererComponent( - tree, value, selected, expanded, leaf, row, hasFocus); - - DefaultMutableTreeNode node = (DefaultMutableTreeNode) value; - Object obj = node.getUserObject(); - setText(obj.toString()); - - if (tree.getModel().getRoot().equals(value)) - { - setIcon(rootIcon); - } - else if (obj instanceof Receiver) - { - Receiver receiver = (Receiver) obj; - setText(chain.formatDetail(receiver)); - - if (receiver.isActive()) - { - setIcon(activeReceiverIcon); - } - else - { - setIcon(inactiveReceiverIcon); - } - } - - return this; - } - - //~ Inner Interfaces ====================================================== - - private static interface ReceiverFormatter - { - //~ Methods ============================================================= - - /** - * Returns a formatted string for the receiver or null if it cannot. - * @param receiver - * @return - */ - public String formatDetail(Receiver receiver); - } - - //~ Inner Classes ========================================================= - - private static class ReceiverFormatterChain implements ReceiverFormatter - { - //~ Instance fields ===================================================== - - private Collection collection = new ArrayList(); - - //~ Methods ============================================================= - - /** - * @param formatter - */ - public void add(ReceiverFormatter formatter) - { - collection.add(formatter); - } - - /* (non-Javadoc) - * @see org.apache.log4j.chainsaw.ChainsawToolBarAndMenus.ReceiverTreeCellRenderer.ReceiverFormatter#formatDetail(org.apache.log4j.plugins.Receiver) - */ - public String formatDetail(Receiver receiver) - { - for (Iterator iter = collection.iterator(); iter.hasNext();) - { - ReceiverFormatter item = (ReceiverFormatter) iter.next(); - String detail = item.formatDetail(receiver); - - if (detail != null) - { - return detail; - } - } - - return null; - } - } - } - - /** - * DOCUMENT ME! - * - * @author $author$ - * @version $Revision$ - */ - public static class ReceiversTableModel extends AbstractTableModel - { - //~ Instance fields ======================================================= - - private List receivers; - - //~ Methods =============================================================== - - /** - * DOCUMENT ME! - * - * @return DOCUMENT ME! - */ - public int getColumnCount() - { - return 1; - } - - /** - * DOCUMENT ME! - * - * @param column DOCUMENT ME! - * - * @return DOCUMENT ME! - */ - public String getColumnName(int column) - { - return "Receiver Details"; - } - - /** - * DOCUMENT ME! - * - * @return DOCUMENT ME! - */ - public int getRowCount() - { - return receivers.size(); - } - - /** - * DOCUMENT ME! - * - * @param row DOCUMENT ME! - * @param col DOCUMENT ME! - * - * @return DOCUMENT ME! - */ - public Object getValueAt(int row, int col) - { - return receivers.get(row); - } - - /** - * DOCUMENT ME! - */ - public void refresh() - { - synchronized (this) - { - receivers = - PluginRegistry.getPlugins( - LogManager.getLoggerRepository(), Receiver.class); - } - - fireTableDataChanged(); - } - } - - /** - * DOCUMENT ME! - * - * @author $author$ - * @version $Revision$ - */ - public static class ReceiversTreeModel extends DefaultTreeModel - { - //~ Constructors ========================================================== - - public ReceiversTreeModel() - { - super(new DefaultMutableTreeNode("Receivers")); - } - - //~ Methods =============================================================== - - /** - * DOCUMENT ME! - * - * @return DOCUMENT ME! - */ - public static final TreeModel create() - { - ReceiversTreeModel model = new ReceiversTreeModel(); - - Collection receivers = - PluginRegistry.getPlugins( - LogManager.getLoggerRepository(), Receiver.class); - - for (Iterator iter = receivers.iterator(); iter.hasNext();) - { - Receiver item = (Receiver) iter.next(); - DefaultMutableTreeNode receiverNode = new DefaultMutableTreeNode(item); - - if (item instanceof SocketReceiver) - { - for ( - Iterator iterator = - ((SocketReceiver) item).getConnectedSocketDetails().iterator(); - iterator.hasNext();) - { - Object details = (Object) iterator.next(); - receiverNode.add(new DefaultMutableTreeNode(details)); - } - } - - model.getRootNode().add(receiverNode); - } - - return model; - } - - DefaultMutableTreeNode getRootNode() - { - return (DefaultMutableTreeNode) getRoot(); - } - } - /** * A better button class that has nice roll over effects. * @@ -1598,20 +1124,14 @@ * @author Paul Smith <[EMAIL PROTECTED]> * */ - class SmallButton extends JButton implements MouseListener - { - //~ Instance fields ======================================================= - + class SmallButton extends JButton implements MouseListener { protected Border m_inactive = new EmptyBorder(3, 3, 3, 3); protected Border m_border = m_inactive; protected Border m_lowered = new SoftBevelBorder(BevelBorder.LOWERED); protected Border m_raised = new SoftBevelBorder(BevelBorder.RAISED); protected Insets m_ins = new Insets(4, 4, 4, 4); - //~ Constructors ========================================================== - - public SmallButton() - { + public SmallButton() { super(); setBorder(m_inactive); setMargin(m_ins); @@ -1619,8 +1139,7 @@ addMouseListener(this); } - public SmallButton(Action act) - { + public SmallButton(Action act) { this(); setAction(act); setRequestFocusEnabled(false); @@ -1629,15 +1148,12 @@ addMouseListener(this); } - //~ Methods =============================================================== - /** * DOCUMENT ME! * * @return DOCUMENT ME! */ - public float getAlignmentY() - { + public float getAlignmentY() { return 0.5f; } @@ -1646,8 +1162,7 @@ * * @return DOCUMENT ME! */ - public Border getBorder() - { + public Border getBorder() { return m_border; } @@ -1656,8 +1171,7 @@ * * @return DOCUMENT ME! */ - public Insets getInsets() - { + public Insets getInsets() { return m_ins; } @@ -1666,8 +1180,7 @@ * * @param e DOCUMENT ME! */ - public void mouseClicked(MouseEvent e) - { + public void mouseClicked(MouseEvent e) { } /** @@ -1675,10 +1188,8 @@ * * @param e DOCUMENT ME! */ - public void mouseEntered(MouseEvent e) - { - if (isEnabled()) - { + public void mouseEntered(MouseEvent e) { + if (isEnabled()) { m_border = m_raised; setBorder(m_raised); } @@ -1689,8 +1200,7 @@ * * @param e DOCUMENT ME! */ - public void mouseExited(MouseEvent e) - { + public void mouseExited(MouseEvent e) { m_border = m_inactive; setBorder(m_inactive); } @@ -1700,8 +1210,7 @@ * * @param e DOCUMENT ME! */ - public void mousePressed(MouseEvent e) - { + public void mousePressed(MouseEvent e) { m_border = m_lowered; setBorder(m_lowered); } @@ -1711,8 +1220,7 @@ * * @param e DOCUMENT ME! */ - public void mouseReleased(MouseEvent e) - { + public void mouseReleased(MouseEvent e) { m_border = m_inactive; setBorder(m_inactive); } @@ -1730,10 +1238,7 @@ * @author Paul Smith <[EMAIL PROTECTED]> */ class SmallToggleButton extends JToggleButton implements ItemListener, - MouseListener - { - //~ Instance fields ======================================================= - + MouseListener { protected Border m_highlighted = new SoftBevelBorder(BevelBorder.RAISED); protected Border m_raised = BorderFactory.createEmptyBorder(); protected Border m_inactive = m_raised; @@ -1741,10 +1246,7 @@ protected Border m_lowered = new SoftBevelBorder(BevelBorder.LOWERED); protected Insets m_ins = new Insets(4, 4, 4, 4); - //~ Constructors ========================================================== - - public SmallToggleButton() - { + public SmallToggleButton() { super(); setHorizontalAlignment(CENTER); setBorder(isSelected() ? m_lowered : m_raised); @@ -1755,21 +1257,17 @@ setText(""); } - public SmallToggleButton(Action action) - { + public SmallToggleButton(Action action) { this(); setAction(action); } - //~ Methods =============================================================== - /** * DOCUMENT ME! * * @return DOCUMENT ME! */ - public float getAlignmentY() - { + public float getAlignmentY() { return 0.5f; } @@ -1778,8 +1276,7 @@ * * @return DOCUMENT ME! */ - public Border getBorder() - { + public Border getBorder() { return m_border; } @@ -1788,8 +1285,7 @@ * * @return DOCUMENT ME! */ - public Insets getInsets() - { + public Insets getInsets() { return m_ins; } @@ -1798,8 +1294,7 @@ * * @param e DOCUMENT ME! */ - public void itemStateChanged(ItemEvent e) - { + public void itemStateChanged(ItemEvent e) { setBorder(isSelected() ? m_lowered : m_raised); } @@ -1808,8 +1303,7 @@ * * @param e DOCUMENT ME! */ - public void mouseClicked(MouseEvent e) - { + public void mouseClicked(MouseEvent e) { } /** @@ -1817,10 +1311,8 @@ * * @param e DOCUMENT ME! */ - public void mouseEntered(MouseEvent e) - { - if (isEnabled()) - { + public void mouseEntered(MouseEvent e) { + if (isEnabled()) { m_border = m_highlighted; setBorder(m_highlighted); } @@ -1831,8 +1323,7 @@ * * @param e DOCUMENT ME! */ - public void mouseExited(MouseEvent e) - { + public void mouseExited(MouseEvent e) { m_border = m_inactive; setBorder(m_inactive); } @@ -1842,8 +1333,7 @@ * * @param e DOCUMENT ME! */ - public void mousePressed(MouseEvent e) - { + public void mousePressed(MouseEvent e) { m_border = m_lowered; setBorder(m_lowered); } @@ -1853,8 +1343,7 @@ * * @param e DOCUMENT ME! */ - public void mouseReleased(MouseEvent e) - { + public void mouseReleased(MouseEvent e) { m_border = m_inactive; setBorder(m_inactive); }
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]