psmith      2004/05/17 17:39:55

  Modified:    src/java/org/apache/log4j/chainsaw/version
                        VersionManager.java
               src/java/org/apache/log4j/chainsaw LoggerNameTreePanel.java
               src/java/org/apache/log4j/chainsaw/help release-notes.html
  Log:
  Tidied up the Hidden logger panel area of the Logger tree panel.  It's now in a 
popup dialog,
  but you can see a summary of how many hidden loggers you have at the bottom of the 
Logger
  Tree panel.
  
  Revision  Changes    Path
  1.3       +1 -1      
logging-log4j/src/java/org/apache/log4j/chainsaw/version/VersionManager.java
  
  Index: VersionManager.java
  ===================================================================
  RCS file: 
/home/cvs/logging-log4j/src/java/org/apache/log4j/chainsaw/version/VersionManager.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- VersionManager.java       17 May 2004 22:26:09 -0000      1.2
  +++ VersionManager.java       18 May 2004 00:39:55 -0000      1.3
  @@ -10,7 +10,7 @@
   
       private static final VersionManager instance = new VersionManager();
       
  -    private static final String VERSION_INFO = "1.99.99 (18th May 2004)";
  +    private static final String VERSION_INFO = "1.99.99 (18th May 2004 10:35 
GMT+10)";
       
       public static final VersionManager getInstance() {
           return instance;
  
  
  
  1.28      +83 -22    
logging-log4j/src/java/org/apache/log4j/chainsaw/LoggerNameTreePanel.java
  
  Index: LoggerNameTreePanel.java
  ===================================================================
  RCS file: 
/home/cvs/logging-log4j/src/java/org/apache/log4j/chainsaw/LoggerNameTreePanel.java,v
  retrieving revision 1.27
  retrieving revision 1.28
  diff -u -r1.27 -r1.28
  --- LoggerNameTreePanel.java  1 May 2004 09:18:48 -0000       1.27
  +++ LoggerNameTreePanel.java  18 May 2004 00:39:55 -0000      1.28
  @@ -20,6 +20,7 @@
   import java.awt.BorderLayout;
   import java.awt.Component;
   import java.awt.Cursor;
  +import java.awt.FlowLayout;
   import java.awt.Font;
   import java.awt.Point;
   import java.awt.Toolkit;
  @@ -49,6 +50,7 @@
   import javax.swing.ImageIcon;
   import javax.swing.JButton;
   import javax.swing.JCheckBoxMenuItem;
  +import javax.swing.JDialog;
   import javax.swing.JLabel;
   import javax.swing.JList;
   import javax.swing.JPanel;
  @@ -115,6 +117,8 @@
   
     private final JList ignoreList = new JList();
     private final JScrollPane ignoreListScroll = new JScrollPane(ignoreList);
  +  private final JDialog ignoreDialog = new JDialog();
  +  private final JLabel ignoreSummary = new JLabel("0 hidden loggers");
     private final SmallToggleButton ignoreLoggerButton = new SmallToggleButton();
     private final EventListenerList listenerList = new EventListenerList();
     private final JTree logTree;
  @@ -231,18 +235,24 @@
       add(toolbar, BorderLayout.NORTH);
       add(scrollTree, BorderLayout.CENTER);
   
  -    add(ignoreListScroll, BorderLayout.SOUTH);
  +    ignoreDialog.setTitle("Hidden/Ignored Loggers");
  +    ignoreDialog.setModal(true);
  +    JPanel ignoreSummaryPanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
  +    ignoreSummaryPanel.add(ignoreSummary);
  +    
  +    Action showIgnoreDialogAction = new AbstractAction("...") {
   
  -    CheckListCellRenderer ignoreCellRenderer = new CheckListCellRenderer()
  -      {
  -        protected boolean isSelected(Object value)
  +        public void actionPerformed(ActionEvent e)
           {
  -          return true;
  -        }
  -      };
  -
  -    ignoreList.setCellRenderer(ignoreCellRenderer);
  +            ignoreDialog.show();
  +        }};
  +    showIgnoreDialogAction.putValue(Action.SHORT_DESCRIPTION, "Click to view and 
manage your hidden/ignored loggers");
  +    JButton btnShowIgnoreDialog = new SmallButton(showIgnoreDialogAction);
  +    
  +    ignoreSummaryPanel.add(btnShowIgnoreDialog);
  +    add(ignoreSummaryPanel, BorderLayout.SOUTH);
   
  +    ignoreList.setModel(new DefaultListModel());
       ignoreList.addMouseListener(new MouseAdapter()
         {
           public void mouseClicked(MouseEvent e)
  @@ -269,6 +279,43 @@
             }
           }
         });
  +    
  +    JPanel ignoreListPanel = new JPanel(new BorderLayout());
  +    
ignoreListScroll.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(),"Double
 click an entry to unhide it"));
  +    ignoreListPanel.add(ignoreListScroll, BorderLayout.CENTER);
  +    
  +    Box ignoreListButtonPanel = Box.createHorizontalBox();
  +    
  +    JButton unhideAll = new JButton(new AbstractAction("Unhide All") {
  +
  +        public void actionPerformed(final ActionEvent e)
  +        {
  +             SwingUtilities.invokeLater(new Runnable() {
  +
  +                public void run()
  +                {
  +                    clearIgnoreListAction.actionPerformed(e);
  +                }}); 
  +            
  +        }});
  +    ignoreListButtonPanel.add(unhideAll);
  +    
  +    ignoreListButtonPanel.add(Box.createHorizontalGlue());
  +    JButton ignoreCloseButton = new JButton(new AbstractAction("Close") {
  +
  +        public void actionPerformed(ActionEvent e)
  +        {
  +            ignoreDialog.hide();
  +            
  +        }});
  +    ignoreListButtonPanel.add(ignoreCloseButton);
  +    
  +    
  +    ignoreListPanel.add(ignoreListButtonPanel, BorderLayout.SOUTH);
  +    
  +    
  +    ignoreDialog.getContentPane().add(ignoreListPanel);
  +    ignoreDialog.pack();
     }
   
     //~ Methods =================================================================
  @@ -990,6 +1037,7 @@
                 }
               };
             firePropertyChange("rule", null, null);
  +          updateAllIgnoreStuff();
           }
         });
   
  @@ -997,22 +1045,35 @@
         {
           public void propertyChange(PropertyChangeEvent arg0)
           {
  -          DefaultListModel model = new DefaultListModel();
  -
  -          List sortedIgnoreList = new ArrayList(getHiddenSet());
  -          Collections.sort(sortedIgnoreList);
  -
  -          for (Iterator iter = sortedIgnoreList.iterator(); iter.hasNext();)
  -          {
  -            String string = (String) iter.next();
  -            model.addElement(string);
  -          }
  -
  -          ignoreList.setModel(model);
  +          updateAllIgnoreStuff();
           }
         });
     }
   
  +  private void updateAllIgnoreStuff() {
  +      updateHiddenSetModels();
  +      updateIgnoreSummary();
  +  }
  +  
  +  private void updateHiddenSetModels() {
  +      DefaultListModel model = (DefaultListModel) ignoreList.getModel();
  +      model.clear();
  +      List sortedIgnoreList = new ArrayList(getHiddenSet());
  +      Collections.sort(sortedIgnoreList);
  +
  +      for (Iterator iter = sortedIgnoreList.iterator(); iter.hasNext();)
  +      {
  +        String string = (String) iter.next();
  +        model.addElement(string);
  +      }
  +
  +//      ignoreList.setModel(model);
  +
  +  }
  +  private void updateIgnoreSummary() {
  +      ignoreSummary.setText(ignoreList.getModel().getSize() + " hidden loggers");
  +  }
  +  
     private void toggleFocusOnState()
     {
       setFocusOnSelected(!isFocusOnSelected());
  
  
  
  1.5       +7 -0      
logging-log4j/src/java/org/apache/log4j/chainsaw/help/release-notes.html
  
  Index: release-notes.html
  ===================================================================
  RCS file: 
/home/cvs/logging-log4j/src/java/org/apache/log4j/chainsaw/help/release-notes.html,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- release-notes.html        17 May 2004 22:26:09 -0000      1.4
  +++ release-notes.html        18 May 2004 00:39:55 -0000      1.5
  @@ -7,6 +7,13 @@
   <BODY>
   <h2>Release Notes</h2>
   
  +
  +<h3>1.99.99 (18th May 2004 10:35 GMT+10)</h3>
  +<h2>18 May 2004</h2>
  +<ul>
  + <li>Tidied up the Logger Tree Panel's hidden logger functionality.  It's now 
managed by a popup dialog, freeing up space for the Logger tree itself.</li>
  +</ul>
  +
   <h3>v1.99.99 (pre-log4j 1.3 Alpha)</h3>
   <h2>18 May 2004</h2>
   <ul>
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to