public class JRibbon
extends javax.swing.JComponent
The ribbon has the following major parts:
addTask(RibbonTask)addContextualTaskGroup(RibbonContextualTaskGroup)setApplicationMenu(RibbonApplicationMenu)addTaskbarCommand(FlamingoCommand)addAnchoredCommand(FlamingoCommand)While multiple ribbon tasks can be added to the ribbon, only one is visible at any given time. This task is called the selected task. Tasks can be switched with the task buttons placed along the top part of the ribbon. Once a task has been added to the ribbon, it cannot be removed.
The contextual ribbon task groups allow showing and hiding ribbon tasks based on the current
selection in the application. For example, Word only shows the table tasks when a table is
selected in the document. By default, tasks belonging to the groups adde by
addContextualTaskGroup(RibbonContextualTaskGroup) are not visible. To show the tasks
belonging to the specific group, call setVisible(RibbonContextualTaskGroup, boolean)
API. Note that you can have multiple task groups visible at the same time.
The application menu button is a big round button shown in the top left corner of the ribbon. If
the setApplicationMenu(RibbonApplicationMenu) is not called, or called with the
null value, the application menu button is not shown, and ribbon task buttons are
shifted to the left.
The taskbar panel allows showing controls that are visible no matter what ribbon task is
selected. To add a taskbar component use the addTaskbarCommand(FlamingoCommand) API. The
taskbar panel lives to the right of the application menu button. Taskbar components can be
removed with the removeTaskbarCommand(FlamingoCommand) API.
The ribbon can be minimized in one of the following ways:
setMinimized(boolean) with true.Ctrl+F1 key combination.A minimized ribbon shows the application menu button, taskbar panel, task buttons and help button, but not the ribbon bands of the selected task. Clicking a task button shows the ribbon bands of that task in a popup without shifting the application content down.
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy| Modifier and Type | Field | Description |
|---|---|---|
static java.lang.String |
uiClassID |
The UI class ID string.
|
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT| Constructor | Description |
|---|---|
JRibbon() |
Creates a new empty ribbon.
|
| Modifier and Type | Method | Description |
|---|---|---|
void |
addAnchoredCommand(FlamingoCommand ribbonCommand) |
Adds the specified ribbon command to the trailing edge of the task toggle strip of this
ribbon.
|
void |
addChangeListener(javax.swing.event.ChangeListener l) |
Adds the specified change listener to track changes to this ribbon.
|
void |
addContextualTaskGroup(RibbonContextualTaskGroup group) |
Adds the specified contextual task group to this ribbon.
|
void |
addTask(RibbonTask task) |
Adds the specified task to this ribbon.
|
void |
addTaskbarCommand(FlamingoCommand command) |
Adds the specified taskbar command to this ribbon.
|
javax.swing.JSeparator |
addTaskbarSeparator() |
Adds a taskbar separator to this ribbon.
|
void |
clearTaskbar() |
Removes all taskbar content from this ribbon.
|
protected void |
fireStateChanged() |
Notifies all registered listeners that the state of this ribbon has changed.
|
java.util.List<FlamingoCommand> |
getAnchoredCommands() |
Returns the anchored commands for this ribbon.
|
RibbonApplicationMenu |
getApplicationMenu() |
Returns the application menu of this ribbon.
|
java.lang.String |
getApplicationMenuKeyTip() |
Returns the key tip of the application menu button.
|
RichTooltip |
getApplicationMenuRichTooltip() |
Returns the rich tooltip of the application menu button.
|
RibbonContextualTaskGroup |
getContextualTaskGroup(int index) |
Retrieves contextual task group at specified index.
|
int |
getContextualTaskGroupCount() |
Returns the number of contextual task groups in
this ribbon. |
JRibbonFrame |
getRibbonFrame() |
Returns the ribbon frame that hosts this ribbon.
|
RibbonTask |
getSelectedTask() |
Returns the currently selected task.
|
RibbonTask |
getTask(int index) |
Retrieves the regular task at specified index.
|
java.util.List<FlamingoCommand> |
getTaskbarCommands() |
Gets an unmodifiable list of all taskbar commands of
this ribbon. |
java.util.List<java.awt.Component> |
getTaskbarComponents() |
|
int |
getTaskCount() |
Returns the number of regular tasks in
this ribbon. |
RibbonUI |
getUI() |
Returns the UI object which implements the L&F for this component.
|
java.lang.String |
getUIClassID() |
|
boolean |
isMinimized() |
Returns the indication whether this ribbon is minimized.
|
boolean |
isVisible(RibbonContextualTaskGroup group) |
Returns the visibility of ribbon tasks in the specified contextual task group.
|
void |
removeAnchoredCommand(FlamingoCommand ribbonCommand) |
Removes the specified ribbon command from the trailing edge of the task toggle strip of this
ribbon.
|
void |
removeChangeListener(javax.swing.event.ChangeListener l) |
Removes the specified change listener from tracking changes to this ribbon.
|
void |
removeTaskbarCommand(FlamingoCommand command) |
Removes the specified taskbar command from this ribbon.
|
void |
removeTaskbarSeparator(javax.swing.JSeparator separator) |
Removes the specified taskbar separator from this ribbon.
|
void |
setApplicationMenu(RibbonApplicationMenu applicationMenu) |
Sets the application menu for this ribbon.
|
void |
setApplicationMenuKeyTip(java.lang.String keyTip) |
Sets the key tip of the application menu button.
|
void |
setApplicationMenuRichTooltip(RichTooltip tooltip) |
Sets the rich tooltip of the application menu button.
|
void |
setMinimized(boolean isMinimized) |
Changes the minimized state of this ribbon.
|
void |
setSelectedTask(RibbonTask task) |
Selects the specified task.
|
void |
setVisible(boolean flag) |
|
void |
setVisible(RibbonContextualTaskGroup group,
boolean isVisible) |
Sets the visibility of ribbon tasks in the specified contextual task group.
|
void |
updateUI() |
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, getAccessibleContext, 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, transferFocusUpCycleadd, add, add, add, add, addContainerListener, addImpl, 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, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTreeaddAncestorListener, 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, getRootPane, 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, paramString, 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, unregisterKeyboardAction, updatepublic static final java.lang.String uiClassID
public JRibbon()
JRibbonFrame
and access the ribbon with JRibbonFrame.getRibbon() API.public void addTaskbarCommand(FlamingoCommand command)
command - The taskbar command to add.removeTaskbarCommand(FlamingoCommand),
getTaskbarCommands(),
addTaskbarSeparator(),
clearTaskbar()public javax.swing.JSeparator addTaskbarSeparator()
public void removeTaskbarCommand(FlamingoCommand command)
command - The taskbar command to remove.addTaskbarCommand(FlamingoCommand),
getTaskbarCommands(),
clearTaskbar()public void removeTaskbarSeparator(javax.swing.JSeparator separator)
separator - The taskbar separator to remove.addTaskbarCommand(FlamingoCommand),
removeTaskbarCommand(FlamingoCommand),
clearTaskbar(),
getTaskbarCommands()public void clearTaskbar()
public void addTask(RibbonTask task)
task - The ribbon task to add.addContextualTaskGroup(RibbonContextualTaskGroup),
getTaskCount(),
getTask(int)public void addAnchoredCommand(FlamingoCommand ribbonCommand)
ribbonCommand - Command to add.getAnchoredCommands(),
removeAnchoredCommand(FlamingoCommand)public void removeAnchoredCommand(FlamingoCommand ribbonCommand)
ribbonCommand - Command to remove.getAnchoredCommands(),
addAnchoredCommand(FlamingoCommand)public java.util.List<FlamingoCommand> getAnchoredCommands()
addAnchoredCommand(FlamingoCommand),
removeAnchoredCommand(FlamingoCommand)public void addContextualTaskGroup(RibbonContextualTaskGroup group)
group - Task group to add.addTask(RibbonTask),
setVisible(RibbonContextualTaskGroup, boolean),
isVisible(RibbonContextualTaskGroup)public int getTaskCount()
this ribbon.this ribbon.getTask(int),
addTask(RibbonTask)public RibbonTask getTask(int index)
index - Task index.getTaskCount(),
addTask(RibbonTask)public int getContextualTaskGroupCount()
this ribbon.this ribbon.addContextualTaskGroup(RibbonContextualTaskGroup),
getContextualTaskGroup(int)public RibbonContextualTaskGroup getContextualTaskGroup(int index)
index - Group index.addContextualTaskGroup(RibbonContextualTaskGroup),
getContextualTaskGroupCount()public void setSelectedTask(RibbonTask task)
addTask(RibbonTask)) or a task in a visible contextual task group (added with
addContextualTaskGroup(RibbonContextualTaskGroup). Fires a selectedTask
property change event.task - Task to select.java.lang.IllegalArgumentException - If the specified task is not in the ribbon or not visible.getSelectedTask()public RibbonTask getSelectedTask()
setSelectedTask(RibbonTask)public void updateUI()
updateUI in class javax.swing.JComponentpublic RibbonUI getUI()
getUI in class javax.swing.JComponentRibbonUI objectJComponent.setUI(javax.swing.plaf.ComponentUI)public java.lang.String getUIClassID()
getUIClassID in class javax.swing.JComponentpublic java.util.List<FlamingoCommand> getTaskbarCommands()
this ribbon.this ribbon.addTaskbarCommand(FlamingoCommand),
removeTaskbarCommand(FlamingoCommand)public java.util.List<java.awt.Component> getTaskbarComponents()
public void addChangeListener(javax.swing.event.ChangeListener l)
l - Change listener to add.removeChangeListener(ChangeListener)public void removeChangeListener(javax.swing.event.ChangeListener l)
l - Change listener to remove.addChangeListener(ChangeListener)protected void fireStateChanged()
public void setVisible(RibbonContextualTaskGroup group, boolean isVisible)
group - Contextual task group.isVisible - If true, all ribbon tasks in the specified group will be
visible. If
false, all ribbon tasks in the specified group will be hidden.isVisible(RibbonContextualTaskGroup)public boolean isVisible(RibbonContextualTaskGroup group)
group - Contextual task group.true if the ribbon tasks in the specified group are visible,
false otherwise.public void setApplicationMenu(RibbonApplicationMenu applicationMenu)
null is passed, the application
menu button is hidden. Fires an applicationMenu property change event.applicationMenu - The new application menu. Can be null.getApplicationMenu()public RibbonApplicationMenu getApplicationMenu()
setApplicationMenu(RibbonApplicationMenu)public void setApplicationMenuRichTooltip(RichTooltip tooltip)
applicationMenuRichTooltip property change event.tooltip - The rich tooltip of the application menu button.getApplicationMenuRichTooltip(),
setApplicationMenu(RibbonApplicationMenu)public RichTooltip getApplicationMenuRichTooltip()
setApplicationMenuRichTooltip(RichTooltip),
setApplicationMenu(RibbonApplicationMenu)public void setApplicationMenuKeyTip(java.lang.String keyTip)
applicationMenuKeyTip
property change event.keyTip - The new key tip for the application menu button.setApplicationMenu(RibbonApplicationMenu),
getApplicationMenuKeyTip()public java.lang.String getApplicationMenuKeyTip()
setApplicationMenuKeyTip(String),
setApplicationMenu(RibbonApplicationMenu)public boolean isMinimized()
true if this ribbon is minimized, false otherwise.setMinimized(boolean)public void setMinimized(boolean isMinimized)
minimized property change
event.isMinimized - if true, this ribbon becomes minimized, otherwise it is
unminimized.public JRibbonFrame getRibbonFrame()
null.public void setVisible(boolean flag)
setVisible in class javax.swing.JComponent