controlP5
Class Textfield
java.lang.Object
controlP5.Controller
controlP5.Textfield
- All Implemented Interfaces:
- CDrawable, ControllerInterface, ControlP5Constants
public class Textfield
- extends Controller
A singleline input textfield, use arrow keys to go back and forth, use backspace to delete
characters. Using the up and down arrows lets you cycle through the history of the textfield.
This is the best you can get. Font handling, font switching, measuring, left align, right align,
etc. was giving me a big headache. not perfect, i think this is a good compromise.
- +Example
/**
* ControlP5 Textfield
*
*
* find a list of public methods available for the Textfield Controller
* at the bottom of this sketch.
*
* by Andreas Schlegel, 2012
* www.sojamo.de/libraries/controlp5
*
*/
import controlP5.*;
ControlP5 cp5;
String textValue = "";
void setup() {
size(700,400);
PFont font = createFont("arial",20);
cp5 = new ControlP5(this);
cp5.addTextfield("input")
.setPosition(20,100)
.setSize(200,40)
.setFont(font)
.setFocus(true)
.setColor(color(255,0,0))
;
cp5.addTextfield("textValue")
.setPosition(20,170)
.setSize(200,40)
.setFont(createFont("arial",20))
.setAutoClear(false)
;
cp5.addBang("clear")
.setPosition(240,170)
.setSize(80,40)
.getCaptionLabel().align(ControlP5.CENTER, ControlP5.CENTER)
;
cp5.addTextfield("default")
.setPosition(20,350)
.setAutoClear(false)
;
textFont(font);
}
void draw() {
background(0);
fill(255);
text(cp5.get(Textfield.class,"input").getText(), 360,130);
text(textValue, 360,180);
}
public void clear() {
cp5.get(Textfield.class,"textValue").clear();
}
void controlEvent(ControlEvent theEvent) {
if(theEvent.isAssignableFrom(Textfield.class)) {
println("controlEvent: accessing a string from controller '"
+theEvent.getName()+"': "
+theEvent.getStringValue()
);
}
}
public void input(String theText) {
// automatically receives results from controller input
println("a textfield event for controller 'input' : "+theText);
}
/*
a list of all methods available for the Textfield Controller
use ControlP5.printPublicMethodsFor(Textfield.class);
to print the following list into the console.
You can find further details about class Textfield in the javadoc.
Format:
ClassName : returnType methodName(parameter type)
controlP5.Textfield : String getText()
controlP5.Textfield : Textfield clear()
controlP5.Textfield : Textfield keepFocus(boolean)
controlP5.Textfield : Textfield setAutoClear(boolean)
controlP5.Textfield : Textfield setFocus(boolean)
controlP5.Textfield : Textfield setFont(ControlFont)
controlP5.Textfield : Textfield setFont(PFont)
controlP5.Textfield : Textfield setFont(int)
controlP5.Textfield : Textfield setText(String)
controlP5.Textfield : Textfield setValue(String)
controlP5.Textfield : Textfield setValue(float)
controlP5.Textfield : boolean isAutoClear()
controlP5.Textfield : int getIndex()
controlP5.Textfield : void draw(PApplet)
controlP5.Textfield : void keyEvent(KeyEvent)
controlP5.Textfield : void setInputFilter(int)
controlP5.Textfield : void setPasswordMode(boolean)
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 : String getAddress()
controlP5.Controller : String getInfo()
controlP5.Controller : String getName()
controlP5.Controller : String getStringValue()
controlP5.Controller : String toString()
controlP5.Controller : Tab getTab()
controlP5.Controller : Textfield addCallback(CallbackListener)
controlP5.Controller : Textfield addListener(ControlListener)
controlP5.Controller : Textfield bringToFront()
controlP5.Controller : Textfield bringToFront(ControllerInterface)
controlP5.Controller : Textfield hide()
controlP5.Controller : Textfield linebreak()
controlP5.Controller : Textfield listen(boolean)
controlP5.Controller : Textfield lock()
controlP5.Controller : Textfield plugTo(Object)
controlP5.Controller : Textfield plugTo(Object, String)
controlP5.Controller : Textfield plugTo(Object[])
controlP5.Controller : Textfield plugTo(Object[], String)
controlP5.Controller : Textfield registerProperty(String)
controlP5.Controller : Textfield registerProperty(String, String)
controlP5.Controller : Textfield registerTooltip(String)
controlP5.Controller : Textfield removeBehavior()
controlP5.Controller : Textfield removeCallback()
controlP5.Controller : Textfield removeCallback(CallbackListener)
controlP5.Controller : Textfield removeListener(ControlListener)
controlP5.Controller : Textfield removeProperty(String)
controlP5.Controller : Textfield removeProperty(String, String)
controlP5.Controller : Textfield setArrayValue(float[])
controlP5.Controller : Textfield setArrayValue(int, float)
controlP5.Controller : Textfield setBehavior(ControlBehavior)
controlP5.Controller : Textfield setBroadcast(boolean)
controlP5.Controller : Textfield setCaptionLabel(String)
controlP5.Controller : Textfield setColor(CColor)
controlP5.Controller : Textfield setColorActive(int)
controlP5.Controller : Textfield setColorBackground(int)
controlP5.Controller : Textfield setColorCaptionLabel(int)
controlP5.Controller : Textfield setColorForeground(int)
controlP5.Controller : Textfield setColorValueLabel(int)
controlP5.Controller : Textfield setDecimalPrecision(int)
controlP5.Controller : Textfield setDefaultValue(float)
controlP5.Controller : Textfield setHeight(int)
controlP5.Controller : Textfield setId(int)
controlP5.Controller : Textfield setImages(PImage, PImage, PImage)
controlP5.Controller : Textfield setImages(PImage, PImage, PImage, PImage)
controlP5.Controller : Textfield setLabelVisible(boolean)
controlP5.Controller : Textfield setLock(boolean)
controlP5.Controller : Textfield setMax(float)
controlP5.Controller : Textfield setMin(float)
controlP5.Controller : Textfield setMouseOver(boolean)
controlP5.Controller : Textfield setMoveable(boolean)
controlP5.Controller : Textfield setPosition(PVector)
controlP5.Controller : Textfield setPosition(float, float)
controlP5.Controller : Textfield setSize(PImage)
controlP5.Controller : Textfield setSize(int, int)
controlP5.Controller : Textfield setStringValue(String)
controlP5.Controller : Textfield setUpdate(boolean)
controlP5.Controller : Textfield setValueLabel(String)
controlP5.Controller : Textfield setView(ControllerView)
controlP5.Controller : Textfield setVisible(boolean)
controlP5.Controller : Textfield setWidth(int)
controlP5.Controller : Textfield show()
controlP5.Controller : Textfield unlock()
controlP5.Controller : Textfield unplugFrom(Object)
controlP5.Controller : Textfield unplugFrom(Object[])
controlP5.Controller : Textfield unregisterTooltip()
controlP5.Controller : Textfield update()
controlP5.Controller : Textfield updateSize()
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)
*/
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 |
Constructor Summary |
Textfield(ControlP5 theControlP5,
ControllerGroup theParent,
java.lang.String theName,
java.lang.String theDefaultValue,
int theX,
int theY,
int theWidth,
int theHeight)
|
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, linebreak, 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, update, updateAbsolutePosition, updateEvents, updateInternalEvents, updateSize |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
cursorWidth
public static int cursorWidth
Textfield
public Textfield(ControlP5 theControlP5,
ControllerGroup theParent,
java.lang.String theName,
java.lang.String theDefaultValue,
int theX,
int theY,
int theWidth,
int theHeight)
clear
public Textfield clear()
draw
public void draw(processing.core.PApplet theApplet)
- Description copied from class:
Controller
- the default draw function for each controller extending superclass Controller. This draw
function will take care of default matrix operations and will call the display function of
the current ControllerView object active for this particular controller.
- Specified by:
draw
in interface CDrawable
- Specified by:
draw
in interface ControllerInterface
- Overrides:
draw
in class Controller
- Parameters:
theApplet
- PApplet- See Also:
ControllerView
getIndex
public int getIndex()
getText
public java.lang.String getText()
getTextList
public java.lang.String[] getTextList()
isAutoClear
public boolean isAutoClear()
keepFocus
public Textfield keepFocus(boolean theValue)
keyEvent
public void keyEvent(java.awt.event.KeyEvent theKeyEvent)
- Specified by:
keyEvent
in interface ControllerInterface
- Overrides:
keyEvent
in class Controller
setAutoClear
public Textfield setAutoClear(boolean theValue)
setColor
public Textfield setColor(int theColor)
setColorCursor
public Textfield setColorCursor(int theColor)
setFocus
public Textfield setFocus(boolean theValue)
setFont
public Textfield setFont(ControlFont theFont)
setFont
public Textfield setFont(int theFont)
setFont
public Textfield setFont(processing.core.PFont thePFont)
setInputFilter
public void setInputFilter(int theInputType)
setPasswordMode
public void setPasswordMode(boolean theFlag)
- TODO
set the mode of the textfield to password mode, each character is shown as a "*" like e.g. in
online password forms.
- Parameters:
theFlag
- boolean
setText
public Textfield setText(java.lang.String theText)
setValue
public Textfield setValue(float theValue)
- Specified by:
setValue
in interface ControllerInterface
- Specified by:
setValue
in class Controller
- Parameters:
theValue
- float
setValue
public Textfield setValue(java.lang.String theText)
submit
public Textfield submit()
- make the controller execute a return event. submit the current content of the texfield.
processing library controlP5 by Andreas Schlegel. (c) 2012