Class JRibbonFrame

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

    public class JRibbonFrame
    extends javax.swing.JFrame

    Ribbon frame. Provides the same functionality as a regular JFrame, but with a JRibbon component in the top location.

    This is the only officially supported way to use the JRibbon container. While JRibbon() constructor is public, it is provided only for the applications that are absolutely prevented from using JRibbonFrame class.

    The implementation enforces that a JRibbon component is always at the BorderLayout.NORTH location, throwing IllegalArgumentException on attempts to set a custom layout manager, add another component at BorderLayout.NORTH, remove the JRibbon component, set a custom menu bar, content pane or any other operation that interferes with the intended hierarchy of this frame.

    See Also:
    Serialized Form
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  JRibbonFrame.GlobalPopupMenuPanel  
      private static class  JRibbonFrame.KeyTipLayer
      A custom layer that shows the currently visible key tip chain.
      private static class  JRibbonFrame.RibbonFrameLayout
      Custom layout manager that enforces the JRibbon location at BorderLayout.NORTH.
      static class  JRibbonFrame.RibbonKeyboardAction  
      • Nested classes/interfaces inherited from class javax.swing.JFrame

        javax.swing.JFrame.AccessibleJFrame
      • Nested classes/interfaces inherited from class java.awt.Frame

        java.awt.Frame.AccessibleAWTFrame
      • Nested classes/interfaces inherited from class java.awt.Window

        java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
      • 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 
      Modifier and Type Field Description
      private java.awt.event.AWTEventListener awtEventListener  
      private KeyTipManager.KeyTipListener keyTipListener  
      private JRibbon ribbon
      The ribbon component.
      private boolean wasSetIconImagesCalled  
      • Fields inherited from class javax.swing.JFrame

        accessibleContext, rootPane, rootPaneCheckingEnabled
      • Fields inherited from class java.awt.Frame

        CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
      • Fields inherited from class java.awt.Component

        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
      • Fields inherited from interface javax.swing.WindowConstants

        DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
    • Constructor Summary

      Constructors 
      Constructor Description
      JRibbonFrame()
      Creates a new ribbon frame with no title.
      JRibbonFrame​(java.awt.GraphicsConfiguration gc)
      Creates a new ribbon frame with no title.
      JRibbonFrame​(java.lang.String title)
      Creates a new ribbon frame with the specified title.
      JRibbonFrame​(java.lang.String title, java.awt.GraphicsConfiguration gc)
      Creates a new ribbon frame with the specified title.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected javax.swing.JRootPane createRootPane()  
      void dispose()  
      private java.util.List<RibbonTask> getAllShownRibbonTasks()  
      private static java.awt.Image getImage​(RadianceIcon.Factory iconFactory, int size)  
      private RibbonTask getNextRibbonTask()  
      private RibbonTask getPreviousRibbonTask()  
      JRibbon getRibbon()
      Returns the ribbon component.
      private void handlePopupTrigger​(java.awt.event.MouseEvent event, java.awt.Component c)  
      void hide()  
      private void initRibbon()
      Initializes the layout and the ribbon.
      private boolean isInTaskbar​(java.awt.Component c)  
      boolean isShowingKeyTips()
      Returns indication whether this ribbon frame is showing the key tips.
      private boolean isValidPopupTriggerSource​(java.awt.Component c)  
      private void setApplicationAndMenuButtonIcon​(RadianceIcon.Factory iconFactory)  
      void setApplicationIcon​(RadianceIcon.Factory iconFactory)  
      void setContentPane​(java.awt.Container contentPane)  
      void setIconImages​(java.util.List<? extends java.awt.Image> icons)  
      void setJMenuBar​(javax.swing.JMenuBar menubar)  
      void setKeyboardActions​(java.util.Set<JRibbonFrame.RibbonKeyboardAction> actions)  
      void setLayout​(java.awt.LayoutManager manager)  
      private void setLegacyIconImages​(java.util.List<java.awt.Image> images)  
      void show()  
      • Methods inherited from class javax.swing.JFrame

        addImpl, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setLayeredPane, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
      • Methods inherited from class java.awt.Frame

        addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
      • Methods inherited from class java.awt.Window

        addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, toBack, toFront
      • Methods inherited from class java.awt.Container

        add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.awt.MenuContainer

        getFont, postEvent
    • Field Detail

      • ribbon

        private JRibbon ribbon
        The ribbon component.
      • wasSetIconImagesCalled

        private boolean wasSetIconImagesCalled
      • awtEventListener

        private java.awt.event.AWTEventListener awtEventListener
    • Constructor Detail

      • JRibbonFrame

        public JRibbonFrame()
                     throws java.awt.HeadlessException
        Creates a new ribbon frame with no title.
        Throws:
        java.awt.HeadlessException - If GraphicsEnvironment.isHeadless() returns true.
      • JRibbonFrame

        public JRibbonFrame​(java.awt.GraphicsConfiguration gc)
        Creates a new ribbon frame with no title.
        Parameters:
        gc - Graphics configuration to use.
      • JRibbonFrame

        public JRibbonFrame​(java.lang.String title)
                     throws java.awt.HeadlessException
        Creates a new ribbon frame with the specified title.
        Parameters:
        title - Ribbon frame title.
        Throws:
        java.awt.HeadlessException - If GraphicsEnvironment.isHeadless() returns true.
      • JRibbonFrame

        public JRibbonFrame​(java.lang.String title,
                            java.awt.GraphicsConfiguration gc)
        Creates a new ribbon frame with the specified title.
        Parameters:
        title - Ribbon frame title.
        gc - Graphics configuration to use.
        Throws:
        java.awt.HeadlessException - If GraphicsEnvironment.isHeadless() returns true.
    • Method Detail

      • setLayout

        public void setLayout​(java.awt.LayoutManager manager)
        Overrides:
        setLayout in class javax.swing.JFrame
      • setJMenuBar

        public void setJMenuBar​(javax.swing.JMenuBar menubar)
        Overrides:
        setJMenuBar in class javax.swing.JFrame
      • setContentPane

        public void setContentPane​(java.awt.Container contentPane)
        Specified by:
        setContentPane in interface javax.swing.RootPaneContainer
        Overrides:
        setContentPane in class javax.swing.JFrame
      • initRibbon

        private void initRibbon()
        Initializes the layout and the ribbon.
      • dispose

        public void dispose()
        Overrides:
        dispose in class java.awt.Window
      • show

        public void show()
        Overrides:
        show in class java.awt.Window
      • hide

        public void hide()
        Overrides:
        hide in class java.awt.Window
      • isValidPopupTriggerSource

        private boolean isValidPopupTriggerSource​(java.awt.Component c)
      • isInTaskbar

        private boolean isInTaskbar​(java.awt.Component c)
      • handlePopupTrigger

        private void handlePopupTrigger​(java.awt.event.MouseEvent event,
                                        java.awt.Component c)
      • getRibbon

        public JRibbon getRibbon()
        Returns the ribbon component.
        Returns:
        Ribbon component.
      • createRootPane

        protected javax.swing.JRootPane createRootPane()
        Overrides:
        createRootPane in class javax.swing.JFrame
      • setIconImages

        public void setIconImages​(java.util.List<? extends java.awt.Image> icons)
        Overrides:
        setIconImages in class java.awt.Window
      • setApplicationAndMenuButtonIcon

        private void setApplicationAndMenuButtonIcon​(RadianceIcon.Factory iconFactory)
      • setLegacyIconImages

        private void setLegacyIconImages​(java.util.List<java.awt.Image> images)
      • getImage

        private static java.awt.Image getImage​(RadianceIcon.Factory iconFactory,
                                               int size)
      • isShowingKeyTips

        public boolean isShowingKeyTips()
        Returns indication whether this ribbon frame is showing the key tips.
        Returns:
        true if this ribbon frame is showing the key tips, false otherwise.
      • getAllShownRibbonTasks

        private java.util.List<RibbonTask> getAllShownRibbonTasks()
      • getNextRibbonTask

        private RibbonTask getNextRibbonTask()
      • getPreviousRibbonTask

        private RibbonTask getPreviousRibbonTask()