Module java.desktop

Class BasicInternalFrameTitlePane

  • All Implemented Interfaces:
    ImageObserver, MenuContainer, Serializable
    Direct Known Subclasses:
    MetalInternalFrameTitlePane


    public class BasicInternalFrameTitlePane
    extends JComponent
    The class that manages a basic title bar

    Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the java.beans package. Please see XMLEncoder.

    See Also:
    Serialized Form
    • Field Detail

      • menuBar

        protected JMenuBar menuBar
        The instance of JMenuBar.
      • iconButton

        protected JButton iconButton
        The iconify button.
      • maxButton

        protected JButton maxButton
        The maximize button.
      • closeButton

        protected JButton closeButton
        The close button.
      • windowMenu

        protected JMenu windowMenu
        The instance of JMenu.
      • frame

        protected JInternalFrame frame
        The instance of JInternalFrame.
      • selectedTitleColor

        protected Color selectedTitleColor
        The color of a selected title.
      • selectedTextColor

        protected Color selectedTextColor
        The color of a selected text.
      • notSelectedTitleColor

        protected Color notSelectedTitleColor
        The color of a not selected title.
      • notSelectedTextColor

        protected Color notSelectedTextColor
        The color of a not selected text.
      • maxIcon

        protected Icon maxIcon
        The maximize icon.
      • minIcon

        protected Icon minIcon
        The minimize icon.
      • iconIcon

        protected Icon iconIcon
        The iconify icon.
      • closeIcon

        protected Icon closeIcon
        The close icon.
      • propertyChangeListener

        protected PropertyChangeListener propertyChangeListener
        The instance of a PropertyChangeListener.
      • closeAction

        protected Action closeAction
        The instance of a CloseAction.
      • maximizeAction

        protected Action maximizeAction
        The instance of a MaximizeAction.
      • iconifyAction

        protected Action iconifyAction
        The instance of an IconifyAction.
      • restoreAction

        protected Action restoreAction
        The instance of a RestoreAction.
      • moveAction

        protected Action moveAction
        The instance of a MoveAction.
      • sizeAction

        protected Action sizeAction
        The instance of a SizeAction.
      • CLOSE_CMD

        protected static final String CLOSE_CMD
        The close button text property.
      • ICONIFY_CMD

        protected static final String ICONIFY_CMD
        The minimize button text property.
      • RESTORE_CMD

        protected static final String RESTORE_CMD
        The restore button text property.
      • MAXIMIZE_CMD

        protected static final String MAXIMIZE_CMD
        The maximize button text property.
      • MOVE_CMD

        protected static final String MOVE_CMD
        The move button text property.
      • SIZE_CMD

        protected static final String SIZE_CMD
        The size button text property.
    • Constructor Detail

      • BasicInternalFrameTitlePane

        public BasicInternalFrameTitlePane​(JInternalFrame f)
        Constructs a new instance of BasicInternalFrameTitlePane.
        Parameters:
        f - an instance of JInternalFrame
    • Method Detail

      • installTitlePane

        protected void installTitlePane​()
        Installs the title pane.
      • addSubComponents

        protected void addSubComponents​()
        Adds subcomponents.
      • createActions

        protected void createActions​()
        Creates actions.
      • installListeners

        protected void installListeners​()
        Registers listeners.
      • uninstallListeners

        protected void uninstallListeners​()
        Unregisters listeners.
      • installDefaults

        protected void installDefaults​()
        Installs default properties.
      • uninstallDefaults

        protected void uninstallDefaults​()
        Uninstalls default properties.
      • createButtons

        protected void createButtons​()
        Creates buttons.
      • setButtonIcons

        protected void setButtonIcons​()
        Sets the button icons.
      • assembleSystemMenu

        protected void assembleSystemMenu​()
        Assembles system menu.
      • addSystemMenuItems

        protected void addSystemMenuItems​(JMenu systemMenu)
        Adds system menu items to systemMenu.
        Parameters:
        systemMenu - an instance of JMenu
      • createSystemMenu

        protected JMenu createSystemMenu​()
        Returns a new instance of JMenu.
        Returns:
        a new instance of JMenu
      • createSystemMenuBar

        protected JMenuBar createSystemMenuBar​()
        Returns a new instance of JMenuBar.
        Returns:
        a new instance of JMenuBar
      • showSystemMenu

        protected void showSystemMenu​()
        Shows system menu.
      • paintComponent

        public void paintComponent​(Graphics g)
        Description copied from class: JComponent
        Calls the UI delegate's paint method, if the UI delegate is non-null. We pass the delegate a copy of the Graphics object to protect the rest of the paint code from irrevocable changes (for example, Graphics.translate).

        If you override this in a subclass you should not make permanent changes to the passed in Graphics. For example, you should not alter the clip Rectangle or modify the transform. If you need to do these operations you may find it easier to create a new Graphics from the passed in Graphics and manipulate it. Further, if you do not invoker super's implementation you must honor the opaque property, that is if this component is opaque, you must completely fill in the background in a non-opaque color. If you do not honor the opaque property you will likely see visual artifacts.

        The passed in Graphics object might have a transform other than the identify transform installed on it. In this case, you might get unexpected results if you cumulatively apply another transform.

        Overrides:
        paintComponent in class JComponent
        Parameters:
        g - the Graphics object to protect
        See Also:
        JComponent.paint(java.awt.Graphics), ComponentUI
      • paintTitleBackground

        protected void paintTitleBackground​(Graphics g)
        Invoked from paintComponent. Paints the background of the titlepane. All text and icons will then be rendered on top of this background.
        Parameters:
        g - the graphics to use to render the background
        Since:
        1.4
      • getTitle

        protected String getTitle​(String text,
                                  FontMetrics fm,
                                  int availTextWidth)
        Returns the title.
        Parameters:
        text - a text
        fm - an instance of FontMetrics
        availTextWidth - an available text width
        Returns:
        the title.
      • postClosingEvent

        protected void postClosingEvent​(JInternalFrame frame)
        Post a WINDOW_CLOSING-like event to the frame, so that it can be treated like a regular Frame.
        Parameters:
        frame - an instance of JInternalFrame
      • enableActions

        protected void enableActions​()
        Enables actions.
      • createPropertyChangeListener

        protected PropertyChangeListener createPropertyChangeListener​()
        Returns an instance of PropertyChangeListener.
        Returns:
        an instance of PropertyChangeListener
      • createLayout

        protected LayoutManager createLayout​()
        Returns a layout manager.
        Returns:
        a layout manager