# Hierarchy For Package org.apache.log4j.chainsaw

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - javax.swing.AbstractAction (implements javax.swing.Action, java.lang.Cloneable, java.io.Serializable)
    - org.apache.log4j.chainsaw.CopyEventsToClipboardAction
  - java.util.AbstractCollection<E> (implements java.util.Collection<E>)
    - java.util.AbstractList<E> (implements java.util.List<E>)
      - org.apache.log4j.chainsaw.CyclicBufferList (implements java.util.List<E>)
  - javax.swing.AbstractListModel<E> (implements javax.swing.ListModel<E>, java.io.Serializable)
    - javax.swing.DefaultListModel<E>
      - org.apache.log4j.chainsaw.ModifiableListModel
  - org.apache.log4j.rule.AbstractRule (implements org.apache.log4j.rule.Rule, java.io.Serializable)
    - org.apache.log4j.chainsaw.RuleMediator
  - org.apache.log4j.AppenderSkeleton (implements org.apache.log4j.Appender, org.apache.log4j.spi.OptionHandler)
    - org.apache.log4j.chainsaw.ChainsawAppender
    - org.apache.log4j.chainsaw.ChainsawAppenderHandler
  - org.apache.log4j.chainsaw.ApplicationPreferenceModel
  - org.apache.log4j.chainsaw.ApplicationPreferenceModelSaver (implements org.apache.log4j.chainsaw.prefs.SettingsListener)
  - org.apache.log4j.chainsaw.ChainsawColumns
  - org.apache.log4j.chainsaw.ChainsawConstants
  - org.apache.log4j.chainsaw.ColumnComparator (implements java.util.Comparator<T>)
  - java.awt.Component (implements java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable)
    - java.awt.Container
      - javax.swing.JComponent (implements java.io.Serializable)
        - javax.swing.AbstractButton (implements java.awt.ItemSelectable, javax.swing.SwingConstants)
          - javax.swing.JButton (implements javax.accessibility.Accessible)
            - org.apache.log4j.chainsaw.SmallButton (implements java.awt.event.MouseListener)
          - javax.swing.JToggleButton (implements javax.accessibility.Accessible)
            - javax.swing.JCheckBox (implements javax.accessibility.Accessible)
              - org.apache.log4j.chainsaw.CheckListCellRenderer (implements javax.swing.ListCellRenderer<E>)
        - javax.swing.JLabel (implements javax.accessibility.Accessible, javax.swing.SwingConstants)
          - javax.swing.table.DefaultTableCellRenderer (implements java.io.Serializable, javax.swing.table.TableCellRenderer)
            - org.apache.log4j.chainsaw.SortHeaderRenderer
            - org.apache.log4j.chainsaw.TableColorizingRenderer
        - javax.swing.JPanel (implements javax.accessibility.Accessible)
          - org.apache.log4j.chainsaw.AbstractPreferencePanel
            - org.apache.log4j.chainsaw.ApplicationPreferenceModelPanel
            - org.apache.log4j.chainsaw.LogPanelPreferencePanel
          - org.apache.log4j.chainsaw.BasicPrefPanel
            - org.apache.log4j.chainsaw.ApplicationPreferenceModelPanel.GeneralAllPrefPanel
            - org.apache.log4j.chainsaw.ApplicationPreferenceModelPanel.VisualsPrefPanel
            - org.apache.log4j.chainsaw.LogPanelPreferencePanel.ColumnSelectorPanel
          - org.apache.log4j.chainsaw.ChainsawStatusBar
          - org.apache.log4j.chainsaw.DockablePanel
            - org.apache.log4j.chainsaw.LogPanel (implements org.apache.log4j.chainsaw.EventBatchListener, org.apache.log4j.chainsaw.prefs.Profileable)
          - org.apache.log4j.chainsaw.ProgressPanel
          - org.apache.log4j.chainsaw.WelcomePanel
        - javax.swing.JTable (implements javax.accessibility.Accessible, javax.swing.event.CellEditorListener, javax.swing.event.ListSelectionListener, javax.swing.event.RowSorterListener, javax.swing.Scrollable, javax.swing.event.TableColumnModelListener, javax.swing.event.TableModelListener)
          - org.apache.log4j.chainsaw.JSortTable (implements java.awt.event.MouseListener)
        - javax.swing.JTree (implements javax.accessibility.Accessible, javax.swing.Scrollable)
          - org.apache.log4j.chainsaw.LoggerNameTree
      - java.awt.Window (implements javax.accessibility.Accessible)
        - java.awt.Frame (implements java.awt.MenuContainer)
          - javax.swing.JFrame (implements javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants)
            - org.apache.log4j.chainsaw.LogUI (implements org.apache.log4j.chainsaw.ChainsawViewer, org.apache.log4j.chainsaw.prefs.SettingsListener)
  - org.apache.log4j.spi.ComponentBase (implements org.apache.log4j.spi.Component)
    - org.apache.log4j.plugins.PluginSkeleton (implements org.apache.log4j.plugins.Plugin)
      - org.apache.log4j.plugins.Receiver (implements org.apache.log4j.spi.Thresholdable)
        - org.apache.log4j.chainsaw.Generator (implements java.lang.Runnable)
  - java.util.EventObject (implements java.io.Serializable)
    - org.apache.log4j.chainsaw.NewKeyEvent
  - org.apache.log4j.chainsaw.JTextComponentFormatter
  - java.awt.event.KeyAdapter (implements java.awt.event.KeyListener)
    - org.apache.log4j.chainsaw.ExpressionRuleContext
  - org.apache.log4j.chainsaw.LogFilePatternLayoutBuilder
  - org.apache.log4j.chainsaw.LoggerNameModelSupport (implements org.apache.log4j.chainsaw.LoggerNameModel)
  - org.apache.log4j.chainsaw.LoggingEventWrapper
  - org.apache.log4j.chainsaw.LogPanelPreferenceModel (implements java.io.Serializable)
  - java.awt.event.MouseAdapter (implements java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener)
    - org.apache.log4j.chainsaw.PopupListener
  - org.apache.log4j.chainsaw.SavableTabSetting
  - java.beans.SimpleBeanInfo (implements java.beans.BeanInfo)
    - org.apache.log4j.chainsaw.GeneratorBeanInfo
  - org.apache.log4j.chainsaw.SortArrowIcon (implements javax.swing.Icon)

## Interface Hierarchy

- org.apache.log4j.chainsaw.ChainsawViewer
- java.util.EventListener
  - org.apache.log4j.chainsaw.EventBatchListener
  - org.apache.log4j.chainsaw.EventCountListener
  - org.apache.log4j.chainsaw.LoggerNameListener
  - org.apache.log4j.chainsaw.NewKeyListener
  - org.apache.log4j.chainsaw.ShutdownListener
- org.apache.log4j.chainsaw.LoggerNameModel
  - org.apache.log4j.chainsaw.EventContainer (also extends org.apache.log4j.chainsaw.SortTableModel)
- javax.swing.table.TableModel
  - org.apache.log4j.chainsaw.SortTableModel
    - org.apache.log4j.chainsaw.EventContainer (also extends org.apache.log4j.chainsaw.LoggerNameModel)