Class JPanelFrame

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer

    public class JPanelFrame
    extends javax.swing.JPanel
    implements javax.swing.RootPaneContainer
    A JPanel subclass that has a drop shadow border and that provides a header with icon, title and tool bar.

    This class can be used to replace the JInternalFrame, for use outside of a JDesktopPane. The SimpleInternalFrame is less flexible but often more usable; it avoids overlapping windows and scales well up to IDE size. Several customers have reported that they and their clients feel much better with both the appearance and the UI feel.

    The SimpleInternalFrame provides the following bound properties: frameIcon, title, toolBar, content, selected.

    By default the SimpleInternalFrame is in selected state. If you don't do anything, multiple simple internal frames will be displayed as selected.

    Since:
    1.0.1
    Version:
    "1.0.9" - b201903071030L
    Author:
    Julien Seinturier - COMEX S.A. - contact@jorigin.org - https://github.com/jorigin/jeometry
    See Also:
    JInternalFrame, JDesktopPane, Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JPanel

        javax.swing.JPanel.AccessibleJPanel
      • Nested classes/interfaces inherited from class javax.swing.JComponent

        javax.swing.JComponent.AccessibleJComponent
      • Nested classes/interfaces inherited from class java.awt.Container

        java.awt.Container.AccessibleAWTContainer
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • Field Summary

      • Fields inherited from class javax.swing.JComponent

        listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
      • Fields inherited from class java.awt.Component

        accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
      • Fields inherited from interface java.awt.image.ImageObserver

        ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
    • Constructor Summary

      Constructors 
      Constructor Description
      JPanelFrame​(java.lang.String title)
      Constructs a JPanelFrame with the specified title.
      JPanelFrame​(java.lang.String title, javax.swing.JToolBar bar, javax.swing.JComponent content)
      Constructs a JPanelFrame with the specified title, tool bar, and content panel.
      JPanelFrame​(javax.swing.Icon icon, java.lang.String title)
      Constructs a JPanelFrame with the specified icon, and title.
      JPanelFrame​(javax.swing.Icon icon, java.lang.String title, javax.swing.JToolBar bar, javax.swing.JComponent content)
      Constructs a JPanelFrame with the specified icon, title, tool bar, and content panel.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.awt.Component add​(java.awt.Component comp)
      Appends the specified component to the end of this container.
      java.awt.Component add​(java.awt.Component comp, int index)
      Adds the specified component to this container at the given position.
      void add​(java.awt.Component comp, java.lang.Object constraints)
      Adds the specified component to this container with the specified constraints to the end of this conainer.
      void add​(java.awt.Component comp, java.lang.Object constraints, int index)
      Adds the specified component to this container with the specified constraints at the specified index.
      protected void addImpl​(java.awt.Component comp, java.lang.Object constraints, int index)
      Adds the specified child Component.
      protected void createRootPane()
      Called by the constructor methods to create the default rootPane.
      java.awt.Component getContent()
      Returns the content - null, if none has been set.
      java.awt.Container getContentPane()
      Returns the contentPane.
      int getDefaultCloseOperation()
      A convenience method for getting default close operation.
      javax.swing.Icon getFrameIcon()
      Returns the frame's icon.
      java.awt.Component getGlassPane()
      Returns the glassPane.
      protected java.awt.Color getHeaderBackground()
      Determines and answers the header's background color.
      java.awt.Image getIconImage()
      Get the image that is displayed in the panel.
      javax.swing.JMenuBar getJMenuBar()
      Returns the menubar set on this panel frame.
      javax.swing.JLayeredPane getLayeredPane()
      Returns the layeredPane.
      javax.swing.JRootPane getRootPane()
      Return this component's single JRootPane child.
      protected java.awt.Color getTextForeground​(boolean isSelected)
      Determines and answers the header's text foreground color.
      java.lang.String getTitle()
      Returns the frame's title text.
      javax.swing.JToolBar getToolBar()
      Returns the current JToolBar, null if none has been set before.
      protected boolean isRootPaneCheckingEnabled()
      Returns whether calls to add and setLayout are forwarded to the contentPane.
      boolean isSelected()
      Answers if the panel is currently selected (or in other words active) or not.
      protected void processWindowEvent​(java.awt.event.WindowEvent e)
      Processes window events occurring on this component.
      void remove​(int index)
      Removes the component, specified by index, from this container.
      void remove​(java.awt.Component comp)
      Removes the specified component from the container.
      void removeAll()
      Removes all the components from this container.
      void setContentPane​(java.awt.Container contentPane)
      The "contentPane" is the primary container for application specific components.
      void setDefaultCloseOperation​(int operation)
      A convenience method for setting default close operation.
      void setFrameIcon​(javax.swing.Icon newIcon)
      Sets a new frame icon.
      void setGlassPane​(java.awt.Component glassPane)
      The glassPane is always the first child of the rootPane and the rootPanes layout manager ensures that it's always as big as the rootPane.
      void setIconImage​(java.awt.Image image)
      Sets the image to be displayed in the minimized icon for this frame.
      void setJMenuBar​(javax.swing.JMenuBar menu)
      Sets the menubar for this panel frame.
      void setLayeredPane​(javax.swing.JLayeredPane layeredPane)
      A Container that manages the contentPane and in some cases a menu bar.
      protected void setRootPaneCheckingEnabled​(boolean enabled)
      Sets whether calls to add and setLayout are forwarded to the contentPane.
      void setSelected​(boolean newValue)
      This panel draws its title bar differently if it is selected, which may be used to indicate to the user that this panel has the focus, or should get more attention than other simple internal frames.
      void setTitle​(java.lang.String newText)
      Sets a new title text.
      void setToolBar​(javax.swing.JToolBar newToolBar)
      Sets a new JToolBar in the header.
      void update​(java.awt.Graphics g)
      Just calls paint(g).
      void updateUI()
      Updates the UI.
      • Methods inherited from class javax.swing.JPanel

        getAccessibleContext, getUI, getUIClassID, paramString, setUI
      • Methods inherited from class javax.swing.JComponent

        addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction
      • Methods inherited from class java.awt.Container

        add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
      • Methods inherited from class java.awt.Component

        action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

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

      • JPanelFrame

        public JPanelFrame​(java.lang.String title)
        Constructs a JPanelFrame with the specified title. The title is intended to be non-blank, or in other words should contain non-space characters.
        Parameters:
        title - the initial title
      • JPanelFrame

        public JPanelFrame​(javax.swing.Icon icon,
                           java.lang.String title)
        Constructs a JPanelFrame with the specified icon, and title.
        Parameters:
        icon - the initial icon
        title - the initial title
      • JPanelFrame

        public JPanelFrame​(java.lang.String title,
                           javax.swing.JToolBar bar,
                           javax.swing.JComponent content)
        Constructs a JPanelFrame with the specified title, tool bar, and content panel.
        Parameters:
        title - the initial title
        bar - the initial tool bar
        content - the initial content pane
      • JPanelFrame

        public JPanelFrame​(javax.swing.Icon icon,
                           java.lang.String title,
                           javax.swing.JToolBar bar,
                           javax.swing.JComponent content)
        Constructs a JPanelFrame with the specified icon, title, tool bar, and content panel.
        Parameters:
        icon - the initial icon
        title - the initial title
        bar - the initial tool bar
        content - the initial content pane
    • Method Detail

      • getRootPane

        public javax.swing.JRootPane getRootPane()
        Return this component's single JRootPane child. A conventional implementation of this interface will have all of the other methods indirect through this one. The rootPane has two children: the glassPane and the layeredPane.
        Specified by:
        getRootPane in interface javax.swing.RootPaneContainer
        Overrides:
        getRootPane in class javax.swing.JComponent
        Returns:
        this components single JRootPane child.
        See Also:
        JRootPane
      • setContentPane

        public void setContentPane​(java.awt.Container contentPane)
        The "contentPane" is the primary container for application specific components. Applications should add children to the contentPane, set its layout manager, and so on.

        The contentPane my not be null.

        Generally implemented with getRootPane().setContentPane(contentPane);

        Specified by:
        setContentPane in interface javax.swing.RootPaneContainer
        Parameters:
        contentPane - the Container to use for the contents of this JRootPane
        Throws:
        java.awt.IllegalComponentStateException - (a runtime exception) if the content pane parameter is null
        See Also:
        JRootPane.getContentPane(), getContentPane()
      • getContentPane

        public java.awt.Container getContentPane()
        Returns the contentPane.
        Specified by:
        getContentPane in interface javax.swing.RootPaneContainer
        Returns:
        the value of the contentPane property.
        See Also:
        setContentPane(java.awt.Container)
      • setLayeredPane

        public void setLayeredPane​(javax.swing.JLayeredPane layeredPane)
        A Container that manages the contentPane and in some cases a menu bar. The layeredPane can be used by descendants that want to add a child to the RootPaneContainer that isn't layout managed. For example an internal dialog or a drag and drop effect component.

        The layeredPane may not be null.

        Generally implemented with

            getRootPane().setLayeredPane(layeredPane);
        Specified by:
        setLayeredPane in interface javax.swing.RootPaneContainer
        Throws:
        java.awt.IllegalComponentStateException - (a runtime exception) if the layered pane parameter is null
        See Also:
        getLayeredPane(), JRootPane.getLayeredPane()
      • getLayeredPane

        public javax.swing.JLayeredPane getLayeredPane()
        Returns the layeredPane.
        Specified by:
        getLayeredPane in interface javax.swing.RootPaneContainer
        Returns:
        the value of the layeredPane property.
        See Also:
        setLayeredPane(javax.swing.JLayeredPane)
      • setGlassPane

        public void setGlassPane​(java.awt.Component glassPane)
        The glassPane is always the first child of the rootPane and the rootPanes layout manager ensures that it's always as big as the rootPane. By default it's transparent and not visible. It can be used to temporarily grab all keyboard and mouse input by adding listeners and then making it visible. by default it's not visible.

        The glassPane may not be null.

        Generally implemented with getRootPane().setGlassPane(glassPane);

        Specified by:
        setGlassPane in interface javax.swing.RootPaneContainer
        See Also:
        getGlassPane(), JRootPane.setGlassPane(java.awt.Component)
      • getGlassPane

        public java.awt.Component getGlassPane()
        Returns the glassPane.
        Specified by:
        getGlassPane in interface javax.swing.RootPaneContainer
        Returns:
        the value of the glassPane property.
        See Also:
        setGlassPane(java.awt.Component)
      • add

        public java.awt.Component add​(java.awt.Component comp)
        Appends the specified component to the end of this container. This is a convenience method for addImpl(java.awt.Component, java.lang.Object, int).
        Note: If a component has been added to a container that has been displayed, validate must be called on that container to display the new component. If multiple components are being added, you can improve efficiency by calling validate only once, after all the components have been added.
        Overrides:
        add in class java.awt.Container
        Parameters:
        comp - Component the component to be added
        Returns:
        Component the component argument
        See Also:
        Container.validate(), JComponent.revalidate()
      • add

        public java.awt.Component add​(java.awt.Component comp,
                                      int index)
        Adds the specified component to this container at the given position. This is a convenience method for addImpl(java.awt.Component, java.lang.Object, int).
        Note: If a component has been added to a container that has been displayed, validate must be called on that container to display the new component. If multiple components are being added, you can improve efficiency by calling validate only once, after all the components have been added.
        Overrides:
        add in class java.awt.Container
        Parameters:
        comp - Component the component to be added
        index - the position at which to insert the component, or -1 to append the component to the end
        Returns:
        the added component.
        See Also:
        remove(int), Container.validate(), JComponent.revalidate()
      • add

        public void add​(java.awt.Component comp,
                        java.lang.Object constraints)
        Adds the specified component to this container with the specified constraints to the end of this conainer. Also notifies the layout manager to add the component to the this container's layout using the specified constraints object. This is a convenience method for addImpl(java.awt.Component, java.lang.Object, int).

        Note: If a component has been added to a container that has been displayed, validate must be called on that container to display the new component. If multiple components are being added, you can improve efficiency by calling validate only once, after all the components have been added.
        Overrides:
        add in class java.awt.Container
        Parameters:
        comp - Component the component to be added
        constraints - Object an object expressing layout contraints for this
        See Also:
        Container.validate(), JComponent.revalidate(), remove(int), LayoutManager
      • add

        public void add​(java.awt.Component comp,
                        java.lang.Object constraints,
                        int index)
        Adds the specified component to this container with the specified constraints at the specified index. Also notifies the layout manager to add the component to the this container's layout using the specified constraints object. This is a convenience method for addImpl(java.awt.Component, java.lang.Object, int).

        Note: If a component has been added to a container that has been displayed, validate must be called on that container to display the new component. If multiple components are being added, you can improve efficiency by calling validate only once, after all the components have been added.
        Overrides:
        add in class java.awt.Container
        Parameters:
        comp - Component the component to be added
        constraints - Object an object expressing layout constraints for this
        index - int the position in the container's list at which to insert the component; -1 means insert at the end component
        See Also:
        Container.validate(), JComponent.revalidate(), remove(int), LayoutManager
      • remove

        public void remove​(int index)
        Removes the component, specified by index, from this container. This method also notifies the layout manager to remove the component from this container's layout via the removeLayoutComponent method.
        Overrides:
        remove in class java.awt.Container
        Parameters:
        index - the index of the component to be removed
        See Also:
        add(java.awt.Component)
      • removeAll

        public void removeAll()
        Removes all the components from this container. This method also notifies the layout manager to remove the components from this container's layout via the removeLayoutComponent method.
        Overrides:
        removeAll in class java.awt.Container
        See Also:
        add(java.awt.Component), remove(int)
      • createRootPane

        protected void createRootPane()
        Called by the constructor methods to create the default rootPane.
      • addImpl

        protected void addImpl​(java.awt.Component comp,
                               java.lang.Object constraints,
                               int index)
        Adds the specified child Component. This method is overridden to conditionally forwad calls to the contentPane. By default, children are added to the contentPane instead of the frame, refer to RootPaneContainer for details.
        Overrides:
        addImpl in class java.awt.Container
        Parameters:
        comp - the component to be enhanced
        constraints - the constraints to be respected
        index - the index
        See Also:
        setRootPaneCheckingEnabled(boolean), RootPaneContainer
      • setJMenuBar

        public void setJMenuBar​(javax.swing.JMenuBar menu)
        Sets the menubar for this panel frame.
        Parameters:
        menu - JMenuBar the menubar being placed in the frame
        See Also:
        getJMenuBar()
      • getJMenuBar

        public javax.swing.JMenuBar getJMenuBar()
        Returns the menubar set on this panel frame.
        Returns:
        JMenuBar the menubar for this frame
        See Also:
        setJMenuBar(javax.swing.JMenuBar)
      • setRootPaneCheckingEnabled

        protected void setRootPaneCheckingEnabled​(boolean enabled)
        Sets whether calls to add and setLayout are forwarded to the contentPane.
        Parameters:
        enabled - boolean true if add and setLayout are forwarded, false if they should operate directly on the JPanelFrame.
        See Also:
        addImpl(java.awt.Component, java.lang.Object, int), Container.setLayout(java.awt.LayoutManager), isRootPaneCheckingEnabled(), RootPaneContainer
      • processWindowEvent

        protected void processWindowEvent​(java.awt.event.WindowEvent e)
        Processes window events occurring on this component. Hides the window or disposes of it, as specified by the setting of the defaultCloseOperation property.
        Parameters:
        e - the window event
      • remove

        public void remove​(java.awt.Component comp)
        Removes the specified component from the container. If comp is not the rootPane, this will forward the call to the contentPane. This will do nothing if comp is not a child of the JFrame or contentPane.
        Overrides:
        remove in class java.awt.Container
        Parameters:
        comp - Component the component to be removed
        See Also:
        Container.add(java.awt.Component), RootPaneContainer
      • setDefaultCloseOperation

        public void setDefaultCloseOperation​(int operation)
        A convenience method for setting default close operation.
        Parameters:
        operation - the operation processed. By default this method does nothing.
        See Also:
        JFrame.setDefaultCloseOperation(int)
      • getDefaultCloseOperation

        public int getDefaultCloseOperation()
        A convenience method for getting default close operation. By default this method return 0.
        Returns:
        the default close operation.
      • update

        public void update​(java.awt.Graphics g)
        Just calls paint(g). This method was overridden to prevent an unnecessary call to clear the background.
        Overrides:
        update in class javax.swing.JComponent
        Parameters:
        g - the Graphics context in which to paint
        See Also:
        Component.update(Graphics)
      • setIconImage

        public void setIconImage​(java.awt.Image image)
        Sets the image to be displayed in the minimized icon for this frame. Not all platforms support the concept of minimizing a window.
        Parameters:
        image - the icon image to be displayed. If this parameter is null then the icon image is set to the default image, which may vary with platform.
        See Also:
        Frame.getIconImage()
      • getIconImage

        public java.awt.Image getIconImage()
        Get the image that is displayed in the panel.
        Returns:
        the icon image that is displayed.
      • getFrameIcon

        public javax.swing.Icon getFrameIcon()
        Returns the frame's icon.
        Returns:
        the frame's icon
      • setFrameIcon

        public void setFrameIcon​(javax.swing.Icon newIcon)
        Sets a new frame icon.
        Parameters:
        newIcon - the icon to be set
      • getTitle

        public java.lang.String getTitle()
        Returns the frame's title text.
        Returns:
        String the current title text
      • setTitle

        public void setTitle​(java.lang.String newText)
        Sets a new title text.
        Parameters:
        newText - the title text tp be set
      • getToolBar

        public javax.swing.JToolBar getToolBar()
        Returns the current JToolBar, null if none has been set before.
        Returns:
        the current toolbar - if any
      • setToolBar

        public void setToolBar​(javax.swing.JToolBar newToolBar)
        Sets a new JToolBar in the header.
        Parameters:
        newToolBar - the tool bar to be set in the header
      • getContent

        public java.awt.Component getContent()
        Returns the content - null, if none has been set.
        Returns:
        the current content
      • isSelected

        public boolean isSelected()
        Answers if the panel is currently selected (or in other words active) or not. In the selected state, the header background will be rendered differently.
        Returns:
        boolean a boolean, where true means the frame is selected (currently active) and false means it is not
      • setSelected

        public void setSelected​(boolean newValue)
        This panel draws its title bar differently if it is selected, which may be used to indicate to the user that this panel has the focus, or should get more attention than other simple internal frames.
        Parameters:
        newValue - a boolean, where true means the frame is selected (currently active) and false means it is not
      • updateUI

        public void updateUI()
        Updates the UI. In addition to the superclass behavior, we need to update the header component.
        Overrides:
        updateUI in class javax.swing.JPanel
      • getTextForeground

        protected java.awt.Color getTextForeground​(boolean isSelected)
        Determines and answers the header's text foreground color. Tries to lookup a special color from the L&F. In case it is absent, it uses the standard internal frame forground.
        Parameters:
        isSelected - true to lookup the active color, false for the inactive
        Returns:
        the color of the foreground text
      • getHeaderBackground

        protected java.awt.Color getHeaderBackground()
        Determines and answers the header's background color. Tries to lookup a special color from the L&F. In case it is absent, it uses the standard internal frame background.
        Returns:
        the color of the header's background