Class SourceListControlBar


  • public class SourceListControlBar
    extends java.lang.Object

    A bar that can contain buttons and pop-down buttons that act on a given SourceList. This control bar is displayed at the base of the SourceList. The control bar also has a draggable widget that can control the divider location of a given JSplitPane.

    Heres how to create and install an empty SourceListControlBar:

     SourceList sourceList = DSourceListITunes.createSourceList();
     SourceListControlBar controlBar = new SourceListControlBar();
     sourceList.installSourceListControlBar(controlBar);
     
    The above code creates a control bar that looks like this:

    The following code adds two push buttons and a drop-down button to the control bar:

     controlBar.createAndAddPopdownButton(MacIcons.GEAR,
             new PopupMenuCustomizer() {
                 public void customizePopup(JPopupMenu popup) {
                     popup.removeAll();
                     popup.add(new JMenuItem("Item One"));
                     popup.add(new JMenuItem("Item Two"));
                     popup.add(new JMenuItem("Item Three"));
                 }
             });
     
    The above code creates a control bar that looks like this:

    • Constructor Summary

      Constructors 
      Constructor Description
      SourceListControlBar()
      Creates a SourceListControlBar.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void createAndAddButton​(javax.swing.Icon icon, java.awt.event.ActionListener actionListener)
      Adds a new button with the given icon.
      void createAndAddPopdownButton​(javax.swing.Icon icon, PopupMenuCustomizer popupMenuCustomizer)
      Add a new pop-down style button.
      javax.swing.JComponent getComponent()
      Gets the user interface component representing this SourceListControlBar.
      void hideResizeHandle()
      Hides the resize handle.
      void installDraggableWidgetOnSplitPane​(javax.swing.JSplitPane splitPane)
      Connects the draggable widget in this SourceListControlBar to the divider of the given JSplitPane.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • SourceListControlBar

        public SourceListControlBar()
        Creates a SourceListControlBar.
    • Method Detail

      • installDraggableWidgetOnSplitPane

        public void installDraggableWidgetOnSplitPane​(javax.swing.JSplitPane splitPane)
        Connects the draggable widget in this SourceListControlBar to the divider of the given JSplitPane. Thus when the user drags the SourceListControlBar draggable widget, the given JSplitPanes divider location will be adjusted.
        Parameters:
        splitPane - the JSplitPane to connect the draggable widget to.
      • getComponent

        public javax.swing.JComponent getComponent()
        Gets the user interface component representing this SourceListControlBar. The returned JComponent should be added to a container that will be displayed.
        Returns:
        the user interface component representing this SourceListControlBar.
      • createAndAddPopdownButton

        public void createAndAddPopdownButton​(javax.swing.Icon icon,
                                              PopupMenuCustomizer popupMenuCustomizer)
        Add a new pop-down style button. The given PopupMenuCustomizer will be called just prior to each showing of the menu.
        Parameters:
        icon - the icon to use in the pop-down menu.
        popupMenuCustomizer - the PopupMenuCustomizer to be called just prior to showing the menu.
      • createAndAddButton

        public void createAndAddButton​(javax.swing.Icon icon,
                                       java.awt.event.ActionListener actionListener)
        Adds a new button with the given icon. The given ActionListener will be called when the button is pressed.
        Parameters:
        icon - the icon to use for the button.
        actionListener - the ActionListener to call when the button is pressed.
      • hideResizeHandle

        public void hideResizeHandle()
        Hides the resize handle.