G4P (GUI for Processing) 4.3.11
A set of GUI controls for your Processing sketch.
|
Public Member Functions | |
void | draw () |
void | fireAllEvents (boolean all) |
int | getState () |
GImageToggleButton (PApplet theApplet, float p0, float p1) | |
GImageToggleButton (PApplet theApplet, float p0, float p1, String offPicture, int nbrCols) | |
GImageToggleButton (PApplet theApplet, float p0, float p1, String offPicture, int nbrCols, int nbrRows) | |
GImageToggleButton (PApplet theApplet, float p0, float p1, String offPicture, String overPicture, int nbrCols) | |
GImageToggleButton (PApplet theApplet, float p0, float p1, String offPicture, String overPicture, int nbrCols, int nbrRows) | |
void | mouseEvent (MouseEvent event) |
void | setState (int newState) |
int | stateValue () |
void | stateValue (int newState) |
Public Member Functions inherited from g4p_controls.GAbstractControl | |
void | addControl (GAbstractControl c) |
void | addControl (GAbstractControl c, float x, float y) |
void | addControl (GAbstractControl c, float x, float y, float angle) |
void | addControls (GAbstractControl... controls) |
void | addEventHandler (Object obj, String methodName) |
void | dispose () |
void | draw () |
void | forceBufferUpdate () |
GAbstractControl (PApplet theApplet) | |
GAbstractControl (PApplet theApplet, float p0, float p1) | |
GAbstractControl (PApplet theApplet, float p0, float p1, float p2, float p3) | |
int | getAlpha () |
int | getCursorOver () |
float | getCX () |
float | getCY () |
float | getHeight () |
int | getLocalColorScheme () |
PApplet | getPApplet () |
GAbstractControl | getParent () |
float | getRotation () |
PGraphics | getSnapshot () |
GToolTip | getTip () |
float | getWidth () |
float | getX () |
float | getY () |
boolean | hasFocus () |
boolean | isDragging () |
boolean | isEnabled () |
boolean | isOpaque () |
boolean | isVisible () |
void | keyEvent (KeyEvent e) |
void | mouseEvent (MouseEvent event) |
void | moveTo (float px, float py) |
void | moveTo (float px, float py, GControlMode mode) |
void | post () |
void | pre () |
void | removeTip () |
boolean | saveSnapshot () |
boolean | saveSnapshot (String filename) |
void | setAlpha (int alpha) |
void | setAlpha (int alpha, boolean includeChildren) |
void | setCursorOver (int cursorOver) |
void | setEnabled (boolean enable) |
void | setFocus (boolean focus) |
void | setLocalColor (int colorNo, int color) |
void | setLocalColorScheme (int cs) |
void | setLocalColorScheme (int cs, boolean includeChildren) |
void | setOpaque (boolean opaque) |
void | setRotation (float angle) |
void | setRotation (float angle, GControlMode mode) |
void | setTip (GToolTip tt, float offset, float angle) |
void | setTip (GToolTip tt, GAlign ax, GAlign ay, float gap) |
void | setTip (String text, float offset, float angle) |
void | setTip (String text, GAlign ax, GAlign ay, float gap) |
void | setTipDisplayTime (long msecs) |
void | setTipEnabled (boolean enable) |
void | setTipHorz (boolean level) |
void | setTipPos (float radius, float ang) |
void | setTipPos (GAlign ax, GAlign ay, float gap) |
void | setTipText (String text) |
void | setVisible (boolean visible) |
String | toString () |
Protected Attributes | |
int | nbrStates = 2 |
PImage[] | offImage |
PImage[] | overImage |
boolean | reportAllButtonEvents = false |
int | stateValue = 0 |
int | status |
Protected Attributes inherited from g4p_controls.GAbstractControl | |
boolean | allowChildren = true |
boolean | allowToolTips = true |
int | alphaLevel = G4P.globalAlpha |
boolean | available = true |
PGraphicsJava2D | buffer = null |
boolean | bufferInvalid = true |
LinkedList< GAbstractControl > | children = null |
int | currSpot = -1 |
int | cursorOver = HAND |
float | cx |
float | cy |
boolean | dragging = false |
boolean | enabled = true |
Method | eventHandlerMethod = null |
String | eventHandlerMethodName |
Object | eventHandlerObject = null |
float | halfHeight |
float | halfWidth |
float | height |
HotSpot[] | hotspots = null |
int | lastSpot = -1 |
int | localColorScheme = G4P.globalColorScheme |
boolean | opaque = false |
float | ox |
float | oy |
Color[] | palette = null |
GAbstractControl | parent = null |
int | registeredMethods = 0 |
float | rotAngle |
double[] | temp = new double[2] |
GToolTip | tip = null |
boolean | visible = true |
float | width |
PApplet | winApp |
float | x |
float | y |
int | z = Z_STICKY |
Additional Inherited Members | |
Public Attributes inherited from g4p_controls.GAbstractControl | |
String | tag = "" |
int | tagNo |
Public Attributes inherited from g4p_controls.GConstants | |
int | ALPHA_BLOCK = 128 |
int | ALPHA_PICK = 48 |
TextAttribute | BACKGROUND = TextAttribute.BACKGROUND |
int | BLUE_SCHEME = 6 |
int | BOLD = Font.BOLD |
int | CANCEL = JOptionPane.CANCEL_OPTION |
int | CLOSE_WINDOW = 0x00000f02 |
int | CLOSED = JOptionPane.CLOSED_OPTION |
int | CTRL_ANGULAR = 0x00000501 |
int | CTRL_HORIZONTAL = 0x00000502 |
int | CTRL_VERTICAL = 0x00000503 |
int | CYAN_SCHEME = 5 |
int | DECIMAL = 1 |
char | END = java.awt.event.KeyEvent.VK_END |
int | ERROR_MESSAGE = JOptionPane.ERROR_MESSAGE |
int | EXIT_APP = 0x00000f01 |
int | EXPONENT = 2 |
TextAttribute | FAMILY = TextAttribute.FAMILY |
TextAttribute | FOREGROUND = TextAttribute.FOREGROUND |
int | FORWARD = 1 |
int | GOLD_SCHEME = 7 |
int | GREEN_SCHEME = 1 |
int | HIDE_WINDOW = 0x00000f04 |
char | HOME = java.awt.event.KeyEvent.VK_HOME |
int | INFO_MESSAGE = JOptionPane.INFORMATION_MESSAGE |
int | INTEGER = 0 |
int | ITALIC = Font.ITALIC |
int | KEEP_OPEN = 0x00000f03 |
int | NO = JOptionPane.NO_OPTION |
int | OK = JOptionPane.OK_OPTION |
int | OK_CANCEL = JOptionPane.OK_CANCEL_OPTION |
int | ORANGE_SCHEME = 4 |
int | ORIENT_LEFT = -1 |
int | ORIENT_RIGHT = 1 |
int | ORIENT_TRACK = 0 |
int | PLAIN = Font.PLAIN |
int | PLAIN_MESSAGE = JOptionPane.PLAIN_MESSAGE |
TextAttribute | POSTURE = TextAttribute.POSTURE |
Float | POSTURE_OBLIQUE = new Float(0.20f) |
Float | POSTURE_REGULAR = new Float(0.0f) |
int | PURPLE_SCHEME = 3 |
int | QUERY_MESSAGE = JOptionPane.QUESTION_MESSAGE |
int | RED_SCHEME = 0 |
int | REVERSE = -1 |
int | SCHEME_10 = 10 |
int | SCHEME_11 = 11 |
int | SCHEME_12 = 12 |
int | SCHEME_13 = 13 |
int | SCHEME_14 = 14 |
int | SCHEME_15 = 15 |
int | SCHEME_8 = 8 |
int | SCHEME_9 = 9 |
int | SCROLLBARS_AUTOHIDE = 0x1000 |
int | SCROLLBARS_BOTH = 0x0003 |
int | SCROLLBARS_HORIZONTAL_ONLY = 0x0002 |
int | SCROLLBARS_NONE = 0x0000 |
int | SCROLLBARS_VERTICAL_ONLY = 0x0001 |
TextAttribute | SIZE = TextAttribute.SIZE |
TextAttribute | STRIKETHROUGH = TextAttribute.STRIKETHROUGH |
Boolean | STRIKETHROUGH_OFF = new Boolean(false) |
Boolean | STRIKETHROUGH_ON = new Boolean(true) |
TextAttribute | SUPERSCRIPT = TextAttribute.SUPERSCRIPT |
Integer | SUPERSCRIPT_OFF = new Integer(0) |
Integer | SUPERSCRIPT_SUB = new Integer(-1) |
Integer | SUPERSCRIPT_SUPER = new Integer(1) |
int | UNDEFINED = Integer.MAX_VALUE |
TextAttribute | UNDERLINE = TextAttribute.UNDERLINE |
int | UNDERLINE_OFF = Integer.valueOf(-1) |
int | UNDERLINE_ON = TextAttribute.UNDERLINE_ON |
int | USER_COL_SCHEME = 0x00010102 |
int | WARN_MESSAGE = JOptionPane.WARNING_MESSAGE |
TextAttribute | WEIGHT = TextAttribute.WEIGHT |
Float | WEIGHT_BOLD = new Float(2.0f) |
Float | WEIGHT_DEMIBOLD = new Float(1.75f) |
Float | WEIGHT_DEMILIGHT = new Float(0.875f) |
Float | WEIGHT_EXTRA_LIGHT = new Float(0.5f) |
Float | WEIGHT_EXTRABOLD = new Float(2.5f) |
Float | WEIGHT_HEAVY = new Float(2.25f) |
Float | WEIGHT_LIGHT = new Float(0.75f) |
Float | WEIGHT_MEDIUM = new Float(1.5f) |
Float | WEIGHT_REGULAR = new Float(1.0f) |
Float | WEIGHT_SEMIBOLD = new Float(1.25f) |
Float | WEIGHT_ULTRABOLD = new Float(2.75f) |
TextAttribute | WIDTH = TextAttribute.WIDTH |
Float | WIDTH_CONDENSED = new Float(0.75f) |
Float | WIDTH_EXTENDED = new Float(1.5f) |
Float | WIDTH_REGULAR = new Float(1.0f) |
Float | WIDTH_SEMI_CONDENSED = new Float(0.875f) |
Float | WIDTH_SEMI_EXTENDED = new Float(1.25f) |
int | X4 = 1 |
int | X8 = 2 |
int | YELLOW_SCHEME = 2 |
int | YES = JOptionPane.YES_OPTION |
int | YES_NO = JOptionPane.YES_NO_OPTION |
int | YES_NO_CANCEL = JOptionPane.YES_NO_CANCEL_OPTION |
Protected Member Functions inherited from g4p_controls.GAbstractControl | |
void | addControlImpl (GAbstractControl c, float x, float y, float angle) |
void | addToParent (GAbstractControl p) |
void | calcTransformedOrigin (float px, float py) |
boolean | controlSupportsToolTips () |
void | createEventHandler (Object handlerObj, String methodName, Class[] param_classes, String[] param_names) |
void | drawChildren () |
void | fireEvent (Object... objects) |
int | focusObjectZ () |
PGraphics | getBuffer () |
int | getCurrHotSpot () |
AffineTransform | getTransform (AffineTransform aff) |
void | hideTip () |
boolean | isAvailable () |
boolean | isDisplayable (int ascii) |
boolean | isSuitableForGroupControl (GAbstractControl control) |
void | loseFocus (GAbstractControl grabber) |
void | makeBuffer () |
void | manageToolTip () |
void | resize (int w, int h) |
void | resize (int w, int h, GControlMode mode) |
void | setAvailable (boolean avail) |
void | setZ (int parentZ) |
void | showTip () |
void | takeFocus () |
void | updateBuffer () |
int | whichHotSpot (float px, float py) |
Static Protected Attributes inherited from g4p_controls.GAbstractControl | |
static GAbstractControl | controlToTakeFocus = null |
static GAbstractControl | cursorIsOver |
static float | epsilon = 0.001f |
static GAbstractControl | focusIsWith = null |
Buttons created from this class have 2 or more toggle states. If the number of states is N then the button's value will be in the range 0 to N-1. Most toggle buttons will have just two states and these have values 0 and 1.
Clicking on the button advances the state by one, restarting at zero after the last state.
Each state must have its own 'picture' and the user must supply these as a tiled image where the pictures are tiled in 1D or 2D arrangement without 'empty space' around the tiles.
If for any reason the library is unable to use the specified graphics then it will provide a default two state toggle switch.
It is also possible to provide an over-button image set for when the mouse moves over the button - this is optional.
The button control will always be resized to suit the state picture size (tile size).
The mouse is considered to be over the button it its position is over an opaque pixel in the state picture. Since transparent pixels are not included then the button shape can be different for each state.
Three types of event can be generated :-
PRESSED RELEASED CLICKED
By default the button only fires the CLICKED event which is typical of most GUIs. G4P supports two other events PRESSED and RELEASED which can be enabled using
button1.fireAllEvents(true);
.
A PRESSED event is created if the mouse button is pressed down over the button face. When the mouse button is released one of two events will be generated, the RELEASED event if the mouse has moved since the PRESSED event or CLICKED event if it has not moved. If you use this feature remember to test the event type in the event-handler.
Note that if you disable the button in its event handler e.g.
If you want the button is disable itself it should only be done on the CLICKED event e.g.
public void handleButtonEvents(GButton button, GEvent event) { if (button == button1 && event == GEvent.CLICKED) { button1.setEnabled(false); } }
do not try this with the RELEASED or PRESSED event as it will lead to inconsistent behaviour.
g4p_controls.GImageToggleButton.GImageToggleButton | ( | PApplet | theApplet, |
float | p0, | ||
float | p1 | ||
) |
Create the library default image-toggle-button at the stated position.
theApplet | the main sketch or GWindow control for this control |
p0 | horizontal position of the control |
p1 | vertical position of the control |
g4p_controls.GImageToggleButton.GImageToggleButton | ( | PApplet | theApplet, |
float | p0, | ||
float | p1, | ||
String | offPicture, | ||
int | nbrCols | ||
) |
Create an image-toggle-button.
Single row of tiles.
theApplet | the main sketch or GWindow control for this control |
p0 | horizontal position of the control |
p1 | vertical position of the control |
offPicture | the filename of bitmap containing toggle state pictures |
nbrCols | number of tiles horizontally |
g4p_controls.GImageToggleButton.GImageToggleButton | ( | PApplet | theApplet, |
float | p0, | ||
float | p1, | ||
String | offPicture, | ||
int | nbrCols, | ||
int | nbrRows | ||
) |
Create an image-toggle-button.
theApplet | the main sketch or GWindow control for this control |
p0 | horizontal position of the control |
p1 | vertical position of the control |
offPicture | the filename of bitmap containing toggle state pictures |
nbrCols | number of tiles horizontally |
nbrRows | number of tiles vertically |
g4p_controls.GImageToggleButton.GImageToggleButton | ( | PApplet | theApplet, |
float | p0, | ||
float | p1, | ||
String | offPicture, | ||
String | overPicture, | ||
int | nbrCols | ||
) |
Create an image-toggle-button.
Single row of tiles.
theApplet | the main sketch or GWindow control for this control |
p0 | horizontal position of the control |
p1 | vertical position of the control |
offPicture | the filename of bitmap containing toggle state pictures |
overPicture | the filename of bitmap containing mouse-over button toggle state pictures |
nbrCols | number of tiles horizontally |
g4p_controls.GImageToggleButton.GImageToggleButton | ( | PApplet | theApplet, |
float | p0, | ||
float | p1, | ||
String | offPicture, | ||
String | overPicture, | ||
int | nbrCols, | ||
int | nbrRows | ||
) |
Create an image-toggle-button.
theApplet | the main sketch or GWindow control for this control |
p0 | horizontal position of the control |
p1 | vertical position of the control |
offPicture | the filename of bitmap containing toggle state pictures |
overPicture | the filename of bitmap containing mouse-over button toggle state pictures |
nbrCols | number of tiles horizontally |
nbrRows | number of tiles vertically |
void g4p_controls.GImageToggleButton.draw | ( | ) |
Reimplemented from g4p_controls.GAbstractControl.
void g4p_controls.GImageToggleButton.fireAllEvents | ( | boolean | all | ) |
If the parameter is true all 3 event types are generated, if false only CLICKED events are generated (default behaviour).
For this toggle control I can't see the need for anything but CLICKED events
all | true if we want all events fired |
int g4p_controls.GImageToggleButton.getState | ( | ) |
Get the current state value of the button.
void g4p_controls.GImageToggleButton.mouseEvent | ( | MouseEvent | event | ) |
When a mouse button is clicked on a GImageToggleButton it generates the GEvent.CLICKED event. If you also want the button to generate GEvent.PRESSED and GEvent.RELEASED events then you need the following statement.
btnName.fireAllEvents(true);
void handleButtonEvents(void handleToggleButtonEvents(GImageToggleButton button, GEvent event) { if(button == btnName && event == GEvent.CLICKED){ int buttonState = btnName.stateValue(); }
Where
btnName
is the GImageToggleButton identifier (variable name)
Reimplemented from g4p_controls.GAbstractControl.
void g4p_controls.GImageToggleButton.setState | ( | int | newState | ) |
Change the current toggle state.
If the parameter is not a valid toggle state value then it is ignored and the button's state value is unchanged.
newState | the new state for this control |
int g4p_controls.GImageToggleButton.stateValue | ( | ) |
void g4p_controls.GImageToggleButton.stateValue | ( | int | newState | ) |
Change the current toggle state.
If the parameter is not a valid toggle state value then it is ignored and the button's state value is unchanged.
newState | the new state for this control |