Game Control Plus
1.2.2
|
Classes | |
class | WindowAdapterAWT |
class | WindowAdapterNEWT |
Public Member Functions | |
void | addData (MWinData data) |
void | draw () |
void | pre () |
void | post () |
void | mouseEvent (MouseEvent event) |
void | keyEvent (KeyEvent event) |
void | addDrawHandler (Object obj, String methodName) |
void | addPreHandler (Object obj, String methodName) |
void | addMouseHandler (Object obj, String methodName) |
void | addKeyHandler (Object obj, String methodName) |
void | addPostHandler (Object obj, String methodName) |
void | addOnCloseHandler (Object obj, String methodName) |
abstract void | close () |
abstract void | forceClose () |
abstract void | setActionOnClose (int action) |
void | settings () |
void | setup () |
void | performCloseAction () |
Static Public Member Functions | |
static MWindow | getWindow (PApplet app, String title, int px, int py, int w, int h, String renderer) |
Public Attributes | |
MWinData | data |
LinkedList< MAbstractControl > | windowControls = new LinkedList<MAbstractControl>() |
LinkedList< MAbstractControl > | toRemove = new LinkedList<MAbstractControl>() |
LinkedList< MAbstractControl > | toAdd = new LinkedList<MAbstractControl>() |
Public Attributes inherited from org.gamecontrolplus.gui.MConstants | |
int | RED_SCHEME = 0 |
int | GREEN_SCHEME = 1 |
int | YELLOW_SCHEME = 2 |
int | PURPLE_SCHEME = 3 |
int | ORANGE_SCHEME = 4 |
int | CYAN_SCHEME = 5 |
int | BLUE_SCHEME = 6 |
int | GOLD_SCHEME = 7 |
int | SCHEME_8 = 8 |
int | SCHEME_9 = 9 |
int | SCHEME_10 = 10 |
int | SCHEME_11 = 11 |
int | SCHEME_12 = 12 |
int | SCHEME_13 = 13 |
int | SCHEME_14 = 14 |
int | SCHEME_15 = 15 |
char | HOME = java.awt.event.KeyEvent.VK_HOME |
char | END = java.awt.event.KeyEvent.VK_END |
int | CTRL_ANGULAR = 0x00000501 |
int | CTRL_HORIZONTAL = 0x00000502 |
int | CTRL_VERTICAL = 0x00000503 |
int | EXIT_APP = 0x00000f01 |
int | CLOSE_WINDOW = 0x00000f02 |
int | KEEP_OPEN = 0x00000f03 |
int | USER_COL_SCHEME = 0x00010102 |
int | ALPHA_BLOCK = 128 |
int | ALPHA_PICK = 48 |
int | SCROLLBARS_NONE = 0x0000 |
int | SCROLLBARS_VERTICAL_ONLY = 0x0001 |
int | SCROLLBARS_HORIZONTAL_ONLY = 0x0002 |
int | SCROLLBARS_BOTH = 0x0003 |
int | SCROLLBARS_AUTOHIDE = 0x1000 |
int | SCROLLBAR_VERTICAL = 1 |
int | SCROLLBAR_HORIZONTAL = 2 |
int | INTEGER = 0 |
int | DECIMAL = 1 |
int | EXPONENT = 2 |
int | ORIENT_LEFT = -1 |
int | ORIENT_TRACK = 0 |
int | ORIENT_RIGHT = 1 |
int | X4 = 1 |
int | X8 = 2 |
int | PLAIN = JOptionPane.PLAIN_MESSAGE |
int | ERROR = JOptionPane.ERROR_MESSAGE |
int | INFO = JOptionPane.INFORMATION_MESSAGE |
int | WARNING = JOptionPane.WARNING_MESSAGE |
int | QUERY = JOptionPane.QUESTION_MESSAGE |
int | YES_NO = JOptionPane.YES_NO_OPTION |
int | YES_NO_CANCEL = JOptionPane.YES_NO_CANCEL_OPTION |
int | OK_CANCEL = JOptionPane.OK_CANCEL_OPTION |
int | OK = JOptionPane.OK_OPTION |
int | YES = JOptionPane.YES_OPTION |
int | NO = JOptionPane.NO_OPTION |
int | CANCEL = JOptionPane.CANCEL_OPTION |
int | CLOSED = JOptionPane.CLOSED_OPTION |
TextAttribute | FAMILY = TextAttribute.FAMILY |
TextAttribute | WEIGHT = TextAttribute.WEIGHT |
Float | WEIGHT_EXTRA_LIGHT = new Float(0.5f) |
Float | WEIGHT_LIGHT = new Float(0.75f) |
Float | WEIGHT_DEMILIGHT = new Float(0.875f) |
Float | WEIGHT_REGULAR = new Float(1.0f) |
Float | WEIGHT_SEMIBOLD = new Float(1.25f) |
Float | WEIGHT_MEDIUM = new Float(1.5f) |
Float | WEIGHT_DEMIBOLD = new Float(1.75f) |
Float | WEIGHT_BOLD = new Float(2.0f) |
Float | WEIGHT_HEAVY = new Float(2.25f) |
Float | WEIGHT_EXTRABOLD = new Float(2.5f) |
Float | WEIGHT_ULTRABOLD = new Float(2.75f) |
TextAttribute | WIDTH = TextAttribute.WIDTH |
Float | WIDTH_CONDENSED = new Float(0.75f) |
Float | WIDTH_SEMI_CONDENSED = new Float(0.875f) |
Float | WIDTH_REGULAR = new Float(1.0f) |
Float | WIDTH_SEMI_EXTENDED = new Float(1.25f) |
Float | WIDTH_EXTENDED = new Float(1.5f) |
TextAttribute | POSTURE = TextAttribute.POSTURE |
Float | POSTURE_REGULAR = new Float(0.0f) |
Float | POSTURE_OBLIQUE = new Float(0.20f) |
TextAttribute | SIZE = TextAttribute.SIZE |
TextAttribute | SUPERSCRIPT = TextAttribute.SUPERSCRIPT |
Integer | SUPERSCRIPT_SUPER = new Integer(1) |
Integer | SUPERSCRIPT_SUB = new Integer(-1) |
Integer | SUPERSCRIPT_OFF = new Integer(0) |
TextAttribute | FOREGROUND = TextAttribute.FOREGROUND |
TextAttribute | BACKGROUND = TextAttribute.BACKGROUND |
TextAttribute | STRIKETHROUGH = TextAttribute.STRIKETHROUGH |
Boolean | STRIKETHROUGH_ON = new Boolean(true) |
Boolean | STRIKETHROUGH_OFF = new Boolean(false) |
Public Attributes inherited from org.gamecontrolplus.gui.MConstantsInternal | |
String | SLIDER_STYLES = "|grey_blue|blue18px|green_red20px|purple18px|red_yellow18px|" |
String | DEFAULT_SLIDER_STYLE = "grey_blue" |
int | DRAW_METHOD = 0x00000001 |
int | MOUSE_METHOD = 0x00000002 |
int | PRE_METHOD = 0x00000004 |
int | KEY_METHOD = 0x00000008 |
int | POST_METHOD = 0x00000010 |
int | ALL_METHOD = 0x0000001f |
int | RUNTIME_ERROR = 0xf0000000 |
int | MISSING = 0x01000001 |
int | NONEXISTANT = 0x01000002 |
int | EXCP_IN_HANDLER = 0x81000003 |
int | OFF_CONTROL = 0 |
int | OVER_CONTROL = 1 |
int | PRESS_CONTROL = 2 |
int | DRAG_CONTROL = 3 |
int | TINT_FOR_ALPHA = 255 |
int | I_NONE = 0 |
int | I_TL = 1 |
int | I_TR = 2 |
int | I_CL = 4 |
int | I_CR = 8 |
int | I_INSIDE = 16 |
int | I_COVERED = 32 |
int | I_MODES = 63 |
int | MERGE_RUNS = 256 |
int | CLIP_RUN = 512 |
int | COMBI_MODES = 768 |
int[][] | grid |
BasicStroke | pen_1_0 = new BasicStroke(1, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND) |
BasicStroke | pen_2_0 = new BasicStroke(2, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND) |
BasicStroke | pen_3_0 = new BasicStroke(3, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND) |
BasicStroke | pen_4_0 = new BasicStroke(4, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND) |
Protected Member Functions | |
MWindow (String title, int w, int h) | |
void | registerMethods () |
void | unregisterMethods () |
void | addToWindow (MAbstractControl control) |
void | removeFromWindow (MAbstractControl control) |
abstract void | initListeners () |
Protected Attributes | |
int | actionOnClose = KEEP_OPEN |
final int | w |
final String | title |
String | renderer_type |
Object | preHandlerObject = null |
Method | preHandlerMethod = null |
String | preHandlerMethodName |
Object | postHandlerObject = null |
Method | postHandlerMethod = null |
String | postHandlerMethodName |
Object | drawHandlerObject = null |
Method | drawHandlerMethod = null |
String | drawHandlerMethodName |
Object | keyHandlerObject = null |
Method | keyHandlerMethod = null |
String | keyHandlerMethodName |
Object | mouseHandlerObject = null |
Method | mouseHandlerMethod = null |
String | mouseHandlerMethodName |
Object | closeHandlerObject = null |
Method | closetHandlerMethod = null |
String | closetHandlerMethodName |
boolean | is3D |
Package Functions | |
void | setColorScheme (int cs) |
void | setAlpha (int alpha) |
Package Attributes | |
final int | h |
Objects of this class are separate windows which can be used to hold M4P GUI components or used for drawing or both combined.
A number of examples are included in the library and can be found at www.lagers.org.uk
void org.gamecontrolplus.gui.MWindow.addData | ( | MWinData | data | ) |
To provide a unique fields for this window create a class that inherits from MWinData with public access fields. Then use this method to associate the data with this window.
data |
void org.gamecontrolplus.gui.MWindow.addDrawHandler | ( | Object | obj, |
String | methodName | ||
) |
Attempt to add the 'draw' handler method. The default event handler is a method that returns void and has two parameters PApplet and MWinData
obj | the object to handle the event |
methodName | the method to execute in the object handler class |
void org.gamecontrolplus.gui.MWindow.addKeyHandler | ( | Object | obj, |
String | methodName | ||
) |
Attempt to add the 'key' handler method. The default event handler is a method that returns void and has three parameters GWinApplet, MWinData and a KeyEvent
obj | the object to handle the event |
methodName | the method to execute in the object handler class |
void org.gamecontrolplus.gui.MWindow.addMouseHandler | ( | Object | obj, |
String | methodName | ||
) |
Attempt to add the 'mouse' handler method. The default event handler is a method that returns void and has three parameters GWinApplet, MWinData and a MouseEvent
obj | the object to handle the event |
methodName | the method to execute in the object handler class |
void org.gamecontrolplus.gui.MWindow.addOnCloseHandler | ( | Object | obj, |
String | methodName | ||
) |
Attempt to create the on-close-window event handler for this MWindow. The default event handler is a method that returns void and has a single parameter of type MWindow (this will be a reference to the window that is closing)
The handler will not be called</> if the setActionOnClose flag is set to EXIT_APP
If the flag is set to CLOSE_WINDOW then the handler is called when the window is closed by clicking on the window-close-icon or using either the close or forceClose methods.
If the flag is set to KEEP_OPEN the window can only be closed using the forceClose method. In this case the handler will be called.
obj | the object to handle the on-close-window event |
methodName | the method to execute in the object handler class |
void org.gamecontrolplus.gui.MWindow.addPostHandler | ( | Object | obj, |
String | methodName | ||
) |
Attempt to add the 'post' handler method. The default event handler is a method that returns void and has two parameters GWinApplet and MWinData
obj | the object to handle the event |
methodName | the method to execute in the object handler class |
void org.gamecontrolplus.gui.MWindow.addPreHandler | ( | Object | obj, |
String | methodName | ||
) |
Attempt to add the 'pre' handler method. The default event handler is a method that returns void and has two parameters GWinApplet and MWinData
obj | the object to handle the event |
methodName | the method to execute in the object handler class |
|
protected |
Add a control to this window, ignoring duplicates.
control | control to be added |
|
pure virtual |
This will close the window provided the action-on-close flag is CLOSE_WINDOW otherwise the window remains open.
Implemented in org.gamecontrolplus.gui.MWindowNEWT, and org.gamecontrolplus.gui.MWindowAWT.
void org.gamecontrolplus.gui.MWindow.draw | ( | ) |
Execute any draw handler for this window.
|
pure virtual |
This will close the window provided the action-on-close flag is CLOSE_WINDOW or KEEP_OPEN otherwise the window remains open.
Implemented in org.gamecontrolplus.gui.MWindowNEWT, and org.gamecontrolplus.gui.MWindowAWT.
|
static |
Factory method to create and start a new window. The renderer must be JAVA2D, P2D or P3D otherwise this method returns null.
title | text to appear in frame title bar |
px | horizontal position of top-left corner |
py | vertical position of top-left corner |
w | width of drawing surface |
h | height of surface |
r | renderer must be JAVA2D, P3D or P3D |
|
protectedpure virtual |
Set up the 'window' listeners
Implemented in org.gamecontrolplus.gui.MWindowNEWT, and org.gamecontrolplus.gui.MWindowAWT.
void org.gamecontrolplus.gui.MWindow.keyEvent | ( | KeyEvent | event | ) |
Execute any key event handler associated with this window and its controls
void org.gamecontrolplus.gui.MWindow.mouseEvent | ( | MouseEvent | event | ) |
Execute any mouse event handler associated with this window and its controls
void org.gamecontrolplus.gui.MWindow.performCloseAction | ( | ) |
This method is executed when the window closes. It will call the user defined on-close-handler method set with
void org.gamecontrolplus.gui.MWindow.post | ( | ) |
Execute any post handler associated with this window and its controls.
Add/remove any controls request by user, this is done here outside the drawing phase to prevent crashes.
void org.gamecontrolplus.gui.MWindow.pre | ( | ) |
Execute any pre handler associated with this window and its controls
|
protected |
Register this window for pre, draw, post, mouseEvent and keyEvent methods.
|
protected |
Remove a control to this window.
control | control to be removed |
|
pure virtual |
This sets what happens when the users attempts to close the window.
There are 3 possible actions depending on the value passed.
MWindow.KEEP_OPEN - ignore attempt to close window (default action)
MWindow.CLOSE_WINDOW - close this window, if it is the main window it causes the app to exit
MWindow.EXIT_APP - exit the app, this will cause all windows to close.
action | the required close action |
Implemented in org.gamecontrolplus.gui.MWindowNEWT, and org.gamecontrolplus.gui.MWindowAWT.
|
package |
Set the alpha level for all controls on this window.
0 = fully transparent
255 = fully opaque
Controls are disabled when alpha gets below M4P.ALPHA_BLOCK (128)
alpha | 0-255 inclusive |
|
package |
Set the colour scheme to be used by all controls on this window.
cs | colour scheme e.g. M4P.GREEN_SCHEME |
|
protected |
Unregister this window for pre, draw, post, mouseEvent and keyEvent methods. This method is called when the window closes.
|
protected |
The object to handle the window closing event
|
protected |
The method in closeHandlerObject to execute
|
protected |
the name of the method to handle the event
|
protected |
The method in drawHandlerObject to execute
|
protected |
the name of the method to handle the event
|
protected |
The object to handle the draw event
|
protected |
The method in keyHandlerObject to execute
|
protected |
the name of the method to handle the event
|
protected |
The object to handle the key event
|
protected |
The method in mouseHandlerObject to execute
|
protected |
the name of the method to handle the event
|
protected |
The object to handle the mouse event
|
protected |
The method in postHandlerObject to execute
|
protected |
the name of the method to handle the event
|
protected |
The object to handle the post event
|
protected |
The method in preHandlerObject to execute
|
protected |
the name of the method to handle the event
|
protected |
The object to handle the pre event