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) |
GButton (PApplet theApplet, float p0, float p1, float p2, float p3) | |
GButton (PApplet theApplet, float p0, float p1, float p2, float p3, String text) | |
void | mouseEvent (MouseEvent event) |
void | setEnabled (boolean enable) |
Public Member Functions inherited from g4p_controls.GTextIconBase | |
GAnimIcon | getIcon () |
GTextIconBase (PApplet theApplet, float p0, float p1, float p2, float p3) | |
void | resizeToFit (boolean horz, boolean vert) |
void | setIcon (GIcon g_icon, GAlign pos, GAlign horz, GAlign vert) |
void | setIcon (PImage img, int nbrImages, GAlign horz, GAlign vert) |
void | setIcon (PImage img, int nbrImages, GAlign pos, GAlign horz, GAlign vert) |
void | setIcon (String fname, int nbrImages) |
void | setIcon (String fname, int nbrImages, GAlign horz, GAlign vert) |
void | setIcon (String fname, int nbrImages, GAlign pos, GAlign horz, GAlign vert) |
void | setIconAlign (GAlign horz, GAlign vert) |
void | setIconPos (GAlign icon_pos) |
void | setText (String text) |
void | setText (String text, GAlign horz, GAlign vert) |
Public Member Functions inherited from g4p_controls.GTextBase | |
void | forceBufferUpdate () |
StyledString | getStyledText () |
String | getText () |
GTextBase (PApplet theApplet, float p0, float p1, float p2, float p3) | |
boolean | loadText (String fname) |
boolean | saveText (String fname) |
void | setFont (Font font) |
void | setStyledText (StyledString ss) |
void | setText (String text) |
void | setText (String text, GAlign horz, GAlign vert) |
void | setTextAlign (GAlign horz, GAlign vert) |
void | setTextBold () |
void | setTextBold (int start, int end) |
void | setTextItalic () |
void | setTextItalic (int start, int end) |
void | setTextPlain () |
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 () |
Static Public Member Functions | |
static void | useRoundCorners (boolean useRoundCorners) |
Protected Member Functions | |
void | updateBuffer () |
Protected Member Functions inherited from g4p_controls.GTextIconBase | |
void | calcZones () |
void | calcZones (boolean hasIcon, boolean hasText) |
void | calcZones (boolean hasText) |
void | setIconImpl (GIcon g_icon, GAlign pos, GAlign horz, GAlign vert) |
Protected Member Functions inherited from g4p_controls.GTextBase | |
void | addAttributeImpl (TextAttribute style, Object value) |
void | addAttributeImpl (TextAttribute style, Object value, int s, int e) |
void | calcTextZone () |
void | displayText (Graphics2D g2d, LinkedList< TextLayoutInfo > lines) |
void | displayText (Graphics2D g2d, LinkedList< TextLayoutInfo > lines, Color fore) |
void | resizeToFit () |
void | resizeToFit (GControlMode mode) |
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) |
Protected Attributes | |
boolean | reportAllButtonEvents = false |
int | status = 0 |
Protected Attributes inherited from g4p_controls.GTextIconBase | |
float | GUTTER = 4 |
GIcon | icon = null |
GAlign | iconAlignH = GAlign.CENTER |
GAlign | iconAlignV = GAlign.MIDDLE |
int | iconH = 0 |
GAlign | iconPos = GAlign.WEST |
int | iconW = 0 |
float | iconX |
float | iconY |
Zone | iconZone = new Zone() |
Protected Attributes inherited from g4p_controls.GTextBase | |
Font | localFont = G4P.displayFont |
float | PAD = 2 |
StyledString | stext = new StyledString("") |
GAlign | textAlignH = GAlign.LEFT |
GAlign | textAlignV = GAlign.MIDDLE |
Zone | textZone = new Zone() |
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 |
Static Protected Attributes inherited from g4p_controls.GAbstractControl | |
static GAbstractControl | controlToTakeFocus = null |
static GAbstractControl | cursorIsOver |
static float | epsilon = 0.001f |
static GAbstractControl | focusIsWith = null |
This class is the Button component.
The button face can have either text or an image or both just pick the right constructor.
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.
The image file can either be a single image which is used for all button states, or be a composite of 3 images (tiled horizontally) which are used for the different button states OFF, OVER and DOWN in which case the image width should be divisible by 3.
A number of setImages(...) methods exist to set button state images, these can be used once the button is created.
g4p_controls.GButton.GButton | ( | PApplet | theApplet, |
float | p0, | ||
float | p1, | ||
float | p2, | ||
float | p3 | ||
) |
New button without text
theApplet | the main sketch or GWindow control for this control |
p0 | x position based on control mode |
p1 | y position based on control mode |
p2 | x position or width based on control mode |
p3 | y position or height based on control mode |
g4p_controls.GButton.GButton | ( | PApplet | theApplet, |
float | p0, | ||
float | p1, | ||
float | p2, | ||
float | p3, | ||
String | text | ||
) |
New button with text
theApplet | the main sketch or GWindow control for this control |
p0 | x position based on control mode |
p1 | y position based on control mode |
p2 | x position or width based on control mode |
p3 | y position or height based on control mode |
text | the button face text |
void g4p_controls.GButton.draw | ( | ) |
Reimplemented from g4p_controls.GAbstractControl.
void g4p_controls.GButton.fireAllEvents | ( | boolean | all | ) |
If the parameter is true all 3 event types PRESSED, RELEASED and CLICKED are generated, if false only CLICKED events are generated (default behaviour).
all | true for all events |
void g4p_controls.GButton.mouseEvent | ( | MouseEvent | event | ) |
When a mouse button is clicked on a GButton 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 handleButtonEvents(GButton button, GEvent event) { if(button == btnName && event == GEvent.CLICKED){ // code for button click event }
Where
btnName
is the GButton identifier (variable name)
Reimplemented from g4p_controls.GAbstractControl.
void g4p_controls.GButton.setEnabled | ( | boolean | enable | ) |
Enable or disable the ability of the component to generate mouse events.
If the control is to be disabled when it is clicked then this will force the mouse off button image is used.
enable | true to enable else false |
Reimplemented from g4p_controls.GAbstractControl.
|
protected |
Reimplemented from g4p_controls.GAbstractControl.
|
static |
By default buttons are created with rounded corners.
This method can be used to change this setting for buttons yet to be created. Note that it does not affect any existing buttons.
useRoundCorners | true for round corners or false for square corners. |