Package com.iizigo.term.screen
Class ScreenDesigner
java.lang.Object
com.iizigo.term.screen.ScreenDesigner
- All Implemented Interfaces:
- IScreenDesigner,- EventListener,- org.eclipse.swt.events.FocusListener,- org.eclipse.swt.events.KeyListener,- org.eclipse.swt.events.MouseListener,- org.eclipse.swt.events.MouseMoveListener,- org.eclipse.swt.internal.SWTEventListener
public class ScreenDesigner extends Object implements IScreenDesigner, org.eclipse.swt.events.FocusListener, org.eclipse.swt.events.KeyListener, org.eclipse.swt.events.MouseListener, org.eclipse.swt.events.MouseMoveListener
Screen designer interfaces to the TerminalWindow to perform drawing of rectangles and to interface with the mouse and keyboard. Note that the display cannot be drawn correctly if the font size is smaller that 4 pixels vertically or horizontally.
- Author:
- Christopher Mindus
- Field SummaryFields
- Constructor SummaryConstructorsConstructorDescription- ScreenDesigner- (ITermEditor editor) Constructs the instance of the screen designer.
- Method SummaryModifier and TypeMethodDescription- void- assignProperty- (PropCnr propCnr) Assigns the verification property and starts listening to it.- static org.eclipse.swt.widgets.Composite- createHostFieldToolTip- (HostField hostField, org.eclipse.swt.widgets.Composite parent) Creates a tooltip composite for a host field.- void- dispose()Disposes of the designer.- void- drawHandle- (ScreenRectangleInfo rectInfo, int handle, Graphics2D g, Color c, int x, int y, boolean draw) Draws a handle at position.- static int- drawLine- (Graphics2D g, int x1, int y1, int x2, int y2, int type, int phase) Draws a "Business Graphics" line between two points with the current color and the same behavior as for "Java lines".- void- focusGained- (org.eclipse.swt.events.FocusEvent e) Focus gained.- void- focusLost- (org.eclipse.swt.events.FocusEvent e) Focus is lost.- org.eclipse.swt.graphics.RectangleGets the rectangle marking constraints.- int- getMouseHandle- (int x, int y, IScreenRectangle[] returnValue) Gets the mouse handle: -1 when not found, 0 for move, otherwise a size handle.Gets the currently selected properties for rectangles.- boolean- hasMark()Checks if terminal has a mark.- booleanChecks if terminal has a single mark.- booleanCursor present (and blinking)?- booleanCheck for hotspot enabled.- booleanChecks if a rectangle is wrapped.- void- keyPressed- (org.eclipse.swt.events.KeyEvent e) Key pressed.- void- keyReleased- (org.eclipse.swt.events.KeyEvent e) Key released.- void- mouseDoubleClick- (org.eclipse.swt.events.MouseEvent e) Mouse double-click.- void- mouseDown- (org.eclipse.swt.events.MouseEvent e) Mouse pressed.- void- mouseMove- (org.eclipse.swt.events.MouseEvent e) Mouse move.- void- mouseUp- (org.eclipse.swt.events.MouseEvent e) Mouse released.- void- onDoubleClick- (int x, int y) Marks the host field.- void- paint- (Graphics2D g, int leftMargin, int topMargin, int cxFont, int cyFont, int cxFontReal, int cyFontReal, int cxScreen, int cyScreen, org.eclipse.swt.graphics.Rectangle clipRect) Paints the Graphics once the screen is drawn, before the cursor.- void- paintFieldRect- (Graphics2D g, IScreenRectangle r, boolean isSelected, org.eclipse.swt.graphics.Rectangle clipRect, boolean isHostField, int xOffset, int yOffset) Paints a screen rectangle property.- void- setTerminalWindow- (TerminalWindow window) Sets the TerminalWindow at creation of it.
- Field Details- imageObserverThe image observer.
- repainterThe repainter.
 
- Constructor Details- ScreenDesignerConstructs the instance of the screen designer.- Parameters:
- editor- Editor in question.
 
 
- Method Details- setTerminalWindowSets the TerminalWindow at creation of it.- Specified by:
- setTerminalWindowin interface- IScreenDesigner
 
- assignPropertyAssigns the verification property and starts listening to it.- Parameters:
- propCnr- The property container.
 
- disposepublic void dispose()Disposes of the designer.
- focusGainedpublic void focusGained- (org.eclipse.swt.events.FocusEvent e) Focus gained.- Specified by:
- focusGainedin interface- org.eclipse.swt.events.FocusListener
 
- focusLostpublic void focusLost- (org.eclipse.swt.events.FocusEvent e) Focus is lost.- Specified by:
- focusLostin interface- org.eclipse.swt.events.FocusListener
 
- isCursorPresentpublic boolean isCursorPresent()Cursor present (and blinking)?- Specified by:
- isCursorPresentin interface- IScreenDesigner
 
- keyPressedpublic void keyPressed- (org.eclipse.swt.events.KeyEvent e) Key pressed.- Specified by:
- keyPressedin interface- org.eclipse.swt.events.KeyListener
 
- keyReleasedpublic void keyReleased- (org.eclipse.swt.events.KeyEvent e) Key released.- Specified by:
- keyReleasedin interface- org.eclipse.swt.events.KeyListener
 
- mouseDownpublic void mouseDown- (org.eclipse.swt.events.MouseEvent e) Mouse pressed.- Specified by:
- mouseDownin interface- org.eclipse.swt.events.MouseListener
 
- mouseDoubleClickpublic void mouseDoubleClick- (org.eclipse.swt.events.MouseEvent e) Mouse double-click.- Specified by:
- mouseDoubleClickin interface- org.eclipse.swt.events.MouseListener
 
- mouseUppublic void mouseUp- (org.eclipse.swt.events.MouseEvent e) Mouse released.- Specified by:
- mouseUpin interface- org.eclipse.swt.events.MouseListener
 
- mouseMovepublic void mouseMove- (org.eclipse.swt.events.MouseEvent e) Mouse move.- Specified by:
- mouseMovein interface- org.eclipse.swt.events.MouseMoveListener
 
- getMarkingConstraintspublic org.eclipse.swt.graphics.Rectangle getMarkingConstraints()Gets the rectangle marking constraints. This is used for pop-up windows.- Specified by:
- getMarkingConstraintsin interface- IScreenDesigner
- Returns:
- null If no constrains are present.
 
- isHotSpotEnabledpublic boolean isHotSpotEnabled()Check for hotspot enabled.- Specified by:
- isHotSpotEnabledin interface- IScreenDesigner
 
- drawLineDraws a "Business Graphics" line between two points with the current color and the same behavior as for "Java lines".- When not using Java 2, the line will be dotted if horizontal or vertical if the line type is not solid (=). The width will be 1. - If the line is invisible, it won't be drawn! - Valid line types are: - SOLID = 0 ALTERNATE = 1 DOT = 2 SHORTDASH = 3 DASHDOT = 4 DOUBLEDOT = 5 LONGDASH = 6 DASHDOUBLEDOT = 7 INVISIBLE = 8 - Returns:
- the phase of the line style.
 
- paintpublic void paint- (Graphics2D g, int leftMargin, int topMargin, int cxFont, int cyFont, int cxFontReal, int cyFontReal, int cxScreen, int cyScreen, org.eclipse.swt.graphics.Rectangle clipRect) Paints the Graphics once the screen is drawn, before the cursor.- Specified by:
- paintin interface- IScreenDesigner
 
- getSelectedRectPropsGets the currently selected properties for rectangles.- Returns:
- Do not change the returned set (!) as it may be reused or cached for performance reasons.
 
- getMouseHandleGets the mouse handle: -1 when not found, 0 for move, otherwise a size handle. All painted rectangles are checked.- Parameters:
- x- X position, pixel.
- y- Y position, pixel.
- returnValue- Returned screen rectangle in [0].
- Returns:
- -1 for none, otherwise the handle.
 
- paintFieldRectpublic void paintFieldRect- (Graphics2D g, IScreenRectangle r, boolean isSelected, org.eclipse.swt.graphics.Rectangle clipRect, boolean isHostField, int xOffset, int yOffset) Paints a screen rectangle property.
- isWrappedChecks if a rectangle is wrapped.- Parameters:
- r- The rectangle to verify.
- Returns:
- true if wrapping screen.
 
- drawHandlepublic void drawHandle- (ScreenRectangleInfo rectInfo, int handle, Graphics2D g, Color c, int x, int y, boolean draw) Draws a handle at position.
- hasMarkpublic boolean hasMark()Checks if terminal has a mark.- Returns:
- Mark flag.
 
- hasSingleMarkpublic boolean hasSingleMark()Checks if terminal has a single mark.- Returns:
- true if one mark is present.
 
- onDoubleClickpublic void onDoubleClick- (int x, int y) Marks the host field.- Specified by:
- onDoubleClickin interface- IScreenDesigner
 
- createHostFieldToolTippublic static org.eclipse.swt.widgets.Composite createHostFieldToolTip- (HostField hostField, org.eclipse.swt.widgets.Composite parent) Creates a tooltip composite for a host field.