|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.ObjectcontrolP5.ControllerGroup
controlP5.ControlGroup
controlP5.Accordion
public class Accordion
The Accordion is a list of ControlGroups which can be expanded and collapsed. Only one item can be open at a time.
ControllerGroup
,
ControlGroup
/**
* ControlP5 Accordion
* arrange controller groups in an accordion like style.
*
* find a list of public methods available for the Accordion Controller
* at the bottom of this sketch.
*
* by Andreas Schlegel, 2012
* www.sojamo.de/libraries/controlp5
*
*/
import controlP5.*;
ControlP5 cp5;
Accordion accordion;
color c = color(0, 160, 100);
void setup() {
size(400, 600);
noStroke();
smooth();
gui();
}
void gui() {
cp5 = new ControlP5(this);
// group number 1, contains 2 bangs
Group g1 = cp5.addGroup("myGroup1")
.setBackgroundColor(color(0, 64))
.setBackgroundHeight(150)
;
cp5.addBang("bang")
.setPosition(10,20)
.setSize(100,100)
.moveTo(g1)
.plugTo(this,"shuffle");
;
// group number 2, contains a radiobutton
Group g2 = cp5.addGroup("myGroup2")
.setBackgroundColor(color(0, 64))
.setBackgroundHeight(150)
;
cp5.addRadioButton("radio")
.setPosition(10,20)
.setItemWidth(20)
.setItemHeight(20)
.addItem("black", 0)
.addItem("red", 1)
.addItem("green", 2)
.addItem("blue", 3)
.addItem("grey", 4)
.setColorLabel(color(255))
.activate(2)
.moveTo(g2)
;
// group number 3, contains a bang and a slider
Group g3 = cp5.addGroup("myGroup3")
.setBackgroundColor(color(0, 64))
.setBackgroundHeight(150)
;
cp5.addBang("shuffle")
.setPosition(10,20)
.setSize(40,50)
.moveTo(g3)
;
cp5.addSlider("hello")
.setPosition(60,20)
.setSize(100,20)
.setRange(100,500)
.setValue(100)
.moveTo(g3)
;
cp5.addSlider("world")
.setPosition(60,50)
.setSize(100,20)
.setRange(100,500)
.setValue(200)
.moveTo(g3)
;
// create a new accordion
// add g1, g2, and g3 to the accordion.
accordion = cp5.addAccordion("acc")
.setPosition(40,40)
.setWidth(200)
.addItem(g1)
.addItem(g2)
.addItem(g3)
;
cp5.mapKey(new ControlKey() {public void keyEvent() {accordion.open(0,1,2);}}, 'o');
cp5.mapKey(new ControlKey() {public void keyEvent() {accordion.close(0,1,2);}}, 'c');
cp5.mapKey(new ControlKey() {public void keyEvent() {accordion.setWidth(300);}}, '1');
cp5.mapKey(new ControlKey() {public void keyEvent() {accordion.setPosition(0,0);accordion.setItemHeight(190);}}, '2');
cp5.mapKey(new ControlKey() {public void keyEvent() {accordion.setCollapseMode(ControlP5.ALL);}}, '3');
cp5.mapKey(new ControlKey() {public void keyEvent() {accordion.setCollapseMode(ControlP5.SINGLE);}}, '4');
cp5.mapKey(new ControlKey() {public void keyEvent() {cp5.remove("myGroup1");}}, '0');
{{accordion.open(0,1,2);}};
}
void radio(int theC) {
switch(theC) {
case(0):c=color(0,200);break;
case(1):c=color(255,0,0,200);break;
case(2):c=color(0, 200, 140,200);break;
case(3):c=color(0, 128, 255,200);break;
case(4):c=color(50,128);break;
}
}
void shuffle() {
c = color(random(255),random(255),random(255),random(128,255));
}
void draw() {
background(220);
fill(c);
float s1 = cp5.getController("hello").getValue();
ellipse(200,400,s1,s1);
float s2 = cp5.getController("world").getValue();
ellipse(300,100,s2,s2);
}
/*
a list of all methods available for the Accordion Controller
use ControlP5.printPublicMethodsFor(Accordion.class);
to print the following list into the console.
You can find further details about class Accordion in the javadoc.
Format:
ClassName : returnType methodName(parameter type)
controlP5.Accordion : Accordion addItem(ControlGroup)
controlP5.Accordion : Accordion remove(ControllerInterface)
controlP5.Accordion : Accordion removeItem(ControlGroup)
controlP5.Accordion : Accordion setItemHeight(int)
controlP5.Accordion : Accordion setMinItemHeight(int)
controlP5.Accordion : Accordion setWidth(int)
controlP5.Accordion : Accordion updateItems()
controlP5.Accordion : int getItemHeight()
controlP5.Accordion : int getMinItemHeight()
controlP5.ControlGroup : Accordion activateEvent(boolean)
controlP5.ControlGroup : Accordion addListener(ControlListener)
controlP5.ControlGroup : Accordion hideBar()
controlP5.ControlGroup : Accordion removeListener(ControlListener)
controlP5.ControlGroup : Accordion setBackgroundColor(int)
controlP5.ControlGroup : Accordion setBackgroundHeight(int)
controlP5.ControlGroup : Accordion setBarHeight(int)
controlP5.ControlGroup : Accordion showBar()
controlP5.ControlGroup : Accordion updateInternalEvents(PApplet)
controlP5.ControlGroup : String getInfo()
controlP5.ControlGroup : String toString()
controlP5.ControlGroup : boolean isBarVisible()
controlP5.ControlGroup : int getBackgroundHeight()
controlP5.ControlGroup : int getBarHeight()
controlP5.ControlGroup : int listenerSize()
controlP5.ControllerGroup : Accordion add(ControllerInterface)
controlP5.ControllerGroup : Accordion bringToFront()
controlP5.ControllerGroup : Accordion bringToFront(ControllerInterface)
controlP5.ControllerGroup : Accordion close()
controlP5.ControllerGroup : Accordion disableCollapse()
controlP5.ControllerGroup : Accordion enableCollapse()
controlP5.ControllerGroup : Accordion hide()
controlP5.ControllerGroup : Accordion moveTo(ControlWindow)
controlP5.ControllerGroup : Accordion moveTo(PApplet)
controlP5.ControllerGroup : Accordion open()
controlP5.ControllerGroup : Accordion registerProperty(String)
controlP5.ControllerGroup : Accordion registerProperty(String, String)
controlP5.ControllerGroup : Accordion remove(CDrawable)
controlP5.ControllerGroup : Accordion remove(ControllerInterface)
controlP5.ControllerGroup : Accordion removeCanvas(ControlWindowCanvas)
controlP5.ControllerGroup : Accordion removeProperty(String)
controlP5.ControllerGroup : Accordion removeProperty(String, String)
controlP5.ControllerGroup : Accordion setAddress(String)
controlP5.ControllerGroup : Accordion setArrayValue(float[])
controlP5.ControllerGroup : Accordion setColor(CColor)
controlP5.ControllerGroup : Accordion setColorActive(int)
controlP5.ControllerGroup : Accordion setColorBackground(int)
controlP5.ControllerGroup : Accordion setColorForeground(int)
controlP5.ControllerGroup : Accordion setColorLabel(int)
controlP5.ControllerGroup : Accordion setColorValue(int)
controlP5.ControllerGroup : Accordion setHeight(int)
controlP5.ControllerGroup : Accordion setId(int)
controlP5.ControllerGroup : Accordion setLabel(String)
controlP5.ControllerGroup : Accordion setMouseOver(boolean)
controlP5.ControllerGroup : Accordion setMoveable(boolean)
controlP5.ControllerGroup : Accordion setOpen(boolean)
controlP5.ControllerGroup : Accordion setPosition(PVector)
controlP5.ControllerGroup : Accordion setPosition(float, float)
controlP5.ControllerGroup : Accordion setStringValue(String)
controlP5.ControllerGroup : Accordion setUpdate(boolean)
controlP5.ControllerGroup : Accordion setValue(float)
controlP5.ControllerGroup : Accordion setVisible(boolean)
controlP5.ControllerGroup : Accordion setWidth(int)
controlP5.ControllerGroup : Accordion show()
controlP5.ControllerGroup : Accordion update()
controlP5.ControllerGroup : Accordion updateAbsolutePosition()
controlP5.ControllerGroup : CColor getColor()
controlP5.ControllerGroup : ControlWindow getWindow()
controlP5.ControllerGroup : ControlWindowCanvas addCanvas(ControlWindowCanvas)
controlP5.ControllerGroup : Controller getController(String)
controlP5.ControllerGroup : ControllerProperty getProperty(String)
controlP5.ControllerGroup : ControllerProperty getProperty(String, String)
controlP5.ControllerGroup : Label getCaptionLabel()
controlP5.ControllerGroup : Label getValueLabel()
controlP5.ControllerGroup : PVector getPosition()
controlP5.ControllerGroup : String getAddress()
controlP5.ControllerGroup : String getInfo()
controlP5.ControllerGroup : String getName()
controlP5.ControllerGroup : String getStringValue()
controlP5.ControllerGroup : String toString()
controlP5.ControllerGroup : Tab getTab()
controlP5.ControllerGroup : boolean isCollapse()
controlP5.ControllerGroup : boolean isMouseOver()
controlP5.ControllerGroup : boolean isMoveable()
controlP5.ControllerGroup : boolean isOpen()
controlP5.ControllerGroup : boolean isUpdate()
controlP5.ControllerGroup : boolean isVisible()
controlP5.ControllerGroup : boolean setMousePressed(boolean)
controlP5.ControllerGroup : float getValue()
controlP5.ControllerGroup : float[] getArrayValue()
controlP5.ControllerGroup : int getHeight()
controlP5.ControllerGroup : int getId()
controlP5.ControllerGroup : int getWidth()
controlP5.ControllerGroup : void remove()
java.lang.Object : String toString()
java.lang.Object : boolean equals(Object)
*/
Field Summary |
---|
Fields inherited from interface controlP5.ControlP5Constants |
---|
acceptClassList, ACTION_BROADCAST, ACTION_ENTER, ACTION_LEAVE, ACTION_PRESSED, ACTION_RELEASED, ACTION_RELEASEDOUTSIDE, ACTIVE, ALL, ALT, ARC, ARRAY, BACKSPACE, BASELINE, BITFONT, BOOLEAN, BOTTOM, BOTTOM_OUTSIDE, CAPTIONLABEL, CENTER, COMMANDKEY, CONTROL, controlEventClass, CUSTOM, DECREASE, DEFAULT, DELETE, DONE, DOWN, ELLIPSE, ENTER, ESCAPE, EVENT, eventMethod, FADEIN, FADEOUT, FIELD, FLOAT, HALF_PI, HIDE, HIGHLIGHT, HORIZONTAL, IDLE, IMAGE, INACTIVE, INCREASE, INTEGER, INVALID, KEYCONTROL, LEFT, LEFT_OUTSIDE, LINE, LOAD, MENU, METHOD, MOVE, MULTIPLES, OVER, PI, PRESSED, PRINT, RELEASE, RESET, RIGHT, RIGHT_OUTSIDE, SAVE, SHIFT, SINGLE, SINGLE_COLUMN, SINGLE_ROW, SPRITE, STRING, SWITCH, SWITCH_BACK, SWITCH_FORE, TAB, TOP, TOP_OUTSIDE, TRANSITION_WAIT_FADEIN, TWO_PI, UP, VALUELABEL, VERBOSE, VERTICAL, WAIT |
Method Summary | |
---|---|
void |
close(int[] theId)
|
int |
getItemHeight()
|
int |
getMinItemHeight()
|
void |
open(int[] theId)
|
Accordion |
remove(ControllerInterface theGroup)
Removes a ControlGroup from the accordion AND from controlP5 remove(ControllerInterface theGroup) overwrites it's super method. |
Accordion |
removeItem(ControlGroup theGroup)
Removes a ControlGroup from the accordion and puts it back into the default tab of controlP5. |
void |
setCollapseMode(int theMode)
|
Accordion |
setItemHeight(int theHeight)
|
Accordion |
setMinItemHeight(int theHeight)
Sets the minimum height of a collapsed item, default value is 100. |
Accordion |
setWidth(int theWidth)
|
Accordion |
updateItems()
UpdateItems is called when changes such as remove, change of height is performed on an accordion. |
Methods inherited from class controlP5.ControlGroup |
---|
activateEvent, addCloseButton, addListener, controlEvent, getBackgroundHeight, getBarHeight, getInfo, hideBar, isBarVisible, listenerSize, mousePressed, removeCloseButton, removeListener, setBackgroundColor, setBackgroundHeight, setBarHeight, showBar, stringValue, toString, updateInternalEvents |
Methods inherited from class controlP5.ControllerGroup |
---|
add, addCanvas, addDrawable, bringToFront, bringToFront, close, disableCollapse, enableCollapse, getAbsolutePosition, getAddress, getArrayValue, getCaptionLabel, getColor, getController, getHeight, getId, getName, getPosition, getProperty, getProperty, getStringValue, getTab, getValue, getValueLabel, getWidth, getWindow, hide, isCollapse, isMouseOver, isMoveable, isOpen, isUpdate, isVisible, moveTo, moveTo, moveTo, moveTo, moveTo, moveTo, moveTo, moveTo, moveTo, open, registerProperty, registerProperty, remove, remove, removeCanvas, removeProperty, removeProperty, setAddress, setArrayValue, setColor, setColorActive, setColorBackground, setColorForeground, setColorLabel, setColorValue, setGroup, setGroup, setHeight, setId, setLabel, setMouseOver, setMoveable, setOpen, setPosition, setPosition, setStringValue, setTab, setTab, setTab, setUpdate, setValue, setVisible, show, updateAbsolutePosition |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface controlP5.ControllerInterface |
---|
continuousUpdateEvents, draw, getParent, getPickingColor, init, keyEvent, parent, setAbsolutePosition, setMousePressed, update, updateEvents |
Method Detail |
---|
public void close(int[] theId)
public int getItemHeight()
public int getMinItemHeight()
public void open(int[] theId)
public Accordion remove(ControllerInterface theGroup)
remove
in interface ControllerInterface
remove
in class ControllerGroup
theGroup
- ControllerInterface
Accordion.removeItem(ControlGroup)
public Accordion removeItem(ControlGroup theGroup)
public void setCollapseMode(int theMode)
public Accordion setItemHeight(int theHeight)
public Accordion setMinItemHeight(int theHeight)
theHeight
-
public Accordion setWidth(int theWidth)
setWidth
in class ControllerGroup
public Accordion updateItems()
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |