<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!-- NewPage --> <html lang="en"> <head> <!-- Generated by javadoc (version 1.7.0_51) on Sun Apr 27 21:39:48 SGT 2014 --> <title>Slider2D (Javadocs: controlP5)</title> <meta name="date" content="2014-04-27"> <link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style"> </head> <body> <script type="text/javascript"><!-- if (location.href.indexOf('is-external=true') == -1) { parent.document.title="Slider2D (Javadocs: controlP5)"; } //--> </script> <noscript> <div>JavaScript is disabled on your browser.</div> </noscript> <!-- ========= START OF TOP NAVBAR ======= --> <div class="topNav"><a name="navbar_top"> <!-- --> </a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow"> <!-- --> </a> <ul class="navList" title="Navigation"> <li><a href="../controlP5/package-summary.html">Package</a></li> <li class="navBarCell1Rev">Class</li> <li><a href="package-tree.html">Tree</a></li> <li><a href="../index-all.html">Index</a></li> <li><a href="../help-doc.html">Help</a></li> </ul> </div> <div class="subNav"> <ul class="navList"> <li><a href="../controlP5/Slider.html" title="class in controlP5"><span class="strong">Prev Class</span></a></li> <li><a href="../controlP5/Tab.html" title="class in controlP5"><span class="strong">Next Class</span></a></li> </ul> <ul class="navList"> <li><a href="../index.html?controlP5/Slider2D.html" target="_top">Frames</a></li> <li><a href="Slider2D.html" target="_top">No Frames</a></li> </ul> <ul class="navList" id="allclasses_navbar_top"> <li><a href="../allclasses-noframe.html">All Classes</a></li> </ul> <div> <script type="text/javascript"><!-- allClassesLink = document.getElementById("allclasses_navbar_top"); if(window==top) { allClassesLink.style.display = "block"; } else { allClassesLink.style.display = "none"; } //--> </script> </div> <div> <ul class="subNavList"> <li>Summary: </li> <li>Nested | </li> <li><a href="#field_summary">Field</a> | </li> <li><a href="#constructor_summary">Constr</a> | </li> <li><a href="#method_summary">Method</a></li> </ul> <ul class="subNavList"> <li>Detail: </li> <li><a href="#field_detail">Field</a> | </li> <li><a href="#constructor_detail">Constr</a> | </li> <li><a href="#method_detail">Method</a></li> </ul> </div> <a name="skip-navbar_top"> <!-- --> </a></div> <!-- ========= END OF TOP NAVBAR ========= --> <!-- ======== START OF CLASS DATA ======== --> <div class="header"> <div class="subTitle">controlP5</div> <h2 title="Class Slider2D" class="title">Class Slider2D</h2> </div> <div class="contentContainer"> <ul class="inheritance"> <li>java.lang.Object</li> <li> <ul class="inheritance"> <li><a href="../controlP5/Controller.html" title="class in controlP5">controlP5.Controller</a><<a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a>></li> <li> <ul class="inheritance"> <li>controlP5.Slider2D</li> </ul> </li> </ul> </li> </ul> <div class="description"> <ul class="blockList"> <li class="blockList"> <dl> <dt>All Implemented Interfaces:</dt> <dd><a href="../controlP5/CDrawable.html" title="interface in controlP5">CDrawable</a>, <a href="../controlP5/ControllerInterface.html" title="interface in controlP5">ControllerInterface</a><<a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a>>, <a href="../controlP5/ControlP5Constants.html" title="interface in controlP5">ControlP5Constants</a></dd> </dl> <hr> <br> <pre>public class <span class="strong">Slider2D</span> extends <a href="../controlP5/Controller.html" title="class in controlP5">Controller</a><<a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a>></pre> <div class="block">The Slider2D allows to control a handle within a 2D area. This controller returns an arrayValue with the current xy position of its handle.</div> <dl><dt><span class="strong">Author:</span></dt> <dd>andreas schlegel</dd> <script type="text/javascript"> <!-- document.getElementsByTagName('html')[0].className = 'isjs';function toggle(dt) { var display, dd=dt; do{ dd = dd.nextSibling } while(dd.tagName!='DD'); toOpen =!dd.style.display;dd.style.display = toOpen? 'block':''; dt.getElementsByTagName('span')[0].innerHTML = toOpen? '-':'+' ; } --> </script> <div id="test" class="toggleList"><dl><dt onclick="toggle(this);"><span>+</span>Example</dt><dd><code><pre>/** * ControlP5 Slider2D * * * find a list of public methods available for the Slider2D Controller * at the bottom of this sketch. * * by Andreas Schlegel, 2012 * www.sojamo.de/libraries/controlp5 * */ import controlP5.*; ControlP5 cp5; Slider2D s; void setup() { size(700,400); cp5 = new ControlP5(this); s = cp5.addSlider2D("wave") .setPosition(30,40) .setSize(100,100) .setArrayValue(new float[] {50, 50}) //.disableCrosshair() ; smooth(); } float cnt; void draw() { background(0); pushMatrix(); translate(160,140); noStroke(); fill(50); rect(0, -100, 400,200); strokeWeight(1); line(0,0,200, 0); stroke(255); for(int i=1;i<400;i++) { float y0 = cos(map(i-1,0,s.arrayValue()[0],-PI,PI)) * s.arrayValue()[1]; float y1 = cos(map(i,0,s.arrayValue()[0],-PI,PI)) * s.arrayValue()[1]; line((i-1),y0,i,y1); } popMatrix(); } /* a list of all methods available for the Slider2D Controller use ControlP5.printPublicMethodsFor(Slider2D.class); to print the following list into the console. You can find further details about class Slider2D in the javadoc. Format: ClassName : returnType methodName(parameter type) controlP5.Slider2D : Slider2D enableCrosshair() controlP5.Slider2D : Slider2D disableCrosshair() controlP5.Slider2D : Slider2D setArrayValue(float[]) controlP5.Slider2D : Slider2D setMaxX(float) controlP5.Slider2D : Slider2D setMaxY(float) controlP5.Slider2D : Slider2D setMinX(float) controlP5.Slider2D : Slider2D setMinY(float) controlP5.Slider2D : Slider2D setValue(float) controlP5.Slider2D : Slider2D shuffle() controlP5.Slider2D : float getCursorHeight() controlP5.Slider2D : float getCursorWidth() controlP5.Slider2D : float getCursorX() controlP5.Slider2D : float getCursorY() controlP5.Slider2D : float getMaxX() controlP5.Slider2D : float getMaxY() controlP5.Slider2D : float getMinX() controlP5.Slider2D : float getMinY() controlP5.Slider2D : float[] getArrayValue() controlP5.Slider2D : void setValueLabelSeparator(String) controlP5.Controller : CColor getColor() controlP5.Controller : ControlBehavior getBehavior() controlP5.Controller : ControlWindow getControlWindow() controlP5.Controller : ControlWindow getWindow() controlP5.Controller : ControllerProperty getProperty(String) controlP5.Controller : ControllerProperty getProperty(String, String) controlP5.Controller : Label getCaptionLabel() controlP5.Controller : Label getValueLabel() controlP5.Controller : List getControllerPlugList() controlP5.Controller : PImage setImage(PImage) controlP5.Controller : PImage setImage(PImage, int) controlP5.Controller : PVector getAbsolutePosition() controlP5.Controller : PVector getPosition() controlP5.Controller : Slider2D addCallback(CallbackListener) controlP5.Controller : Slider2D addListener(ControlListener) controlP5.Controller : Slider2D bringToFront() controlP5.Controller : Slider2D bringToFront(ControllerInterface) controlP5.Controller : Slider2D hide() controlP5.Controller : Slider2D linebreak() controlP5.Controller : Slider2D listen(boolean) controlP5.Controller : Slider2D lock() controlP5.Controller : Slider2D plugTo(Object) controlP5.Controller : Slider2D plugTo(Object, String) controlP5.Controller : Slider2D plugTo(Object[]) controlP5.Controller : Slider2D plugTo(Object[], String) controlP5.Controller : Slider2D registerProperty(String) controlP5.Controller : Slider2D registerProperty(String, String) controlP5.Controller : Slider2D registerTooltip(String) controlP5.Controller : Slider2D removeBehavior() controlP5.Controller : Slider2D removeCallback() controlP5.Controller : Slider2D removeCallback(CallbackListener) controlP5.Controller : Slider2D removeListener(ControlListener) controlP5.Controller : Slider2D removeProperty(String) controlP5.Controller : Slider2D removeProperty(String, String) controlP5.Controller : Slider2D setArrayValue(float[]) controlP5.Controller : Slider2D setArrayValue(int, float) controlP5.Controller : Slider2D setBehavior(ControlBehavior) controlP5.Controller : Slider2D setBroadcast(boolean) controlP5.Controller : Slider2D setCaptionLabel(String) controlP5.Controller : Slider2D setColor(CColor) controlP5.Controller : Slider2D setColorActive(int) controlP5.Controller : Slider2D setColorBackground(int) controlP5.Controller : Slider2D setColorCaptionLabel(int) controlP5.Controller : Slider2D setColorForeground(int) controlP5.Controller : Slider2D setColorValueLabel(int) controlP5.Controller : Slider2D setDecimalPrecision(int) controlP5.Controller : Slider2D setDefaultValue(float) controlP5.Controller : Slider2D setHeight(int) controlP5.Controller : Slider2D setId(int) controlP5.Controller : Slider2D setImages(PImage, PImage, PImage) controlP5.Controller : Slider2D setImages(PImage, PImage, PImage, PImage) controlP5.Controller : Slider2D setLabelVisible(boolean) controlP5.Controller : Slider2D setLock(boolean) controlP5.Controller : Slider2D setMax(float) controlP5.Controller : Slider2D setMin(float) controlP5.Controller : Slider2D setMouseOver(boolean) controlP5.Controller : Slider2D setMoveable(boolean) controlP5.Controller : Slider2D setPosition(PVector) controlP5.Controller : Slider2D setPosition(float, float) controlP5.Controller : Slider2D setSize(PImage) controlP5.Controller : Slider2D setSize(int, int) controlP5.Controller : Slider2D setStringValue(String) controlP5.Controller : Slider2D setUpdate(boolean) controlP5.Controller : Slider2D setValueLabel(String) controlP5.Controller : Slider2D setView(ControllerView) controlP5.Controller : Slider2D setVisible(boolean) controlP5.Controller : Slider2D setWidth(int) controlP5.Controller : Slider2D show() controlP5.Controller : Slider2D unlock() controlP5.Controller : Slider2D unplugFrom(Object) controlP5.Controller : Slider2D unplugFrom(Object[]) controlP5.Controller : Slider2D unregisterTooltip() controlP5.Controller : Slider2D update() controlP5.Controller : Slider2D updateSize() controlP5.Controller : String getAddress() controlP5.Controller : String getInfo() controlP5.Controller : String getName() controlP5.Controller : String getStringValue() controlP5.Controller : String toString() controlP5.Controller : Tab getTab() controlP5.Controller : boolean isActive() controlP5.Controller : boolean isBroadcast() controlP5.Controller : boolean isInside() controlP5.Controller : boolean isLabelVisible() controlP5.Controller : boolean isListening() controlP5.Controller : boolean isLock() controlP5.Controller : boolean isMouseOver() controlP5.Controller : boolean isMousePressed() controlP5.Controller : boolean isMoveable() controlP5.Controller : boolean isUpdate() controlP5.Controller : boolean isVisible() controlP5.Controller : float getArrayValue(int) controlP5.Controller : float getDefaultValue() controlP5.Controller : float getMax() controlP5.Controller : float getMin() controlP5.Controller : float getValue() controlP5.Controller : float[] getArrayValue() controlP5.Controller : int getDecimalPrecision() controlP5.Controller : int getHeight() controlP5.Controller : int getId() controlP5.Controller : int getWidth() controlP5.Controller : int listenerSize() controlP5.Controller : void remove() controlP5.Controller : void setView(ControllerView, int) java.lang.Object : String toString() java.lang.Object : boolean equals(Object) */ </pre></code></dd></dl></div></dl> </li> </ul> </div> <div class="summary"> <ul class="blockList"> <li class="blockList"> <!-- =========== FIELD SUMMARY =========== --> <ul class="blockList"> <li class="blockList"><a name="field_summary"> <!-- --> </a> <h3>Field Summary</h3> <table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation"> <caption><span>Fields</span><span class="tabEnd"> </span></caption> <tr> <th class="colFirst" scope="col">Modifier and Type</th> <th class="colLast" scope="col">Field and Description</th> </tr> <tr class="altColor"> <td class="colFirst"><code>boolean</code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#isCrosshairs">isCrosshairs</a></strong></code> </td> </tr> </table> <ul class="blockList"> <li class="blockList"><a name="fields_inherited_from_class_controlP5.Controller"> <!-- --> </a> <h3>Fields inherited from class controlP5.<a href="../controlP5/Controller.html" title="class in controlP5">Controller</a></h3> <code><a href="../controlP5/Controller.html#autoHeight">autoHeight</a>, <a href="../controlP5/Controller.html#autoSpacing">autoSpacing</a>, <a href="../controlP5/Controller.html#autoWidth">autoWidth</a></code></li> </ul> <ul class="blockList"> <li class="blockList"><a name="fields_inherited_from_class_controlP5.ControlP5Constants"> <!-- --> </a> <h3>Fields inherited from interface controlP5.<a href="../controlP5/ControlP5Constants.html" title="interface in controlP5">ControlP5Constants</a></h3> <code><a href="../controlP5/ControlP5Constants.html#acceptClassList">acceptClassList</a>, <a href="../controlP5/ControlP5Constants.html#ACTION_BROADCAST">ACTION_BROADCAST</a>, <a href="../controlP5/ControlP5Constants.html#ACTION_CLICK">ACTION_CLICK</a>, <a href="../controlP5/ControlP5Constants.html#ACTION_DRAG">ACTION_DRAG</a>, <a href="../controlP5/ControlP5Constants.html#ACTION_ENTER">ACTION_ENTER</a>, <a href="../controlP5/ControlP5Constants.html#ACTION_EXIT">ACTION_EXIT</a>, <a href="../controlP5/ControlP5Constants.html#ACTION_LEAVE">ACTION_LEAVE</a>, <a href="../controlP5/ControlP5Constants.html#ACTION_MOVE">ACTION_MOVE</a>, <a href="../controlP5/ControlP5Constants.html#ACTION_PRESS">ACTION_PRESS</a>, <a href="../controlP5/ControlP5Constants.html#ACTION_PRESSED">ACTION_PRESSED</a>, <a href="../controlP5/ControlP5Constants.html#ACTION_RELEASE">ACTION_RELEASE</a>, <a href="../controlP5/ControlP5Constants.html#ACTION_RELEASED">ACTION_RELEASED</a>, <a href="../controlP5/ControlP5Constants.html#ACTION_RELEASEDOUTSIDE">ACTION_RELEASEDOUTSIDE</a>, <a href="../controlP5/ControlP5Constants.html#ACTION_WHEEL">ACTION_WHEEL</a>, <a href="../controlP5/ControlP5Constants.html#ACTIVE">ACTIVE</a>, <a href="../controlP5/ControlP5Constants.html#ALL">ALL</a>, <a href="../controlP5/ControlP5Constants.html#ALT">ALT</a>, <a href="../controlP5/ControlP5Constants.html#AQUA">AQUA</a>, <a href="../controlP5/ControlP5Constants.html#ARC">ARC</a>, <a href="../controlP5/ControlP5Constants.html#ARRAY">ARRAY</a>, <a href="../controlP5/ControlP5Constants.html#BACKSPACE">BACKSPACE</a>, <a href="../controlP5/ControlP5Constants.html#BASELINE">BASELINE</a>, <a href="../controlP5/ControlP5Constants.html#BITFONT">BITFONT</a>, <a href="../controlP5/ControlP5Constants.html#BLACK">BLACK</a>, <a href="../controlP5/ControlP5Constants.html#BLUE">BLUE</a>, <a href="../controlP5/ControlP5Constants.html#BOOLEAN">BOOLEAN</a>, <a href="../controlP5/ControlP5Constants.html#BOTTOM">BOTTOM</a>, <a href="../controlP5/ControlP5Constants.html#BOTTOM_OUTSIDE">BOTTOM_OUTSIDE</a>, <a href="../controlP5/ControlP5Constants.html#CAPTIONLABEL">CAPTIONLABEL</a>, <a href="../controlP5/ControlP5Constants.html#CENTER">CENTER</a>, <a href="../controlP5/ControlP5Constants.html#CHECKBOX">CHECKBOX</a>, <a href="../controlP5/ControlP5Constants.html#COMMANDKEY">COMMANDKEY</a>, <a href="../controlP5/ControlP5Constants.html#CONTROL">CONTROL</a>, <a href="../controlP5/ControlP5Constants.html#controlEventClass">controlEventClass</a>, <a href="../controlP5/ControlP5Constants.html#CUSTOM">CUSTOM</a>, <a href="../controlP5/ControlP5Constants.html#DECREASE">DECREASE</a>, <a href="../controlP5/ControlP5Constants.html#DEFAULT">DEFAULT</a>, <a href="../controlP5/ControlP5Constants.html#DELETE">DELETE</a>, <a href="../controlP5/ControlP5Constants.html#DONE">DONE</a>, <a href="../controlP5/ControlP5Constants.html#DOWN">DOWN</a>, <a href="../controlP5/ControlP5Constants.html#DROPDOWN">DROPDOWN</a>, <a href="../controlP5/ControlP5Constants.html#ELLIPSE">ELLIPSE</a>, <a href="../controlP5/ControlP5Constants.html#ENTER">ENTER</a>, <a href="../controlP5/ControlP5Constants.html#ESCAPE">ESCAPE</a>, <a href="../controlP5/ControlP5Constants.html#EVENT">EVENT</a>, <a href="../controlP5/ControlP5Constants.html#eventMethod">eventMethod</a>, <a href="../controlP5/ControlP5Constants.html#FADEIN">FADEIN</a>, <a href="../controlP5/ControlP5Constants.html#FADEOUT">FADEOUT</a>, <a href="../controlP5/ControlP5Constants.html#FIELD">FIELD</a>, <a href="../controlP5/ControlP5Constants.html#FLOAT">FLOAT</a>, <a href="../controlP5/ControlP5Constants.html#FUCHSIA">FUCHSIA</a>, <a href="../controlP5/ControlP5Constants.html#GRAY">GRAY</a>, <a href="../controlP5/ControlP5Constants.html#GREEN">GREEN</a>, <a href="../controlP5/ControlP5Constants.html#grixel">grixel</a>, <a href="../controlP5/ControlP5Constants.html#HALF_PI">HALF_PI</a>, <a href="../controlP5/ControlP5Constants.html#HIDE">HIDE</a>, <a href="../controlP5/ControlP5Constants.html#HIGHLIGHT">HIGHLIGHT</a>, <a href="../controlP5/ControlP5Constants.html#HORIZONTAL">HORIZONTAL</a>, <a href="../controlP5/ControlP5Constants.html#IDLE">IDLE</a>, <a href="../controlP5/ControlP5Constants.html#IMAGE">IMAGE</a>, <a href="../controlP5/ControlP5Constants.html#INACTIVE">INACTIVE</a>, <a href="../controlP5/ControlP5Constants.html#INCREASE">INCREASE</a>, <a href="../controlP5/ControlP5Constants.html#INTEGER">INTEGER</a>, <a href="../controlP5/ControlP5Constants.html#INVALID">INVALID</a>, <a href="../controlP5/ControlP5Constants.html#J2D">J2D</a>, <a href="../controlP5/ControlP5Constants.html#KEYCONTROL">KEYCONTROL</a>, <a href="../controlP5/ControlP5Constants.html#LEFT">LEFT</a>, <a href="../controlP5/ControlP5Constants.html#LEFT_OUTSIDE">LEFT_OUTSIDE</a>, <a href="../controlP5/ControlP5Constants.html#LIME">LIME</a>, <a href="../controlP5/ControlP5Constants.html#LINE">LINE</a>, <a href="../controlP5/ControlP5Constants.html#LIST">LIST</a>, <a href="../controlP5/ControlP5Constants.html#LOAD">LOAD</a>, <a href="../controlP5/ControlP5Constants.html#MAROON">MAROON</a>, <a href="../controlP5/ControlP5Constants.html#MENU">MENU</a>, <a href="../controlP5/ControlP5Constants.html#METHOD">METHOD</a>, <a href="../controlP5/ControlP5Constants.html#MOVE">MOVE</a>, <a href="../controlP5/ControlP5Constants.html#MULTI">MULTI</a>, <a href="../controlP5/ControlP5Constants.html#MULTIPLES">MULTIPLES</a>, <a href="../controlP5/ControlP5Constants.html#NAVY">NAVY</a>, <a href="../controlP5/ControlP5Constants.html#OLIVE">OLIVE</a>, <a href="../controlP5/ControlP5Constants.html#ORANGE">ORANGE</a>, <a href="../controlP5/ControlP5Constants.html#OVER">OVER</a>, <a href="../controlP5/ControlP5Constants.html#P2D">P2D</a>, <a href="../controlP5/ControlP5Constants.html#P3D">P3D</a>, <a href="../controlP5/ControlP5Constants.html#PI">PI</a>, <a href="../controlP5/ControlP5Constants.html#PRESSED">PRESSED</a>, <a href="../controlP5/ControlP5Constants.html#PRINT">PRINT</a>, <a href="../controlP5/ControlP5Constants.html#PURPLE">PURPLE</a>, <a href="../controlP5/ControlP5Constants.html#RED">RED</a>, <a href="../controlP5/ControlP5Constants.html#RELEASE">RELEASE</a>, <a href="../controlP5/ControlP5Constants.html#RESET">RESET</a>, <a href="../controlP5/ControlP5Constants.html#RIGHT">RIGHT</a>, <a href="../controlP5/ControlP5Constants.html#RIGHT_OUTSIDE">RIGHT_OUTSIDE</a>, <a href="../controlP5/ControlP5Constants.html#SAVE">SAVE</a>, <a href="../controlP5/ControlP5Constants.html#SHIFT">SHIFT</a>, <a href="../controlP5/ControlP5Constants.html#SILVER">SILVER</a>, <a href="../controlP5/ControlP5Constants.html#SINGLE">SINGLE</a>, <a href="../controlP5/ControlP5Constants.html#SINGLE_COLUMN">SINGLE_COLUMN</a>, <a href="../controlP5/ControlP5Constants.html#SINGLE_ROW">SINGLE_ROW</a>, <a href="../controlP5/ControlP5Constants.html#SPRITE">SPRITE</a>, <a href="../controlP5/ControlP5Constants.html#standard56">standard56</a>, <a href="../controlP5/ControlP5Constants.html#standard58">standard58</a>, <a href="../controlP5/ControlP5Constants.html#STRING">STRING</a>, <a href="../controlP5/ControlP5Constants.html#SWITCH">SWITCH</a>, <a href="../controlP5/ControlP5Constants.html#SWITCH_BACK">SWITCH_BACK</a>, <a href="../controlP5/ControlP5Constants.html#SWITCH_FORE">SWITCH_FORE</a>, <a href="../controlP5/ControlP5Constants.html#synt24">synt24</a>, <a href="../controlP5/ControlP5Constants.html#TAB">TAB</a>, <a href="../controlP5/ControlP5Constants.html#TEAL">TEAL</a>, <a href="../controlP5/ControlP5Constants.html#THEME_A">THEME_A</a>, <a href="../controlP5/ControlP5Constants.html#THEME_CP52014">THEME_CP52014</a>, <a href="../controlP5/ControlP5Constants.html#THEME_CP5BLUE">THEME_CP5BLUE</a>, <a href="../controlP5/ControlP5Constants.html#THEME_RED">THEME_RED</a>, <a href="../controlP5/ControlP5Constants.html#THEME_RETRO">THEME_RETRO</a>, <a href="../controlP5/ControlP5Constants.html#THEME_WHITE">THEME_WHITE</a>, <a href="../controlP5/ControlP5Constants.html#TOP">TOP</a>, <a href="../controlP5/ControlP5Constants.html#TOP_OUTSIDE">TOP_OUTSIDE</a>, <a href="../controlP5/ControlP5Constants.html#TRANSITION_WAIT_FADEIN">TRANSITION_WAIT_FADEIN</a>, <a href="../controlP5/ControlP5Constants.html#TREE">TREE</a>, <a href="../controlP5/ControlP5Constants.html#TWO_PI">TWO_PI</a>, <a href="../controlP5/ControlP5Constants.html#UP">UP</a>, <a href="../controlP5/ControlP5Constants.html#VALUELABEL">VALUELABEL</a>, <a href="../controlP5/ControlP5Constants.html#VERBOSE">VERBOSE</a>, <a href="../controlP5/ControlP5Constants.html#VERTICAL">VERTICAL</a>, <a href="../controlP5/ControlP5Constants.html#WAIT">WAIT</a>, <a href="../controlP5/ControlP5Constants.html#WHITE">WHITE</a>, <a href="../controlP5/ControlP5Constants.html#YELLOW">YELLOW</a></code></li> </ul> </li> </ul> <!-- ======== CONSTRUCTOR SUMMARY ======== --> <ul class="blockList"> <li class="blockList"><a name="constructor_summary"> <!-- --> </a> <h3>Constructor Summary</h3> <table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation"> <caption><span>Constructors</span><span class="tabEnd"> </span></caption> <tr> <th class="colOne" scope="col">Constructor and Description</th> </tr> <tr class="altColor"> <td class="colOne"><code><strong><a href="../controlP5/Slider2D.html#Slider2D(controlP5.ControlP5, java.lang.String)">Slider2D</a></strong>(<a href="../controlP5/ControlP5.html" title="class in controlP5">ControlP5</a> theControlP5, java.lang.String theName)</code> <div class="block">Convenience constructor to extend Slider2D.</div> </td> </tr> </table> </li> </ul> <!-- ========== METHOD SUMMARY =========== --> <ul class="blockList"> <li class="blockList"><a name="method_summary"> <!-- --> </a> <h3>Method Summary</h3> <table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> <caption><span>Methods</span><span class="tabEnd"> </span></caption> <tr> <th class="colFirst" scope="col">Modifier and Type</th> <th class="colLast" scope="col">Method and Description</th> </tr> <tr class="altColor"> <td class="colFirst"><code><a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a></code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#disableCrosshair()">disableCrosshair</a></strong>()</code> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code><a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a></code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#enableCrosshair()">enableCrosshair</a></strong>()</code> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>float[]</code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#getArrayValue()">getArrayValue</a></strong>()</code> <div class="block">returns the current float array value of a controller.</div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>float</code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#getCursorHeight()">getCursorHeight</a></strong>()</code> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>float</code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#getCursorWidth()">getCursorWidth</a></strong>()</code> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>float</code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#getCursorX()">getCursorX</a></strong>()</code> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>float</code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#getCursorY()">getCursorY</a></strong>()</code> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>float</code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#getMaxX()">getMaxX</a></strong>()</code> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>float</code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#getMaxY()">getMaxY</a></strong>()</code> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>float</code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#getMinX()">getMinX</a></strong>()</code> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>float</code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#getMinY()">getMinY</a></strong>()</code> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code><a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a></code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#setArrayValue(float[])">setArrayValue</a></strong>(float[] theArray)</code> </td> </tr> <tr class="altColor"> <td class="colFirst"><code><a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a></code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#setCursorX(float)">setCursorX</a></strong>(float theValue)</code> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code><a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a></code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#setCursorY(float)">setCursorY</a></strong>(float theValue)</code> </td> </tr> <tr class="altColor"> <td class="colFirst"><code><a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a></code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#setMaxX(float)">setMaxX</a></strong>(float theMaxX)</code> <div class="block">sets the maximum value for the x-axis</div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code><a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a></code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#setMaxY(float)">setMaxY</a></strong>(float theMaxY)</code> <div class="block">sets the maximum value for the y-axis</div> </td> </tr> <tr class="altColor"> <td class="colFirst"><code><a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a></code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#setMinX(float)">setMinX</a></strong>(float theMinX)</code> <div class="block">sets the minimum value for the x-axis</div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code><a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a></code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#setMinY(float)">setMinY</a></strong>(float theMinY)</code> <div class="block">sets the minimum value for the y-axis</div> </td> </tr> <tr class="altColor"> <td class="colFirst"><code><a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a></code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#setValue(float)">setValue</a></strong>(float theValue)</code> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>void</code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#setValueLabelSeparator(java.lang.String)">setValueLabelSeparator</a></strong>(java.lang.String theSeparator)</code> </td> </tr> <tr class="altColor"> <td class="colFirst"><code><a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a></code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#shuffle()">shuffle</a></strong>()</code> <div class="block">assigns a random value to the controller.</div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code><a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a></code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#updateDisplayMode(int)">updateDisplayMode</a></strong>(int theMode)</code></td> </tr> <tr class="altColor"> <td class="colFirst"><code><a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a></code></td> <td class="colLast"><code><strong><a href="../controlP5/Slider2D.html#updateInternalEvents(processing.core.PApplet)">updateInternalEvents</a></strong>(processing.core.PApplet theApplet)</code> <div class="block">a method for putting input events like e.g.</div> </td> </tr> </table> <ul class="blockList"> <li class="blockList"><a name="methods_inherited_from_class_controlP5.Controller"> <!-- --> </a> <h3>Methods inherited from class controlP5.<a href="../controlP5/Controller.html" title="class in controlP5">Controller</a></h3> <code><a href="../controlP5/Controller.html#add(controlP5.ControllerInterface)">add</a>, <a href="../controlP5/Controller.html#addCallback(controlP5.CallbackListener)">addCallback</a>, <a href="../controlP5/Controller.html#addListener(controlP5.ControlListener)">addListener</a>, <a href="../controlP5/Controller.html#align(int, int, int, int)">align</a>, <a href="../controlP5/Controller.html#bringToFront()">bringToFront</a>, <a href="../controlP5/Controller.html#bringToFront(controlP5.ControllerInterface)">bringToFront</a>, <a href="../controlP5/Controller.html#changeValue(float)">changeValue</a>, <a href="../controlP5/Controller.html#continuousUpdateEvents()">continuousUpdateEvents</a>, <a href="../controlP5/Controller.html#draw(processing.core.PGraphics)">draw</a>, <a href="../controlP5/Controller.html#getAbsolutePosition()">getAbsolutePosition</a>, <a href="../controlP5/Controller.html#getAddress()">getAddress</a>, <a href="../controlP5/Controller.html#getArrayValue(int)">getArrayValue</a>, <a href="../controlP5/Controller.html#getBehavior()">getBehavior</a>, <a href="../controlP5/Controller.html#getCaptionLabel()">getCaptionLabel</a>, <a href="../controlP5/Controller.html#getColor()">getColor</a>, <a href="../controlP5/Controller.html#getControllerPlugList()">getControllerPlugList</a>, <a href="../controlP5/Controller.html#getControlWindow()">getControlWindow</a>, <a href="../controlP5/Controller.html#getDecimalPrecision()">getDecimalPrecision</a>, <a href="../controlP5/Controller.html#getDefaultValue()">getDefaultValue</a>, <a href="../controlP5/Controller.html#getHeight()">getHeight</a>, <a href="../controlP5/Controller.html#getId()">getId</a>, <a href="../controlP5/Controller.html#getInfo()">getInfo</a>, <a href="../controlP5/Controller.html#getLabel()">getLabel</a>, <a href="../controlP5/Controller.html#getMax()">getMax</a>, <a href="../controlP5/Controller.html#getMin()">getMin</a>, <a href="../controlP5/Controller.html#getName()">getName</a>, <a href="../controlP5/Controller.html#getParent()">getParent</a>, <a href="../controlP5/Controller.html#getPickingColor()">getPickingColor</a>, <a href="../controlP5/Controller.html#getPointer()">getPointer</a>, <a href="../controlP5/Controller.html#getPosition()">getPosition</a>, <a href="../controlP5/Controller.html#getProperty(java.lang.String)">getProperty</a>, <a href="../controlP5/Controller.html#getProperty(java.lang.String, java.lang.String)">getProperty</a>, <a href="../controlP5/Controller.html#getStringValue()">getStringValue</a>, <a href="../controlP5/Controller.html#getTab()">getTab</a>, <a href="../controlP5/Controller.html#getValue()">getValue</a>, <a href="../controlP5/Controller.html#getValueLabel()">getValueLabel</a>, <a href="../controlP5/Controller.html#getView()">getView</a>, <a href="../controlP5/Controller.html#getWidth()">getWidth</a>, <a href="../controlP5/Controller.html#getWindow()">getWindow</a>, <a href="../controlP5/Controller.html#hide()">hide</a>, <a href="../controlP5/Controller.html#init()">init</a>, <a href="../controlP5/Controller.html#isActive()">isActive</a>, <a href="../controlP5/Controller.html#isBroadcast()">isBroadcast</a>, <a href="../controlP5/Controller.html#isInside()">isInside</a>, <a href="../controlP5/Controller.html#isLabelVisible()">isLabelVisible</a>, <a href="../controlP5/Controller.html#isListening()">isListening</a>, <a href="../controlP5/Controller.html#isLock()">isLock</a>, <a href="../controlP5/Controller.html#isMouseOver()">isMouseOver</a>, <a href="../controlP5/Controller.html#isMousePressed()">isMousePressed</a>, <a href="../controlP5/Controller.html#isMoveable()">isMoveable</a>, <a href="../controlP5/Controller.html#isUpdate()">isUpdate</a>, <a href="../controlP5/Controller.html#isUserInteraction()">isUserInteraction</a>, <a href="../controlP5/Controller.html#isVisible()">isVisible</a>, <a href="../controlP5/Controller.html#keyEvent(processing.event.KeyEvent)">keyEvent</a>, <a href="../controlP5/Controller.html#linebreak()">linebreak</a>, <a href="../controlP5/Controller.html#listen(boolean)">listen</a>, <a href="../controlP5/Controller.html#listenerSize()">listenerSize</a>, <a href="../controlP5/Controller.html#lock()">lock</a>, <a href="../controlP5/Controller.html#moveTo(controlP5.ControlGroup)">moveTo</a>, <a href="../controlP5/Controller.html#moveTo(controlP5.ControllerGroup)">moveTo</a>, <a href="../controlP5/Controller.html#moveTo(controlP5.ControllerGroup, controlP5.Tab, controlP5.ControlWindow)">moveTo</a>, <a href="../controlP5/Controller.html#moveTo(controlP5.ControlWindow)">moveTo</a>, <a href="../controlP5/Controller.html#moveTo(controlP5.ControlWindow, java.lang.String)">moveTo</a>, <a href="../controlP5/Controller.html#moveTo(processing.core.PApplet)">moveTo</a>, <a href="../controlP5/Controller.html#moveTo(processing.core.PApplet, java.lang.String)">moveTo</a>, <a href="../controlP5/Controller.html#moveTo(java.lang.String)">moveTo</a>, <a href="../controlP5/Controller.html#moveTo(controlP5.Tab)">moveTo</a>, <a href="../controlP5/Controller.html#plugTo(java.lang.Object)">plugTo</a>, <a href="../controlP5/Controller.html#plugTo(java.lang.Object[])">plugTo</a>, <a href="../controlP5/Controller.html#plugTo(java.lang.Object[], java.lang.String)">plugTo</a>, <a href="../controlP5/Controller.html#plugTo(java.lang.Object, java.lang.String)">plugTo</a>, <a href="../controlP5/Controller.html#registerProperty(java.lang.String)">registerProperty</a>, <a href="../controlP5/Controller.html#registerProperty(java.lang.String, java.lang.String)">registerProperty</a>, <a href="../controlP5/Controller.html#registerTooltip(java.lang.String)">registerTooltip</a>, <a href="../controlP5/Controller.html#remove()">remove</a>, <a href="../controlP5/Controller.html#remove(controlP5.ControllerInterface)">remove</a>, <a href="../controlP5/Controller.html#removeBehavior()">removeBehavior</a>, <a href="../controlP5/Controller.html#removeCallback()">removeCallback</a>, <a href="../controlP5/Controller.html#removeCallback(controlP5.CallbackListener)">removeCallback</a>, <a href="../controlP5/Controller.html#removeListener(controlP5.ControlListener)">removeListener</a>, <a href="../controlP5/Controller.html#removeProperty(java.lang.String)">removeProperty</a>, <a href="../controlP5/Controller.html#removeProperty(java.lang.String, java.lang.String)">removeProperty</a>, <a href="../controlP5/Controller.html#setAbsolutePosition(processing.core.PVector)">setAbsolutePosition</a>, <a href="../controlP5/Controller.html#setAddress(java.lang.String)">setAddress</a>, <a href="../controlP5/Controller.html#setArrayValue(int, float)">setArrayValue</a>, <a href="../controlP5/Controller.html#setBehavior(controlP5.ControlBehavior)">setBehavior</a>, <a href="../controlP5/Controller.html#setBroadcast(boolean)">setBroadcast</a>, <a href="../controlP5/Controller.html#setCaptionLabel(java.lang.String)">setCaptionLabel</a>, <a href="../controlP5/Controller.html#setColor(controlP5.CColor)">setColor</a>, <a href="../controlP5/Controller.html#setColorActive(int)">setColorActive</a>, <a href="../controlP5/Controller.html#setColorBackground(int)">setColorBackground</a>, <a href="../controlP5/Controller.html#setColorCaptionLabel(int)">setColorCaptionLabel</a>, <a href="../controlP5/Controller.html#setColorForeground(int)">setColorForeground</a>, <a href="../controlP5/Controller.html#setColorValueLabel(int)">setColorValueLabel</a>, <a href="../controlP5/Controller.html#setDecimalPrecision(int)">setDecimalPrecision</a>, <a href="../controlP5/Controller.html#setDefaultValue(float)">setDefaultValue</a>, <a href="../controlP5/Controller.html#setGroup(controlP5.ControllerGroup)">setGroup</a>, <a href="../controlP5/Controller.html#setGroup(java.lang.String)">setGroup</a>, <a href="../controlP5/Controller.html#setHeight(int)">setHeight</a>, <a href="../controlP5/Controller.html#setId(int)">setId</a>, <a href="../controlP5/Controller.html#setImage(processing.core.PImage)">setImage</a>, <a href="../controlP5/Controller.html#setImage(processing.core.PImage, int)">setImage</a>, <a href="../controlP5/Controller.html#setImages(processing.core.PImage...)">setImages</a>, <a href="../controlP5/Controller.html#setImages(processing.core.PImage, processing.core.PImage, processing.core.PImage)">setImages</a>, <a href="../controlP5/Controller.html#setImages(processing.core.PImage, processing.core.PImage, processing.core.PImage, processing.core.PImage)">setImages</a>, <a href="../controlP5/Controller.html#setLabelVisible(boolean)">setLabelVisible</a>, <a href="../controlP5/Controller.html#setLock(boolean)">setLock</a>, <a href="../controlP5/Controller.html#setMax(float)">setMax</a>, <a href="../controlP5/Controller.html#setMin(float)">setMin</a>, <a href="../controlP5/Controller.html#setMouseOver(boolean)">setMouseOver</a>, <a href="../controlP5/Controller.html#setMousePressed(boolean)">setMousePressed</a>, <a href="../controlP5/Controller.html#setMoveable(boolean)">setMoveable</a>, <a href="../controlP5/Controller.html#setParent(controlP5.ControllerInterface)">setParent</a>, <a href="../controlP5/Controller.html#setPosition(float, float)">setPosition</a>, <a href="../controlP5/Controller.html#setPosition(processing.core.PVector)">setPosition</a>, <a href="../controlP5/Controller.html#setSize(int, int)">setSize</a>, <a href="../controlP5/Controller.html#setSize(processing.core.PImage)">setSize</a>, <a href="../controlP5/Controller.html#setStringValue(java.lang.String)">setStringValue</a>, <a href="../controlP5/Controller.html#setTab(controlP5.ControlWindow, java.lang.String)">setTab</a>, <a href="../controlP5/Controller.html#setTab(java.lang.String)">setTab</a>, <a href="../controlP5/Controller.html#setUpdate(boolean)">setUpdate</a>, <a href="../controlP5/Controller.html#setUserInteraction(boolean)">setUserInteraction</a>, <a href="../controlP5/Controller.html#setValueLabel(java.lang.String)">setValueLabel</a>, <a href="../controlP5/Controller.html#setValueSelf(float)">setValueSelf</a>, <a href="../controlP5/Controller.html#setView(controlP5.ControllerView)">setView</a>, <a href="../controlP5/Controller.html#setView(controlP5.ControllerView, int)">setView</a>, <a href="../controlP5/Controller.html#setVisible(boolean)">setVisible</a>, <a href="../controlP5/Controller.html#setWidth(int)">setWidth</a>, <a href="../controlP5/Controller.html#show()">show</a>, <a href="../controlP5/Controller.html#toString()">toString</a>, <a href="../controlP5/Controller.html#unlock()">unlock</a>, <a href="../controlP5/Controller.html#unplugFrom(java.lang.Object)">unplugFrom</a>, <a href="../controlP5/Controller.html#unplugFrom(java.lang.Object[])">unplugFrom</a>, <a href="../controlP5/Controller.html#unregisterTooltip()">unregisterTooltip</a>, <a href="../controlP5/Controller.html#update()">update</a>, <a href="../controlP5/Controller.html#updateAbsolutePosition()">updateAbsolutePosition</a>, <a href="../controlP5/Controller.html#updateEvents()">updateEvents</a>, <a href="../controlP5/Controller.html#updateSize()">updateSize</a></code></li> </ul> <ul class="blockList"> <li class="blockList"><a name="methods_inherited_from_class_java.lang.Object"> <!-- --> </a> <h3>Methods inherited from class java.lang.Object</h3> <code>equals, getClass, hashCode, notify, notifyAll, wait, wait, wait</code></li> </ul> <ul class="blockList"> <li class="blockList"><a name="methods_inherited_from_class_controlP5.ControllerInterface"> <!-- --> </a> <h3>Methods inherited from interface controlP5.<a href="../controlP5/ControllerInterface.html" title="interface in controlP5">ControllerInterface</a></h3> <code><a href="../controlP5/ControllerInterface.html#parent()">parent</a>, <a href="../controlP5/ControllerInterface.html#setColorLabel(int)">setColorLabel</a>, <a href="../controlP5/ControllerInterface.html#setColorValue(int)">setColorValue</a>, <a href="../controlP5/ControllerInterface.html#setLabel(java.lang.String)">setLabel</a></code></li> </ul> </li> </ul> </li> </ul> </div> <div class="details"> <ul class="blockList"> <li class="blockList"> <!-- ============ FIELD DETAIL =========== --> <ul class="blockList"> <li class="blockList"><a name="field_detail"> <!-- --> </a> <h3>Field Detail</h3> <a name="isCrosshairs"> <!-- --> </a> <ul class="blockListLast"> <li class="blockList"> <h4>isCrosshairs</h4> <pre>public boolean isCrosshairs</pre> </li> </ul> </li> </ul> <!-- ========= CONSTRUCTOR DETAIL ======== --> <ul class="blockList"> <li class="blockList"><a name="constructor_detail"> <!-- --> </a> <h3>Constructor Detail</h3> <a name="Slider2D(controlP5.ControlP5, java.lang.String)"> <!-- --> </a> <ul class="blockListLast"> <li class="blockList"> <h4>Slider2D</h4> <pre>public Slider2D(<a href="../controlP5/ControlP5.html" title="class in controlP5">ControlP5</a> theControlP5, java.lang.String theName)</pre> <div class="block">Convenience constructor to extend Slider2D.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>theControlP5</code> - </dd><dd><code>theName</code> - </dd><script type="text/javascript"> <!-- document.getElementsByTagName('html')[0].className = 'isjs';function toggle(dt) { var display, dd=dt; do{ dd = dd.nextSibling } while(dd.tagName!='DD'); toOpen =!dd.style.display;dd.style.display = toOpen? 'block':''; dt.getElementsByTagName('span')[0].innerHTML = toOpen? '-':'+' ; } --> </script> <div id="test" class="toggleList"><dl><dt onclick="toggle(this);"><span>+</span>Example</dt><dd><code><pre>/** * ControlP5 extending Controllers * * the following example shows how to extend the Controller class to * create customizable Controllers. You can either extend the Controller class itself, * or any class that extends Controller itself like the Slider, Button, DropdownList, etc. * * How to: * * 1) do a super call to the convenience constructor requiring * 2 parameter (ControlP5 instance, name) * * 2) the Controller class has a set of empty methods that allow you to capture * inputs from the mouse including * onEnter(), onLeave(), onPress(), onRelease(), onClick(), onScroll(int), onDrag() * These you can override and include functionality as needed. * * 3) use method getPointer() to return the local (relative) * xy-coordinates of the controller * * 4) after instantiation custom controllers are treated the same * as default controlP5 controllers. * * by Andreas Schlegel, 2012 * www.sojamo.de/libraries/controlp5 * */ import controlP5.*; ControlP5 cp5; PApplet p; void setup() { size(400, 400); cp5 = new ControlP5(this); // create 2 groups to show nesting of custom controllers and // Group g1 = cp5.addGroup("a").setPosition(0,100).setWidth(180); Group g2 = cp5.addGroup("b").setPosition(0,10).setWidth(180); g2.moveTo(g1); // create 2 custom Controllers from class MyButton // MyButton extends Controller and inherits all methods accordingly. new MyButton(cp5, "b1").setPosition(0, 0).setSize(180, 200).moveTo(g2); new MyButton(cp5, "b2").setPosition(205, 15).setSize(180, 200); } void draw() { background(0); } // b1 will be called from Controller b1 public void b1(float theValue) { println("yay button "+theValue); } public void controlEvent(ControlEvent theEvent) { println("controlEvent : "+theEvent); } // Create a custom Controller, please not that // MyButton extends Controller<MyButton>, <MyButton> // is an indicator for the super class about the type of // custom controller to be created. class MyButton extends Controller<MyButton> { int current = 0xffff0000; float a = 128; float na; int y; // use the convenience constructor of super class Controller // MyButton will automatically registered and move to the // default controlP5 tab. MyButton(ControlP5 cp5, String theName) { super(cp5, theName); // replace the default view with a custom view. setView(new ControllerView() { public void display(PApplet p, Object b) { // draw button background na += (a-na) * 0.1; p.fill(current,na); p.rect(0, 0, getWidth(), getHeight()); // draw horizontal line which can be moved on the x-axis // using the scroll wheel. p.fill(0,255,0); p.rect(0,y,width,10); // draw the custom label p.fill(128); translate(0,getHeight()+14); p.text(getName(),0,0); p.text(getName(),0,0); } } ); } // override various input methods for mouse input control void onEnter() { cursor(HAND); println("enter"); a = 255; } void onScroll(int n) { println("scrolling"); y -= n; y = constrain(y,0,getHeight()-10); } void onPress() { println("press"); current = 0xffffff00; } void onClick() { Pointer p1 = getPointer(); println("clicked at "+p1.x()+", "+p1.y()); current = 0xffffff00; setValue(y); } void onRelease() { println("release"); current = 0xffffffff; } void onMove() { println("moving "+this+" "+_myControlWindow.getMouseOverList()); } void onDrag() { current = 0xff0000ff; Pointer p1 = getPointer(); float dif = dist(p1.px(),p1.py(),p1.x(),p1.y()); println("dragging at "+p1.x()+", "+p1.y()+" "+dif); } void onReleaseOutside() { onLeave(); } void onLeave() { println("leave"); cursor(ARROW); a = 128; } } </pre></code></dd></dl></div></dl> </li> </ul> </li> </ul> <!-- ============ METHOD DETAIL ========== --> <ul class="blockList"> <li class="blockList"><a name="method_detail"> <!-- --> </a> <h3>Method Detail</h3> <a name="disableCrosshair()"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>disableCrosshair</h4> <pre>public <a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a> disableCrosshair()</pre> </li> </ul> <a name="enableCrosshair()"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>enableCrosshair</h4> <pre>public <a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a> enableCrosshair()</pre> </li> </ul> <a name="getArrayValue()"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>getArrayValue</h4> <pre>public float[] getArrayValue()</pre> <div class="block"><strong>Description copied from class: <code><a href="../controlP5/Controller.html#getArrayValue()">Controller</a></code></strong></div> <div class="block">returns the current float array value of a controller.</div> <dl> <dt><strong>Specified by:</strong></dt> <dd><code><a href="../controlP5/ControllerInterface.html#getArrayValue()">getArrayValue</a></code> in interface <code><a href="../controlP5/ControllerInterface.html" title="interface in controlP5">ControllerInterface</a><<a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a>></code></dd> <dt><strong>Overrides:</strong></dt> <dd><code><a href="../controlP5/Controller.html#getArrayValue()">getArrayValue</a></code> in class <code><a href="../controlP5/Controller.html" title="class in controlP5">Controller</a><<a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a>></code></dd> <dt><span class="strong">Returns:</span></dt><dd>float[]</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../controlP5/Controller.html#getValue()"><code>Controller.getValue()</code></a>, <a href="../controlP5/Controller.html#getStringValue()"><code>Controller.getStringValue()</code></a></dd></dl> </li> </ul> <a name="getCursorHeight()"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>getCursorHeight</h4> <pre>public float getCursorHeight()</pre> </li> </ul> <a name="getCursorWidth()"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>getCursorWidth</h4> <pre>public float getCursorWidth()</pre> </li> </ul> <a name="getCursorX()"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>getCursorX</h4> <pre>public float getCursorX()</pre> </li> </ul> <a name="getCursorY()"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>getCursorY</h4> <pre>public float getCursorY()</pre> </li> </ul> <a name="getMaxX()"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>getMaxX</h4> <pre>public float getMaxX()</pre> </li> </ul> <a name="getMaxY()"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>getMaxY</h4> <pre>public float getMaxY()</pre> </li> </ul> <a name="getMinX()"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>getMinX</h4> <pre>public float getMinX()</pre> </li> </ul> <a name="getMinY()"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>getMinY</h4> <pre>public float getMinY()</pre> </li> </ul> <a name="setArrayValue(float[])"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>setArrayValue</h4> <pre>public <a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a> setArrayValue(float[] theArray)</pre> <dl> <dt><strong>Specified by:</strong></dt> <dd><code><a href="../controlP5/ControllerInterface.html#setArrayValue(float[])">setArrayValue</a></code> in interface <code><a href="../controlP5/ControllerInterface.html" title="interface in controlP5">ControllerInterface</a><<a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a>></code></dd> <dt><strong>Overrides:</strong></dt> <dd><code><a href="../controlP5/Controller.html#setArrayValue(float[])">setArrayValue</a></code> in class <code><a href="../controlP5/Controller.html" title="class in controlP5">Controller</a><<a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a>></code></dd> <dt><span class="strong">Returns:</span></dt><dd>Controller</dd></dl> </li> </ul> <a name="setCursorX(float)"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>setCursorX</h4> <pre>public <a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a> setCursorX(float theValue)</pre> </li> </ul> <a name="setCursorY(float)"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>setCursorY</h4> <pre>public <a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a> setCursorY(float theValue)</pre> </li> </ul> <a name="setMaxX(float)"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>setMaxX</h4> <pre>public <a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a> setMaxX(float theMaxX)</pre> <div class="block">sets the maximum value for the x-axis</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>theMaxX</code> - </dd> <dt><span class="strong">Returns:</span></dt><dd>Slider2D</dd></dl> </li> </ul> <a name="setMaxY(float)"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>setMaxY</h4> <pre>public <a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a> setMaxY(float theMaxY)</pre> <div class="block">sets the maximum value for the y-axis</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>theMaxY</code> - </dd> <dt><span class="strong">Returns:</span></dt><dd>Slider2D</dd></dl> </li> </ul> <a name="setMinX(float)"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>setMinX</h4> <pre>public <a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a> setMinX(float theMinX)</pre> <div class="block">sets the minimum value for the x-axis</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>theMinX</code> - </dd> <dt><span class="strong">Returns:</span></dt><dd>Slider2D</dd></dl> </li> </ul> <a name="setMinY(float)"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>setMinY</h4> <pre>public <a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a> setMinY(float theMinY)</pre> <div class="block">sets the minimum value for the y-axis</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>theMinY</code> - </dd> <dt><span class="strong">Returns:</span></dt><dd>Slider2D</dd></dl> </li> </ul> <a name="setValue(float)"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>setValue</h4> <pre>public <a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a> setValue(float theValue)</pre> <dl> <dt><strong>Specified by:</strong></dt> <dd><code><a href="../controlP5/ControllerInterface.html#setValue(float)">setValue</a></code> in interface <code><a href="../controlP5/ControllerInterface.html" title="interface in controlP5">ControllerInterface</a><<a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a>></code></dd> <dt><strong>Overrides:</strong></dt> <dd><code><a href="../controlP5/Controller.html#setValue(float)">setValue</a></code> in class <code><a href="../controlP5/Controller.html" title="class in controlP5">Controller</a><<a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a>></code></dd> <dt><span class="strong">Parameters:</span></dt><dd><code>theValue</code> - float</dd></dl> </li> </ul> <a name="setValueLabelSeparator(java.lang.String)"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>setValueLabelSeparator</h4> <pre>public void setValueLabelSeparator(java.lang.String theSeparator)</pre> </li> </ul> <a name="shuffle()"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>shuffle</h4> <pre>public <a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a> shuffle()</pre> <div class="block">assigns a random value to the controller.</div> </li> </ul> <a name="updateDisplayMode(int)"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>updateDisplayMode</h4> <pre>public <a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a> updateDisplayMode(int theMode)</pre> </li> </ul> <a name="updateInternalEvents(processing.core.PApplet)"> <!-- --> </a> <ul class="blockListLast"> <li class="blockList"> <h4>updateInternalEvents</h4> <pre>public <a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a> updateInternalEvents(processing.core.PApplet theApplet)</pre> <div class="block"><strong>Description copied from interface: <code><a href="../controlP5/ControllerInterface.html#updateInternalEvents(processing.core.PApplet)">ControllerInterface</a></code></strong></div> <div class="block">a method for putting input events like e.g. mouse or keyboard events and queries. this has been taken out of the draw method for better overwriting capability.</div> <dl> <dt><strong>Specified by:</strong></dt> <dd><code><a href="../controlP5/ControllerInterface.html#updateInternalEvents(processing.core.PApplet)">updateInternalEvents</a></code> in interface <code><a href="../controlP5/ControllerInterface.html" title="interface in controlP5">ControllerInterface</a><<a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a>></code></dd> <dt><strong>Overrides:</strong></dt> <dd><code><a href="../controlP5/Controller.html#updateInternalEvents(processing.core.PApplet)">updateInternalEvents</a></code> in class <code><a href="../controlP5/Controller.html" title="class in controlP5">Controller</a><<a href="../controlP5/Slider2D.html" title="class in controlP5">Slider2D</a>></code></dd> <dt><span class="strong">See Also:</span></dt><dd><code>ControllerInterface.updateInternalEvents</code></dd></dl> </li> </ul> </li> </ul> </li> </ul> </div> </div> <!-- ========= END OF CLASS DATA ========= --> <!-- ======= START OF BOTTOM NAVBAR ====== --> <div class="bottomNav"><a name="navbar_bottom"> <!-- --> </a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow"> <!-- --> </a> <ul class="navList" title="Navigation"> <li><a href="../controlP5/package-summary.html">Package</a></li> <li class="navBarCell1Rev">Class</li> <li><a href="package-tree.html">Tree</a></li> <li><a href="../index-all.html">Index</a></li> <li><a href="../help-doc.html">Help</a></li> </ul> </div> <div class="subNav"> <ul class="navList"> <li><a href="../controlP5/Slider.html" title="class in controlP5"><span class="strong">Prev Class</span></a></li> <li><a href="../controlP5/Tab.html" title="class in controlP5"><span class="strong">Next Class</span></a></li> </ul> <ul class="navList"> <li><a href="../index.html?controlP5/Slider2D.html" target="_top">Frames</a></li> <li><a href="Slider2D.html" target="_top">No Frames</a></li> </ul> <ul class="navList" id="allclasses_navbar_bottom"> <li><a href="../allclasses-noframe.html">All Classes</a></li> </ul> <div> <script type="text/javascript"><!-- allClassesLink = document.getElementById("allclasses_navbar_bottom"); if(window==top) { allClassesLink.style.display = "block"; } else { allClassesLink.style.display = "none"; } //--> </script> </div> <div> <ul class="subNavList"> <li>Summary: </li> <li>Nested | </li> <li><a href="#field_summary">Field</a> | </li> <li><a href="#constructor_summary">Constr</a> | </li> <li><a href="#method_summary">Method</a></li> </ul> <ul class="subNavList"> <li>Detail: </li> <li><a href="#field_detail">Field</a> | </li> <li><a href="#constructor_detail">Constr</a> | </li> <li><a href="#method_detail">Method</a></li> </ul> </div> <a name="skip-navbar_bottom"> <!-- --> </a></div> <!-- ======== END OF BOTTOM NAVBAR ======= --> <p class="legalCopy"><small>processing library controlP5 by Andreas Schlegel. (c) 2006-2014</small></p> </body> </html>