The ScrollViewEventHandler takes care of any events which might happen on the canvas and converts them to an according SVEvent, which is (using the processEvent method) then added to a message queue. All events from the message queue get sent gradually
- Author
- wanke.nosp@m.@goo.nosp@m.gle.c.nosp@m.om
Definition at line 42 of file SVEventHandler.java.
com.google.scrollview.events.SVEventHandler.SVEventHandler |
( |
SVWindow |
wdw | ) |
|
|
inline |
void com.google.scrollview.events.SVEventHandler.actionPerformed |
( |
ActionEvent |
e | ) |
|
|
inline |
The only associated object with this is the timer, so we use it to send a SVET_HOVER event.
Definition at line 227 of file SVEventHandler.java.
229 lastYMove, 0, 0, null));
void com.google.scrollview.events.SVEventHandler.keyPressed |
( |
KeyEvent |
e | ) |
|
|
inline |
A key was pressed - create an SVET_INPUT event.
NOTE: Might be useful to specify hotkeys.
Implementation note: The keyListener provided by Piccolo seems to be broken, so we use the AWT listener directly. There are never any keyTyped events received either so we are stuck with physical keys, which is very ugly.
Definition at line 242 of file SVEventHandler.java.
243 char keyCh = e.getKeyChar();
244 if (keyCh ==
'\r' || keyCh ==
'\n' || keyCh ==
'\0' || keyCh ==
'?') {
246 lastYMove, 0, 0, keyStr));
252 lastYMove, 0, 0, String.valueOf(keyCh)));
void com.google.scrollview.events.SVEventHandler.keyReleased |
( |
KeyEvent |
e | ) |
|
|
inline |
void com.google.scrollview.events.SVEventHandler.keyTyped |
( |
KeyEvent |
e | ) |
|
|
inline |
void com.google.scrollview.events.SVEventHandler.mouseClicked |
( |
PInputEvent |
e | ) |
|
|
inline |
The mouse is clicked - create an SVET_CLICK event.
Definition at line 104 of file SVEventHandler.java.
105 if (e.isPopupTrigger()) {
109 .getPosition().getX(), (
int) e.getPosition().getY(), 0, 0, null));
void com.google.scrollview.events.SVEventHandler.mouseDragged |
( |
PInputEvent |
e | ) |
|
|
inline |
The mouse is getting dragged - create an SVET_MOUSE event.
Definition at line 132 of file SVEventHandler.java.
134 .getPosition().getX(), (
int) e.getPosition().getY(), (
int) e
135 .getPosition().getX()
136 - lastX, (
int) e.getPosition().getY() - lastY, null));
139 if (selection == null) {
140 startX = (int) e.getPosition().getX();
141 startY = (int) e.getPosition().getY();
142 selection = PPath.createRectangle(startX, startY, 1, 1);
143 selection.setTransparency(rubberBandTransparency);
144 svWindow.canvas.getLayer().addChild(selection);
146 int right = Math.max(startX, (int) e.getPosition().getX());
147 int left = Math.min(startX, (int) e.getPosition().getX());
148 int bottom = Math.max(startY, (int) e.getPosition().getY());
149 int top = Math.min(startY, (int) e.getPosition().getY());
150 svWindow.canvas.getLayer().removeChild(selection);
151 selection = PPath.createRectangle(left, top, right - left, bottom - top);
152 selection.setPaint(Color.YELLOW);
153 selection.setTransparency(rubberBandTransparency);
154 svWindow.canvas.getLayer().addChild(selection);
void com.google.scrollview.events.SVEventHandler.mouseEntered |
( |
PInputEvent |
e | ) |
|
|
inline |
The mouse entered the window. Start the timer, which will then emit SVET_HOVER events every X ms.
Definition at line 211 of file SVEventHandler.java.
void com.google.scrollview.events.SVEventHandler.mouseExited |
( |
PInputEvent |
e | ) |
|
|
inline |
The mouse exited the window Stop the timer, so no more SVET_HOVER events will emit.
Definition at line 219 of file SVEventHandler.java.
void com.google.scrollview.events.SVEventHandler.mouseMoved |
( |
PInputEvent |
e | ) |
|
|
inline |
The mouse was moved - create an SVET_MOTION event. NOTE: This obviously creates a lot of traffic and, depending on the type of application, could quite possibly be disabled.
Definition at line 202 of file SVEventHandler.java.
204 .getPosition().getX(), (
int) e.getPosition().getY(), 0, 0, null));
void com.google.scrollview.events.SVEventHandler.mousePressed |
( |
PInputEvent |
e | ) |
|
|
inline |
The mouse key is pressed (and keeps getting pressed). Depending on the OS, show a popup menu (if the button pressed is associated with popup menus, like the RMB under windows&linux) or otherwise save the position (in case it is a selection).
Definition at line 120 of file SVEventHandler.java.
121 if (e.isPopupTrigger()) {
124 lastX = (int) e.getPosition().getX();
125 lastY = (int) e.getPosition().getY();
void com.google.scrollview.events.SVEventHandler.mouseReleased |
( |
PInputEvent |
e | ) |
|
|
inline |
The mouse was released. Depending on the OS, show a popup menu (if the button pressed is associated with popup menus, like the RMB under windows&linux) or otherwise create an SVET_SELECTION event.
Definition at line 165 of file SVEventHandler.java.
166 if (e.isPopupTrigger()) {
170 .getPosition().getX(), (
int) e.getPosition().getY(), (
int) e
171 .getPosition().getX()
172 - lastX, (
int) e.getPosition().getY() - lastY, null));
174 if (selection != null) {
175 svWindow.canvas.getLayer().removeChild(selection);
void com.google.scrollview.events.SVEventHandler.mouseWheelRotated |
( |
PInputEvent |
e | ) |
|
|
inline |
The mouse wheel is used to zoom in and out of the viewport and center on the (x,y) position the mouse is currently on.
Definition at line 185 of file SVEventHandler.java.
186 PCamera lc = svWindow.canvas.getCamera();
189 if (e.getWheelRotation() < 0) {
192 lc.scaleViewAboutPoint(lc.getScale() / sf, e.getPosition().getX(), e
193 .getPosition().getY());
static final double SCALING_FACTOR
void com.google.scrollview.events.SVEventHandler.windowActivated |
( |
WindowEvent |
e | ) |
|
|
inline |
void com.google.scrollview.events.SVEventHandler.windowClosed |
( |
WindowEvent |
e | ) |
|
|
inline |
void com.google.scrollview.events.SVEventHandler.windowClosing |
( |
WindowEvent |
e | ) |
|
|
inline |
A window is closed (by the 'x') - create an SVET_DESTROY event. If it was the last open Window, also send an SVET_EXIT event (but do not exit unless the client says so).
Definition at line 262 of file SVEventHandler.java.
264 lastYMove, 0, 0, null));
265 e.getWindow().dispose();
266 SVWindow.nrWindows--;
267 if (SVWindow.nrWindows == 0) {
269 lastYMove, 0, 0, null));
void com.google.scrollview.events.SVEventHandler.windowDeactivated |
( |
WindowEvent |
e | ) |
|
|
inline |
void com.google.scrollview.events.SVEventHandler.windowDeiconified |
( |
WindowEvent |
e | ) |
|
|
inline |
void com.google.scrollview.events.SVEventHandler.windowIconified |
( |
WindowEvent |
e | ) |
|
|
inline |
void com.google.scrollview.events.SVEventHandler.windowOpened |
( |
WindowEvent |
e | ) |
|
|
inline |
Timer com.google.scrollview.events.SVEventHandler.timer |
Necessary to wait for a defined period of time (for SVET_HOVER).
Definition at line 46 of file SVEventHandler.java.
The documentation for this class was generated from the following file: