controlP5
Class Numberbox

java.lang.Object
  extended by controlP5.Controller
      extended by controlP5.Numberbox
All Implemented Interfaces:
CDrawable, ControllerInterface, ControlP5Constants

public class Numberbox
extends Controller

Click and drag the mouse inside a numberbox and move up and down to change the value of a numberbox. By default the value changes when dragging the mouse up and down. use setDirection(Controller.HORIZONTAL) to change the mouse control to left and right. Why do I get -1000000 as initial value when creating a numberbox without a default value? the value of a numberbox defaults back to its minValue, which is -1000000. either use a default value or link a variable to the numberbox - this is done by giving a float or int variable the same name as the numberbox. Use setMultiplier(float) to change the sensitivity of values increasing/decreasing, by default the multiplier is 1.

+Example
/**
* ControlP5 Numberbox
*
*
* find a list of public methods available for the Numberbox Controller
* at the bottom of this sketch.
*
* by Andreas Schlegel, 2012
* www.sojamo.de/libraries/controlp5
*
*/

import controlP5.*;

ControlP5 cp5;

int myColorBackground = color(0,0,0);

public float numberboxValue = 100;

void setup() {
  size(700,400);
  noStroke();
  cp5 = new ControlP5(this);
  
  cp5.addNumberbox("numberbox")
     .setPosition(100,160)
     .setSize(100,14)
     .setScrollSensitivity(1.1)
     .setValue(50)
     ;
  

  cp5.addNumberbox("numberboxValue")
     .setPosition(100,200)
     .setSize(100,14)
     .setRange(0,200)
     .setMultiplier(0.1) // set the sensitifity of the numberbox
     .setDirection(Controller.HORIZONTAL) // change the control direction to left/right
     .setValue(100)
     ;
  
}

void draw() {
  background(myColorBackground);
  fill(numberboxValue);
  rect(0,0,width,100);
}

void numberbox(int theColor) {
  myColorBackground = color(theColor);
  println("a numberbox event. setting background to "+theColor);
}



/*
a list of all methods available for the Numberbox Controller
use ControlP5.printPublicMethodsFor(Numberbox.class);
to print the following list into the console.

You can find further details about class Numberbox in the javadoc.

Format:
ClassName : returnType methodName(parameter type)

controlP5.Numberbox : Numberbox linebreak() 
controlP5.Numberbox : Numberbox setDirection(int) 
controlP5.Numberbox : Numberbox setMultiplier(float) 
controlP5.Numberbox : Numberbox setRange(float, float) 
controlP5.Numberbox : Numberbox setScrollSensitivity(float) 
controlP5.Numberbox : Numberbox setValue(float) 
controlP5.Numberbox : Numberbox shuffle() 
controlP5.Numberbox : Numberbox update() 
controlP5.Numberbox : float getMultiplier() 
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 : Numberbox addCallback(CallbackListener) 
controlP5.Controller : Numberbox addListener(ControlListener) 
controlP5.Controller : Numberbox bringToFront() 
controlP5.Controller : Numberbox bringToFront(ControllerInterface) 
controlP5.Controller : Numberbox hide() 
controlP5.Controller : Numberbox linebreak() 
controlP5.Controller : Numberbox listen(boolean) 
controlP5.Controller : Numberbox lock() 
controlP5.Controller : Numberbox plugTo(Object) 
controlP5.Controller : Numberbox plugTo(Object, String) 
controlP5.Controller : Numberbox plugTo(Object[]) 
controlP5.Controller : Numberbox plugTo(Object[], String) 
controlP5.Controller : Numberbox registerProperty(String) 
controlP5.Controller : Numberbox registerProperty(String, String) 
controlP5.Controller : Numberbox registerTooltip(String) 
controlP5.Controller : Numberbox removeBehavior() 
controlP5.Controller : Numberbox removeCallback() 
controlP5.Controller : Numberbox removeCallback(CallbackListener) 
controlP5.Controller : Numberbox removeListener(ControlListener) 
controlP5.Controller : Numberbox removeProperty(String) 
controlP5.Controller : Numberbox removeProperty(String, String) 
controlP5.Controller : Numberbox setArrayValue(float[]) 
controlP5.Controller : Numberbox setArrayValue(int, float) 
controlP5.Controller : Numberbox setBehavior(ControlBehavior) 
controlP5.Controller : Numberbox setBroadcast(boolean) 
controlP5.Controller : Numberbox setCaptionLabel(String) 
controlP5.Controller : Numberbox setColor(CColor) 
controlP5.Controller : Numberbox setColorActive(int) 
controlP5.Controller : Numberbox setColorBackground(int) 
controlP5.Controller : Numberbox setColorCaptionLabel(int) 
controlP5.Controller : Numberbox setColorForeground(int) 
controlP5.Controller : Numberbox setColorValueLabel(int) 
controlP5.Controller : Numberbox setDecimalPrecision(int) 
controlP5.Controller : Numberbox setDefaultValue(float) 
controlP5.Controller : Numberbox setHeight(int) 
controlP5.Controller : Numberbox setId(int) 
controlP5.Controller : Numberbox setImages(PImage, PImage, PImage) 
controlP5.Controller : Numberbox setImages(PImage, PImage, PImage, PImage) 
controlP5.Controller : Numberbox setLabelVisible(boolean) 
controlP5.Controller : Numberbox setLock(boolean) 
controlP5.Controller : Numberbox setMax(float) 
controlP5.Controller : Numberbox setMin(float) 
controlP5.Controller : Numberbox setMouseOver(boolean) 
controlP5.Controller : Numberbox setMoveable(boolean) 
controlP5.Controller : Numberbox setPosition(PVector) 
controlP5.Controller : Numberbox setPosition(float, float) 
controlP5.Controller : Numberbox setSize(PImage) 
controlP5.Controller : Numberbox setSize(int, int) 
controlP5.Controller : Numberbox setStringValue(String) 
controlP5.Controller : Numberbox setUpdate(boolean) 
controlP5.Controller : Numberbox setValueLabel(String) 
controlP5.Controller : Numberbox setView(ControllerView) 
controlP5.Controller : Numberbox setVisible(boolean) 
controlP5.Controller : Numberbox setWidth(int) 
controlP5.Controller : Numberbox show() 
controlP5.Controller : Numberbox unlock() 
controlP5.Controller : Numberbox unplugFrom(Object) 
controlP5.Controller : Numberbox unplugFrom(Object[]) 
controlP5.Controller : Numberbox unregisterTooltip() 
controlP5.Controller : Numberbox update() 
controlP5.Controller : Numberbox updateSize() 
controlP5.Controller : PImage setImage(PImage) 
controlP5.Controller : PImage setImage(PImage, int) 
controlP5.Controller : PVector getAbsolutePosition() 
controlP5.Controller : PVector getPosition() 
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) 


*/




Field Summary
static int autoHeight
           
static int autoWidth
           
static int DOWN
           
static int LEFT
           
static int RIGHT
           
static int UP
           
 
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, ELLIPSE, ENTER, ESCAPE, EVENT, eventMethod, FADEIN, FADEOUT, FIELD, FLOAT, HALF_PI, HIDE, HIGHLIGHT, HORIZONTAL, IDLE, IMAGE, INACTIVE, INCREASE, INTEGER, INVALID, KEYCONTROL, LEFT_OUTSIDE, LINE, LOAD, MENU, METHOD, MOVE, MULTIPLES, OVER, PI, PRESSED, PRINT, RELEASE, RESET, 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, VALUELABEL, VERBOSE, VERTICAL, WAIT
 
Constructor Summary
Numberbox(ControlP5 theControlP5, Tab theParent, java.lang.String theName, float theDefaultValue, int theX, int theY, int theWidth, int theHeight)
           
 
Method Summary
 float getMultiplier()
           
 Numberbox linebreak()
          
 void mousePressed()
           
 void mouseReleased()
           
 void mouseReleasedOutside()
           
 Numberbox scrolled(int theRotationValue)
          changes the value of the numberbox when hovering and using the mouse wheel or the scroll function of a multi-touch track pad.
 Numberbox setDirection(int theValue)
          set the direction for changing the numberbox value when dragging the mouse.
 Numberbox setMultiplier(float theMultiplier)
           
 Numberbox setRange(float theMin, float theMax)
           
 Numberbox setScrollSensitivity(float theValue)
          sets the sensitivity for the scroll behavior when using the mouse wheel or the scroll function of a multi-touch track pad.
 Numberbox setSensitivity(float theValue)
          Deprecated. 
 Numberbox setValue(float theValue)
          set the value of the numberbox.
 Numberbox shuffle()
          assigns a random value to the controller.
 Numberbox update()
          updates the value of the controller without having to set the value explicitly.
 Numberbox updateDisplayMode(int theMode)
          
 Numberbox updateInternalEvents(processing.core.PApplet theApplet)
          a method for putting input events like e.g.
 
Methods inherited from class controlP5.Controller
add, addCallback, addListener, align, bringToFront, bringToFront, changeValue, getAbsolutePosition, getAddress, getArrayValue, getArrayValue, getBehavior, getCaptionLabel, getColor, getControllerPlugList, getControlWindow, getDecimalPrecision, getDefaultValue, getHeight, getId, getLabel, getMax, getMin, getName, getParent, getPickingColor, getPosition, getProperty, getProperty, getStringValue, getTab, getValue, getValueLabel, getWidth, getWindow, hide, init, isActive, isBroadcast, isInside, isLabelVisible, isListening, isLock, isMouseOver, isMousePressed, isMoveable, isUpdate, isVisible, keyEvent, listen, listenerSize, lock, moveTo, moveTo, moveTo, moveTo, moveTo, moveTo, moveTo, moveTo, moveTo, plugTo, plugTo, plugTo, plugTo, registerProperty, registerProperty, registerTooltip, remove, remove, removeBehavior, removeCallback, removeCallback, removeListener, removeProperty, removeProperty, setAbsolutePosition, setAddress, setArrayValue, setArrayValue, setBehavior, setBroadcast, setCaptionLabel, setColor, setColorActive, setColorBackground, setColorCaptionLabel, setColorForeground, setColorValueLabel, setDecimalPrecision, setDefaultValue, setGroup, setGroup, setHeight, setId, setImage, setImage, setImages, setImages, setImages, setLabelVisible, setLock, setMax, setMin, setMouseOver, setMousePressed, setMoveable, setParent, setPosition, setPosition, setSize, setSize, setStringValue, setTab, setTab, setUpdate, setValueLabel, setView, setView, setVisible, setWidth, show, unlock, unplugFrom, unplugFrom, unregisterTooltip, updateAbsolutePosition, updateEvents, updateSize
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface controlP5.ControllerInterface
continuousUpdateEvents, draw, parent, setColorLabel, setColorValue, setLabel
 
Methods inherited from interface controlP5.CDrawable
draw
 

Field Detail

autoHeight

public static int autoHeight

autoWidth

public static int autoWidth

DOWN

public static int DOWN

LEFT

public static int LEFT

RIGHT

public static int RIGHT

UP

public static int UP
Constructor Detail

Numberbox

public Numberbox(ControlP5 theControlP5,
                 Tab theParent,
                 java.lang.String theName,
                 float theDefaultValue,
                 int theX,
                 int theY,
                 int theWidth,
                 int theHeight)
Parameters:
theControlP5 - ControlP5
theParent - Tab
theName - String
theDefaultValue - float
theX - int
theY - int
theWidth - int
theHeight - int
Method Detail

getMultiplier

public float getMultiplier()
Returns:
float

linebreak

public Numberbox linebreak()

Overrides:
linebreak in class Controller
Returns:
Controller

mousePressed

public void mousePressed()

mouseReleased

public void mouseReleased()

mouseReleasedOutside

public void mouseReleasedOutside()

scrolled

public Numberbox scrolled(int theRotationValue)
changes the value of the numberbox when hovering and using the mouse wheel or the scroll function of a multi-touch track pad.

Parameters:
theRotationValue -
Returns:
Numberbox

setDirection

public Numberbox setDirection(int theValue)
set the direction for changing the numberbox value when dragging the mouse. by default this is up/down (VERTICAL), use setDirection(Controller.HORIZONTAL) to change to left/right or back with setDirection(Controller.VERTICAL).

Parameters:
theValue -

setMultiplier

public Numberbox setMultiplier(float theMultiplier)
Parameters:
theMultiplier -
Returns:
Numberbox

setRange

public Numberbox setRange(float theMin,
                          float theMax)

setScrollSensitivity

public Numberbox setScrollSensitivity(float theValue)
sets the sensitivity for the scroll behavior when using the mouse wheel or the scroll function of a multi-touch track pad. The smaller the value (closer to 0) the higher the sensitivity.

Parameters:
theValue -
Returns:
Numberbox

setSensitivity

@Deprecated
public Numberbox setSensitivity(float theValue)
Deprecated. 

Parameters:
theValue -
Returns:
See Also:
Numberbox.setScrollSensitivity(float)

setValue

public Numberbox setValue(float theValue)
set the value of the numberbox.

Specified by:
setValue in interface ControllerInterface
Specified by:
setValue in class Controller
Parameters:
theValue - float
Returns:
Numberbox

shuffle

public Numberbox shuffle()
assigns a random value to the controller.

Returns:
Numberbox

update

public Numberbox update()
Description copied from class: Controller
updates the value of the controller without having to set the value explicitly. update does not visually update the controller. the updating status can be set with setUpdate(true/false) and checked with isUpdate().

Specified by:
update in interface ControllerInterface
Overrides:
update in class Controller
Returns:
Controller
See Also:
Controller.setUpdate(boolean), Controller.isUpdate()

updateDisplayMode

public Numberbox updateDisplayMode(int theMode)


updateInternalEvents

public Numberbox updateInternalEvents(processing.core.PApplet theApplet)
Description copied from interface: ControllerInterface
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.

Specified by:
updateInternalEvents in interface ControllerInterface
Overrides:
updateInternalEvents in class Controller
See Also:
ControllerInterface.updateInternalEvents


processing library controlP5 by Andreas Schlegel. (c) 2012