|
Groovy Documentation | |||||||
| FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
griffon.coverflow.ui.GradientPanel
com.blogofbug.swing.components.JCarouselMenu
public class JCarouselMenu extends GradientPanel
Shows a carousel offset to the left with a menu of actions on the right.
| Nested Class Summary | |
|---|---|
protected class |
JCarouselMenu.CarouselListCellRenderer
ListCellRenderer for the Carousel uses an image border to draw a nice border around the menu item when it is selected |
class |
JCarouselMenu.MenuItem
A menu item inside the carousel |
private class |
JCarouselMenu.UpDownButton
This class represents the up and down buttons that allow the scrolling through the menu when it is too big to fit in the avaiable space |
| Field Summary | |
|---|---|
private JCarosel |
carousel
The carousel used and drawn on the left. |
private JCarouselMenu.UpDownButton |
downButton
The button shown when you can scroll down |
private int |
lastSelection
The last item selected |
private JList |
menu
A JList with the menu items in |
private LinkedList |
menuItems
Linked list of the items in the menu |
private Map |
menuMap
A hashtable connecting the actions to the components in the carousel |
private DefaultListModel |
menuModel
The model for the action menu |
private JScrollPane |
menuScroll
The scroll pane the menu is in |
private JCarouselMenu.UpDownButton |
upButton
The button that is drawn when it is possible to scroll up |
| Fields inherited from class GradientPanel | |
|---|---|
| GRADIENT_END, GRADIENT_START, gradientEnd, gradientImage, gradientStart |
| Fields inherited from class JPanel | |
|---|---|
| WHEN_FOCUSED, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_IN_FOCUSED_WINDOW, UNDEFINED_CONDITION, TOOL_TIP_TEXT_KEY, TOP_ALIGNMENT, CENTER_ALIGNMENT, BOTTOM_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, WIDTH, HEIGHT, PROPERTIES, SOMEBITS, FRAMEBITS, ALLBITS, ERROR, ABORT |
| Constructor Summary | |
JCarouselMenu(ImageBorder border)
Creates a new instance of JCarouselMenu |
|
JCarouselMenu()
Creates a new instance |
|
| Method Summary | |
|---|---|
Component
|
add(Component component, String label)
Adds a component to the carousel menu that will be brought into view when the user clicks on the associated item |
Component
|
add(Image image, String label, int width, int height)
Adds an image to the menu. |
Component
|
add(Image image, String label)
Adds an image (with a label) and returns the component created to represent them |
Component
|
add(Action action, int width, int height)
Adds an action to the menu |
Component
|
add(Action action)
Adds an action to the list, creating a menu item and a carousel entry |
Component
|
add(String imageURL, String label, int width, int height)
Adds an image (through a URL) to the menu |
Component
|
add(String imageURL, String label)
Adds an image based on the imageURL and a text label, returning the component that is created as a result |
JList
|
getList()
Returns the list part of the carousel menu |
Dimension
|
getPreferredSize()
Return the preferred size of the component |
void
|
keyPressed(KeyEvent keyEvent)
Listen for key events, when we see one that looks like it should wrap, set up the lastSelection variable to trigger a change on release of the key |
void
|
keyReleased(KeyEvent keyEvent)
If the wrap-around has detected the need to wrap, sets the selection to the value calculated when the key was first pressed. |
void
|
keyTyped(KeyEvent keyEvent)
Don't Care * |
void
|
mouseClicked(MouseEvent mouseEvent)
Look to see if an item in the list is double clicked, and launch the action if it is |
void
|
mouseEntered(MouseEvent mouseEvent)
Don't Care * |
void
|
mouseExited(MouseEvent mouseEvent)
Don't Care * |
void
|
mousePressed(MouseEvent mouseEvent)
Don't Care * |
void
|
mouseReleased(MouseEvent mouseEvent)
Don't Care * |
void
|
mouseWheelMoved(MouseWheelEvent mouseWheelEvent)
Moves the selected menu up or down when the mouse wheel scrolls |
protected void
|
processAction()
Launch the action associated with the currently selected list item |
void
|
remove(Component component)
Removes a component from the menu |
void
|
setCellImageBorder(ImageBorder imageBorder)
Sets the image border used to draw around the items in the menu |
void
|
setCellRenderer(ListCellRenderer cellRenderer)
Specifies the list cell renderer used to draw the items in the menu |
void
|
setMenuScrollColor(Color color)
Allows the background color to the menu (left side) to be set |
void
|
setSelectedIndex(int i)
Sets the selected item in the menu |
void
|
setUpDownColor(Color color)
Sets the color the up and down buttons are drawn |
void
|
setUpDownIcons(Icon upIcon, Icon downIcon)
Sets icons to use to show the up and down buttons |
void
|
stateChanged(ChangeEvent e)
Detect when the list selection changes, and respond by updating the state of the two "arrow" buttons. |
void
|
valueChanged(ListSelectionEvent listSelectionEvent)
Detect when the list selection changes, and respond by rotating the carousel to show that item |
| Methods inherited from class GradientPanel | |
|---|---|
| createImageCache, disposeImageCache, getGradientEnd, getGradientStart, paintComponent, setGradientEnd, setGradientStart |
| Field Detail |
|---|
private JCarosel carousel
private JCarouselMenu.UpDownButton downButton
private int lastSelection
private JList menu
private LinkedList menuItems
private Map menuMap
private DefaultListModel menuModel
private JScrollPane menuScroll
private JCarouselMenu.UpDownButton upButton
| Constructor Detail |
|---|
public JCarouselMenu(ImageBorder border)
border - The border to use to draw items in the menu
public JCarouselMenu()
| Method Detail |
|---|
public Component add(Component component, String label)
component - The componentlabel - The text to appear in the menu
public Component add(Image image, String label, int width, int height)
image - The imagelabel - The textwidth - Prefered widthheight - Prefered height
public Component add(Image image, String label)
image - The image to displaylabel - The label to show
public Component add(Action action, int width, int height)
action - The action to addwidth - The widthheight - The height
public Component add(Action action)
action - The action to add
public Component add(String imageURL, String label, int width, int height)
imageURL - URL of the imagelabel - Text messagewidth - widthheight - height
public Component add(String imageURL, String label)
imageURL - The URL of the imagelabel - Text label to be shown in the menu
public JList getList()
public Dimension getPreferredSize()
public void keyPressed(KeyEvent keyEvent)
keyEvent - The key event
public void keyReleased(KeyEvent keyEvent)
keyEvent - The key event
public void keyTyped(KeyEvent keyEvent)
keyEvent - The key event
public void mouseClicked(MouseEvent mouseEvent)
mouseEvent - The mouse event
public void mouseEntered(MouseEvent mouseEvent)
mouseEvent - The mouse event
public void mouseExited(MouseEvent mouseEvent)
mouseEvent - The mouse event
public void mousePressed(MouseEvent mouseEvent)
mouseEvent - The mouse event
public void mouseReleased(MouseEvent mouseEvent)
mouseEvent - The mouse event
public void mouseWheelMoved(MouseWheelEvent mouseWheelEvent)
mouseWheelEvent - The mouse wheel event
protected void processAction()
public void remove(Component component)
component - The component to remove
public void setCellImageBorder(ImageBorder imageBorder)
imageBorder - The desired image border
public void setCellRenderer(ListCellRenderer cellRenderer)
cellRenderer - The list cell renderer
public void setMenuScrollColor(Color color)
color - Sets the background color to the menu
public void setSelectedIndex(int i)
i - The index of the item to select
public void setUpDownColor(Color color)
color - The desired color
public void setUpDownIcons(Icon upIcon, Icon downIcon)
upIcon - The icon to use for updownIcon - The icon to use for down
public void stateChanged(ChangeEvent e)
e - The state changed event
public void valueChanged(ListSelectionEvent listSelectionEvent)
listSelectionEvent - The list selection change event
Groovy Documentation