G4P (GUI for Processing) 4.3.11
A set of GUI controls for your Processing sketch.
|
Public Member Functions | |
void | addControl (GAbstractControl c) |
void | addControl (GAbstractControl c, float x, float y) |
void | addControl (GAbstractControl c, float x, float y, float angle) |
void | addControl (int pos, GAbstractControl c) |
void | addControls (GAbstractControl... controls) |
void | addControls (int pos, GAbstractControl... controls) |
void | draw () |
boolean | fitsScreen (GAlign align) |
GControlPalette (PApplet theApplet, GIcon g_icon, GAlign align, float x, float y) | |
void | mouseEvent (MouseEvent event) |
boolean | remove (GAbstractControl c) |
GAbstractControl | remove (int idx) |
void | setAlign (GAlign align) |
void | setBorder (float weight, float radii) |
void | setPadding (int pad) |
void | setPrefAlign (GAlign align) |
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 Member Functions | |
void | adjustAlignment () |
boolean | isValid (GAlign align) |
void | updateBuffer () |
void | updateControlPositions () |
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 | |
float | bdrCorner = 4 |
float | bdrWeight = 1 |
boolean | beingDragged = false |
GAlign | currAlign |
GIcon | icon |
int | padding = 3 |
GAlign | prefAlign |
float | rH |
boolean | rVisible = false |
float | rW |
float | rX |
float | rY |
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 |
Static Protected Attributes | |
static int | PALETTE = 1 |
static int | TAB = 0 |
Static Protected Attributes inherited from g4p_controls.GAbstractControl | |
static GAbstractControl | controlToTakeFocus = null |
static GAbstractControl | cursorIsOver |
static float | epsilon = 0.001f |
static GAbstractControl | focusIsWith = null |
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 |
The control has a central tab (a GIcon or GAnimIcon) and when the mouse is over it one or more G4P controls will appear in a straight line radially from the tab, this is called the palette.
The palette can appear on any side of the tab (i.e. north, south east or west) and the user specifies the preferred alignment when the control is created.
The user can move the control by dragging the tab with the mouse.
The preferred alignment will always be used provided it fits on the screen, if it doesn't then the control will use the opposite alignment if that can be displayed fully.
This control was based on an idea by mala 2020
g4p_controls.GControlPalette.GControlPalette | ( | PApplet | theApplet, |
GIcon | g_icon, | ||
GAlign | align, | ||
float | x, | ||
float | y | ||
) |
Construct a control palette object.
theApplet | the window responsible for drawing the control. |
icon | a simple or animated icon for the tab |
align | the preferred direction of the palette |
x | the tab horizontal position (uses icon centre) |
y | the tab vertical position (uses icon centre) |
void g4p_controls.GControlPalette.addControl | ( | GAbstractControl | c | ) |
Attempts to add a control to the end of the palette. If the position is invalid then it is silently ignored.
c | the control to add |
Reimplemented from g4p_controls.GAbstractControl.
void g4p_controls.GControlPalette.addControl | ( | GAbstractControl | c, |
float | x, | ||
float | y | ||
) |
This method is ignored for GControlPalette
Reimplemented from g4p_controls.GAbstractControl.
void g4p_controls.GControlPalette.addControl | ( | GAbstractControl | c, |
float | x, | ||
float | y, | ||
float | angle | ||
) |
This method is ignored for GControlPalette
Reimplemented from g4p_controls.GAbstractControl.
void g4p_controls.GControlPalette.addControl | ( | int | pos, |
GAbstractControl | c | ||
) |
Attempts to insert a control at a given index position. If the position is invalid or the control is a duplicate then it is silently ignored.
Duplicates are ignored.
pos | must be ≥0 and ≤number of controls already present |
c | the control to add |
void g4p_controls.GControlPalette.addControls | ( | GAbstractControl... | controls | ) |
Attempts to add one or more controls to the end of the palette. If the position is invalid or the control is a duplicate then it is silently ignored.
controls | the controls to add |
Reimplemented from g4p_controls.GAbstractControl.
void g4p_controls.GControlPalette.addControls | ( | int | pos, |
GAbstractControl... | controls | ||
) |
Attempts to add one or more controls to the end of the palette. If the position is invalid or the control is a duplicate then it is silently ignored.
pos | |
controls | the controls to add |
|
protected |
Will change the current alignment to the preferred alignment if it can be displayed fully on screen. If not it will attempt to use the opposite alignment.
void g4p_controls.GControlPalette.draw | ( | ) |
Draw the icon and is the mouse is over it draw the palette..
Reimplemented from g4p_controls.GAbstractControl.
boolean g4p_controls.GControlPalette.fitsScreen | ( | GAlign | align | ) |
See if the control fits inside the window based if it's current alignment is the same as passed in the parameter.
align |
|
protected |
Valid alignments are either NORTH, SOUTH, EAST or WEST
align | the alignment to test |
void g4p_controls.GControlPalette.mouseEvent | ( | MouseEvent | event | ) |
Reimplemented from g4p_controls.GAbstractControl.
boolean g4p_controls.GControlPalette.remove | ( | GAbstractControl | c | ) |
Removes a control from the palette. If successful the control will unlinked from the palette and made invisible but not disposed of.
If the control is no longer needed then use the
control.dispose()
method after removal.
c | the control to remove |
GAbstractControl g4p_controls.GControlPalette.remove | ( | int | idx | ) |
Removes a control from the palette at a given index position. If successful the control will unlinked from the palette and made invisible but not disposed of.
If the control is no longer needed then use the
control.dispose()
method after removal.
The index will be 0 (zero) for the control nearest the tab no matter what alignment is in effect.
idx | the control's index position |
void g4p_controls.GControlPalette.setAlign | ( | GAlign | align | ) |
Set the current palette alignment. The preferred alignment is unchanged.
align | the current alignment to use. |
void g4p_controls.GControlPalette.setBorder | ( | float | weight, |
float | radii | ||
) |
Set the border weight and the corner radii to apply. The border must be at least 1 pixel so you can see the palette area limits. A radii value of 0 will result in square corners.
weight | must be ≥1 |
radii | must be ≥0 |
void g4p_controls.GControlPalette.setPadding | ( | int | pad | ) |
Set the padding round each control. Default is 3
pad | must be ≥2 |
void g4p_controls.GControlPalette.setPrefAlign | ( | GAlign | align | ) |
Set the preferred alignment for the palette.
If the palette does not fit the screen then it will not be shown until the control is moved to a position it can be seen.
align | the new preferred alignment |
|
protected |
Reimplemented from g4p_controls.GAbstractControl.
|
protected |
Recalculate the control positions after a change of palette alignment or when a control is added to or removed from the palette.