# ControllerInterface (Javadocs: controlP5)
Date: 2014-04-27

controlP5

## Interface ControllerInterface<T>

All Known Implementing Classes:
  Accordion, Bang, BoundingBox, Button, Chart, CheckBox, ColorPicker, ColorWheel, ControlGroup, Controller, ControllerGroup, DropdownList, FrameRate, Group, Knob, ListBox, Matrix, MultiList, MultiListButton, Numberbox, Radio, RadioButton, Range, ScrollableList, Slider, Slider2D, Tab, Textarea, Textfield, Textlabel, Toggle

    public interface ControllerInterface<T>

The ControllerInterface is inherited by all ControllerGroup and Controller classes.

### Method Summary

Methods
`T` `add(ControllerInterface<?> theElement)`
`T` `addListener(ControlListener theListener)`
`T` `bringToFront()`
`T` `bringToFront(ControllerInterface<?> theController)`
`void` `continuousUpdateEvents()`
`void` `draw(processing.core.PGraphics theGraphics)`
`processing.core.PVector` `getAbsolutePosition()`
`java.lang.String` `getAddress()`
`float[]` `getArrayValue()`
`float` `getArrayValue(int theIndex)`
`CColor` `getColor()`
`int` `getHeight()`
`int` `getId()`
`java.lang.String` `getName()`
`ControllerInterface<?>` `getParent()`
`int` `getPickingColor()`
`processing.core.PVector` `getPosition()`
`ControllerProperty` `getProperty(java.lang.String thePropertyName)`
`ControllerProperty` `getProperty(java.lang.String theSetter, java.lang.String theGetter)`
`java.lang.String` `getStringValue()`
`Tab` `getTab()`
`float` `getValue()`
`int` `getWidth()`
`ControlWindow` `getWindow()`
`T` `hide()`
`void` `init()`
`boolean` `isMouseOver()`
`boolean` `isUpdate()`
`boolean` `isVisible()`
`void` `keyEvent(processing.event.KeyEvent theEvent)`
`T` `moveTo(ControllerGroup<?> theGroup)`
`T` `moveTo(ControllerGroup<?> theGroup, Tab theTab, ControlWindow theWindow)`
`ControllerInterface<?>` `parent()`
`T` `registerProperty(java.lang.String thePropertyName)`
`T` `registerProperty(java.lang.String theSetter, java.lang.String theGetter)`
`void` `remove()`
`T` `remove(ControllerInterface<?> theElement)`
`T` `removeProperty(java.lang.String thePropertyName)`
`T` `removeProperty(java.lang.String theSetter, java.lang.String theGetter)`
`T` `setAbsolutePosition(processing.core.PVector thePVector)`
`T` `setAddress(java.lang.String theAddress)`
`T` `setArrayValue(float[] theArray)`
`T` `setArrayValue(int theIndex, float theValue)`
`T` `setCaptionLabel(java.lang.String theValue)`
`T` `setColor(CColor theColor)`
`T` `setColorActive(int theColor)`
`T` `setColorBackground(int theColor)`
`T` `setColorForeground(int theColor)`
`T` `setColorLabel(int theColor)`
`T` `setColorValue(int theColor)`
`T` `setId(int theValue)`
`T` `setLabel(java.lang.String theString)`
`T` `setMouseOver(boolean theFlag)`
`boolean` `setMousePressed(boolean theStatus)`
`T` `setPosition(float theX, float theY)`
`T` `setPosition(processing.core.PVector thePVector)`
`T` `setStringValue(java.lang.String theValue)`
`T` `setUpdate(boolean theFlag)`
`T` `setValue(float theValue)`
`T` `show()`
`T` `update()`
`T` `updateAbsolutePosition()`
`T` `updateEvents()`
`T` `updateInternalEvents(processing.core.PApplet theApplet)` a method for putting input events like e.g.

### Method Detail

#### add

    T add(ControllerInterface<?> theElement)

#### addListener

    T addListener(ControlListener theListener)

#### bringToFront

    T bringToFront()

#### bringToFront

    T bringToFront(ControllerInterface<?> theController)

#### continuousUpdateEvents

    void continuousUpdateEvents()

#### draw

    void draw(processing.core.PGraphics theGraphics)

#### getAbsolutePosition

    processing.core.PVector getAbsolutePosition()

#### getAddress

    java.lang.String getAddress()

#### getArrayValue

    float[] getArrayValue()

#### getArrayValue

    float getArrayValue(int theIndex)

#### getColor

    CColor getColor()

#### getHeight

    int getHeight()

#### getId

    int getId()

#### getName

    java.lang.String getName()

#### getParent

    ControllerInterface<?> getParent()

#### getPickingColor

    int getPickingColor()

#### getPosition

    processing.core.PVector getPosition()

#### getProperty

    ControllerProperty getProperty(java.lang.String thePropertyName)

#### getProperty

    ControllerProperty getProperty(java.lang.String theSetter,
                                 java.lang.String theGetter)

#### getStringValue

    java.lang.String getStringValue()

#### getTab

    Tab getTab()

#### getValue

    float getValue()

#### getWidth

    int getWidth()

#### getWindow

    ControlWindow getWindow()

#### hide

    T hide()

#### init

    void init()

#### isMouseOver

    boolean isMouseOver()

#### isUpdate

    boolean isUpdate()

#### isVisible

    boolean isVisible()

#### keyEvent

    void keyEvent(processing.event.KeyEvent theEvent)

#### moveTo

    T moveTo(ControllerGroup<?> theGroup)

#### moveTo

    T moveTo(ControllerGroup<?> theGroup,
           Tab theTab,
           ControlWindow theWindow)

#### parent

    ControllerInterface<?> parent()

#### registerProperty

    T registerProperty(java.lang.String thePropertyName)

#### registerProperty

    T registerProperty(java.lang.String theSetter,
                     java.lang.String theGetter)

#### remove

    void remove()

#### remove

    T remove(ControllerInterface<?> theElement)

#### removeProperty

    T removeProperty(java.lang.String thePropertyName)

#### removeProperty

    T removeProperty(java.lang.String theSetter,
                   java.lang.String theGetter)

#### setAbsolutePosition

    T setAbsolutePosition(processing.core.PVector thePVector)

#### setAddress

    T setAddress(java.lang.String theAddress)

#### setArrayValue

    T setArrayValue(float[] theArray)

#### setArrayValue

    T setArrayValue(int theIndex,
                  float theValue)

#### setCaptionLabel

    T setCaptionLabel(java.lang.String theValue)

#### setColor

    T setColor(CColor theColor)

#### setColorActive

    T setColorActive(int theColor)

#### setColorBackground

    T setColorBackground(int theColor)

#### setColorForeground

    T setColorForeground(int theColor)

#### setColorLabel

    T setColorLabel(int theColor)

#### setColorValue

    T setColorValue(int theColor)

#### setId

    T setId(int theValue)

#### setLabel

    T setLabel(java.lang.String theString)

#### setMouseOver

    T setMouseOver(boolean theFlag)

#### setMousePressed

    boolean setMousePressed(boolean theStatus)

#### setPosition

    T setPosition(float theX,
                float theY)

#### setPosition

    T setPosition(processing.core.PVector thePVector)

#### setStringValue

    T setStringValue(java.lang.String theValue)

#### setUpdate

    T setUpdate(boolean theFlag)

#### setValue

    T setValue(float theValue)

#### show

    T show()

#### update

    T update()

#### updateAbsolutePosition

    T updateAbsolutePosition()

#### updateEvents

    T updateEvents()

#### updateInternalEvents

    T updateInternalEvents(processing.core.PApplet theApplet)

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.