Class JRibbonBand
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- org.pushingpixels.radiance.component.api.ribbon.AbstractRibbonBand
-
- org.pushingpixels.radiance.component.api.ribbon.JRibbonBand
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
public class JRibbonBand extends AbstractRibbonBand
Ribbon band component. Can host three types of content:- Ribbon commands added with
addRibbonCommand(BaseCommandButtonProjection, PresentationPriority)
. - Wrapped core / 3rd party components added with
addRibbonComponent(ComponentProjection)
. - Ribbon galleries added with
addRibbonGallery(RibbonGalleryProjection, PresentationPriority)
.
Commands are added with associated
JRibbonBand.PresentationPriority
. The higher the priority, the longer the presentation button "stays" in theCommandButtonPresentationState.BIG
orCommandButtonPresentationState.MEDIUM
state - depending on the available resize policies.The content and behavior of galleries added with
addRibbonGallery(RibbonGalleryProjection, PresentationPriority)
can be reconfigured using the following APIs on the model classes:CommandGroup.addCommand(Command)
CommandGroup.removeCommand(Command)
RibbonGalleryContentModel.setSelectedCommand(Command)
RibbonGalleryContentModel.addExtraPopupCommandGroup(CommandGroup)
RibbonGalleryContentModel.removeExtraPopupCommandGroup(CommandGroup)
A ribbon band can have multiple visual groups delineated by vertical separator lines. To start a new unnamed group use the
startGroup()
API. To start a new named group use thestartGroup(String)
API. Unnamed groups will have three rows of controls. Named groups will have two rows of controls, with an additional top row showing the group title.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
JRibbonBand.PresentationPriority
Presentation priority of ribbon band components.-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description static CommandButtonPresentationState
BIG_FIXED
Big size with landscape orientation.static CommandButtonPresentationState
BIG_FIXED_LANDSCAPE
Big size with landscape orientation.-
Fields inherited from class org.pushingpixels.radiance.component.api.ribbon.AbstractRibbonBand
resizePolicies, uiClassID
-
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
-
-
Constructor Summary
Constructors Constructor Description JRibbonBand(java.lang.String title, RadianceIcon.Factory iconFactory)
Creates a new ribbon band.JRibbonBand(java.lang.String title, RadianceIcon.Factory iconFactory, CommandAction expandCommandListener)
Creates a new ribbon band.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addRibbonCommand(BaseCommandButtonProjection<? extends BaseCommand<?>,? extends BaseCommandMenuContentModel,? extends BaseCommandButtonPresentationModel<?,?>,? extends BaseCommandPopupMenuPresentationModel> projection, JRibbonBand.PresentationPriority priority)
Adds the specified command projection tothis
band.void
addRibbonComponent(ComponentProjection<? extends javax.swing.JComponent,? extends ComponentContentModel> projection)
void
addRibbonGallery(RibbonGalleryProjection galleryProjection, JRibbonBand.PresentationPriority priority)
AbstractRibbonBand
cloneBand()
Returns a clone of this ribbon band.void
setGroupTitle(int groupIndex, java.lang.String groupTitle)
Changes the title of the specified group.int
startGroup()
Starts a new unnamed group.int
startGroup(java.lang.String groupTitle)
Starts a new named group.-
Methods inherited from class org.pushingpixels.radiance.component.api.ribbon.AbstractRibbonBand
getCollapsedStateKeyTip, getControlPanel, getCurrentResizePolicy, getExpandButtonKeyTip, getExpandButtonRichTooltip, getExpandCommandListener, getIconFactory, getPopupRibbonBand, getResizePolicies, getTitle, getUI, getUIClassID, setCollapsedStateKeyTip, setControlPanel, setCurrentResizePolicy, setExpandButtonKeyTip, setExpandButtonRichTooltip, setExpandCommandListener, setPopupRibbonBand, setResizePolicies, setRibbonTask, setTitle, setUI, updateUI
-
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, 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, setVisible, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, 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, 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, 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, transferFocusUpCycle
-
-
-
-
Field Detail
-
BIG_FIXED_LANDSCAPE
public static final CommandButtonPresentationState BIG_FIXED_LANDSCAPE
Big size with landscape orientation. Used for buttons in in-ribbon galleries.
-
BIG_FIXED
public static final CommandButtonPresentationState BIG_FIXED
Big size with landscape orientation. Used for buttons in in-ribbon galleries.
-
-
Constructor Detail
-
JRibbonBand
public JRibbonBand(java.lang.String title, RadianceIcon.Factory iconFactory)
Creates a new ribbon band.- Parameters:
title
- Band title.iconFactory
- Associated icon factory (for collapsed state).
-
JRibbonBand
public JRibbonBand(java.lang.String title, RadianceIcon.Factory iconFactory, CommandAction expandCommandListener)
Creates a new ribbon band.- Parameters:
title
- Band title.iconFactory
- Associated icon factory (for collapsed state).expandCommandListener
- Expand command listener (can benull
).
-
-
Method Detail
-
addRibbonCommand
public void addRibbonCommand(BaseCommandButtonProjection<? extends BaseCommand<?>,? extends BaseCommandMenuContentModel,? extends BaseCommandButtonPresentationModel<?,?>,? extends BaseCommandPopupMenuPresentationModel> projection, JRibbonBand.PresentationPriority priority)
Adds the specified command projection tothis
band.- Parameters:
projection
- Command projection to add.priority
- Priority of the command.
-
addRibbonGallery
public void addRibbonGallery(RibbonGalleryProjection galleryProjection, JRibbonBand.PresentationPriority priority)
-
addRibbonComponent
public void addRibbonComponent(ComponentProjection<? extends javax.swing.JComponent,? extends ComponentContentModel> projection)
-
startGroup
public int startGroup()
Starts a new unnamed group.- Returns:
- The index of the new group.
-
startGroup
public int startGroup(java.lang.String groupTitle)
Starts a new named group.- Parameters:
groupTitle
- The group title.- Returns:
- The index of the new group.
-
setGroupTitle
public void setGroupTitle(int groupIndex, java.lang.String groupTitle)
Changes the title of the specified group.- Parameters:
groupIndex
- Group index.groupTitle
- The new title for this group.
-
cloneBand
public AbstractRibbonBand cloneBand()
Description copied from class:AbstractRibbonBand
Returns a clone of this ribbon band.- Specified by:
cloneBand
in classAbstractRibbonBand
- Returns:
- A clone of this ribbon band.
-
-