Inheritance diagram for MultiViewer::

Public Methods | |
| MultiViewer (int x, int y) | |
| Construct a viewer with x times y viewports. More... | |
| int | getMode () |
| Get the viewer mode (see class ViewerMode). More... | |
| int | getSubMode () |
| Get the viewer sub-mode (see class ViewerMode). More... | |
| void | setMode (int mode, int subMode) |
| Set the viewer mode (see class ViewerMode) for all viewers. More... | |
| boolean | isEnabledMode (int mode) |
| Check whether the given viewer mode (see class ViewerMode) is enabled. More... | |
| void | setEnableMode (int mode, boolean b) |
| Set whether the given viewer mode (see class ViewerMode) is enabled. More... | |
| Color | getDefaultDrawColor () |
| Get the default drawing color of the active viewer. More... | |
| Color | getDefaultDrawColor (int viewID) |
| Get the default drawing color of the given viewer. More... | |
| void | setDefaultDrawColor (Color c) |
| Set the default drawing color of all viewers. More... | |
| void | setDefaultDrawColor (Color c, int viewID) |
| Set the default drawing color of the given viewer. More... | |
| Color | getBackgroundColor () |
| Get the background color of the active viewer. More... | |
| Color | getBackgroundColor (int viewID) |
| Get the background color of the given viewer. More... | |
| void | setBackgroundColor (Color c) |
| Set the background color of all viewers. More... | |
| void | setBackgroundColor (Color c, int viewID) |
| Set the background color of the given viewer. More... | |
| int | nrOfViewers () |
| Returns the number of viewers in the MultiViewer. More... | |
| boolean | validViewer (int viewID) |
| Indicate whether the given ID belongs to one of the viewers. More... | |
| int | getActiveViewer () |
| Get the ID of the active viewer. More... | |
| void | setActiveViewer (int viewID) |
| Set the active viewer. More... | |
| void | addViewerListener (ViewerListener l) |
| Add a viewer listener. More... | |
| void | removeViewerListener (ViewerListener l) |
| Remove a viewer listener. More... | |
| void | doClear () |
| Clear all viewers. More... | |
| void | doClear (int viewID) |
| Clear the given viewer. More... | |
| Image | toImage (int viewID) |
| Render the canvas of the viewer in an image. More... | |
| int | addObject (CanvasObject obj, int viewID) |
| Add a CanvasObject to the viewer. More... | |
| CanvasObject | getObject (int objID, int viewID) |
| Get the CanvasObject with the given index. More... | |
| CanvasObject | getObjectCopy (int objID, int viewID, boolean ics) |
| Get a copy of the CanvasObject with the given index. More... | |
| void | removeObject (int objID, int viewID) |
| Remove given object from the viewer. More... | |
| void | mousePressed (MouseEvent e) |
| Implementation of MouseListener interface. More... | |
| void | mouseReleased (MouseEvent e) |
| Implementation of MouseListener interface. More... | |
| void | mouseClicked (MouseEvent e) |
| void | mouseEntered (MouseEvent e) |
| void | mouseExited (MouseEvent e) |
| void | viewerSelected (ViewerEvent e) |
| Implementation of ViewerListener interface. More... | |
| void | objectSelected (ViewerEvent e) |
| Implementation of ViewerListener interface. More... | |
| void | viewerEntered (ViewerEvent e) |
| Implementation of ViewerListener interface. More... | |
| void | viewerExited (ViewerEvent e) |
| void | objectEntered (ViewerEvent e) |
| void | objectProbed (ViewerEvent e) |
| void | objectCreated (ViewerEvent e) |
| void | objectDeleted (ViewerEvent e) |
| void | objectMoved (ViewerEvent e) |
| void | objectResized (ViewerEvent e) |
| void | objectReshaped (ViewerEvent e) |
| void | objectChangedVisually (ViewerEvent e) |
| void | buttonPressed (ButtonBarEvent e) |
| Implementation of ButtonBarListener. More... | |
| void | viewerModeChanged (ViewerModeEvent e) |
| Implementation of ViewerModeListener. More... | |
| void | copyObjectAcrossViewer (int objID, int source, int dest) |
| void | handleViewerDialogClear (int viewID) |
| Implementation of ViewerDialogUser. More... | |
| void | handleViewerDialogDone () |
| Implementation of ViewerDialogUser. More... | |
| void | handleViewerDialogPointed (int viewID, double x, double y) |
| Implementation of ViewerDialogUser. More... | |
| void | handleViewerDialogSelected (int viewID) |
| Implementation of ViewerDialogUser. More... | |
| void | handleViewerDialogZoomed (int viewID, double zoomVal) |
| Implementation of ViewerDialogUser. More... | |
| void | handleViewerDialogBackColor (int viewID, Color c) |
| Implementation of ViewerDialogUser. More... | |
| void | handleViewerDialogDrawColor (int viewID, Color c) |
| Implementation of ViewerDialogUser. More... | |
| void | handleZoomed (double zoomVal) |
| Implementation of ZoomerUser. More... | |
Basically, a MultiViewer consists of a set of SimpleViewers. The additional interface components (such as the Zoomer) apply to all viewers. However, the included ViewerDialog allows for manipulation of a single viewer at a time.
|
||||||||||||
|
Construct a viewer with x times y viewports.
00044 {
00045 doInit(x, y);
00046 }
|
|
|
Get the viewer mode (see class ViewerMode).
00052 {
00053 return getViewer(activeViewer).getMode();
00054 }
|
|
|
Get the viewer sub-mode (see class ViewerMode).
00060 {
00061 return getViewerIndex(activeViewer).getSubMode();
00062 }
|
|
||||||||||||
|
Set the viewer mode (see class ViewerMode) for all viewers.
00068 {
00069 for (int i=0; i<nrOfViewers(); i++)
00070 getViewerIndex(i).setMode(mode, subMode);
00071 vcb.setMode(mode, subMode);
00072 }
|
|
|
Check whether the given viewer mode (see class ViewerMode) is enabled.
00078 {
00079 return vcb.isEnabledMode(mode);
00080 }
|
|
||||||||||||
|
Set whether the given viewer mode (see class ViewerMode) is enabled.
00086 {
00087 vcb.setEnableMode(mode, b);
00088 }
|
|
|
Get the default drawing color of the active viewer.
00094 {
00095 return getViewerIndex(activeViewer).getDefaultDrawColor();
00096 }
|
|
|
Get the default drawing color of the given viewer.
00102 {
00103 return getViewer(viewID).getDefaultDrawColor();
00104 }
|
|
|
Set the default drawing color of all viewers.
00110 {
00111 for (int i=0; i<nrOfViewers(); i++)
00112 getViewerIndex(i).setDefaultDrawColor(c);
00113 }
|
|
||||||||||||
|
Set the default drawing color of the given viewer.
00119 {
00120 getViewer(viewID).setDefaultDrawColor(c);
00121 }
|
|
|
Get the background color of the active viewer.
00127 {
00128 return getViewerIndex(activeViewer).getBackgroundColor();
00129 }
|
|
|
Get the background color of the given viewer.
00135 {
00136 return getViewer(viewID).getBackgroundColor();
00137 }
|
|
|
Set the background color of all viewers.
00143 {
00144 for (int i=0; i<nrOfViewers(); i++)
00145 getViewerIndex(i).setBackgroundColor(c);
00146 }
|
|
||||||||||||
|
Set the background color of the given viewer.
00152 {
00153 getViewer(viewID).setBackgroundColor(c);
00154 }
|
|
|
Returns the number of viewers in the MultiViewer.
00160 {
00161 return sViewer.length;
00162 }
|
|
|
Indicate whether the given ID belongs to one of the viewers.
00168 {
00169 for (int i=0 ; i<viewerIDs.length ; i++)
00170 if (viewerIDs[i] == viewID)
00171 return true;
00172 return false;
00173 }
|
|
|
Get the ID of the active viewer.
00187 {
00188 return activeViewer;
00189 }
|
|
|
Set the active viewer.
00195 {
00196 activeViewer = viewID;
00197 for (int i=0; i<vLabel.length; i++) {
00198 if (viewerIDs[i] == viewID) {
00199 vLabel[i].setBackground(SystemColor.activeCaption);
00200 // vLabel[i].setForeground(SystemColor.activeCaptionText);
00201 vLabel[i].setForeground(Color.red);
00202 } else {
00203 vLabel[i].setBackground(SystemColor.inactiveCaption);
00204 vLabel[i].setForeground(SystemColor.inactiveCaptionText);
00205 }
00206 }
00207 }
|
|
|
Add a viewer listener.
00213 {
00214 listeners.addElement(l);
00215 for (int i=0; i<nrOfViewers(); i++)
00216 getViewerIndex(i).addViewerListener(l);
00217 }
|
|
|
Remove a viewer listener.
00223 {
00224 listeners.removeElement(l);
00225 for (int i=0; i<nrOfViewers(); i++)
00226 getViewerIndex(i).removeViewerListener(l);
00227 }
|
|
|
Clear all viewers.
00233 {
00234 for (int i=0; i<nrOfViewers(); i++)
00235 getViewerIndex(i).doClear();
00236 }
|
|
|
Clear the given viewer.
00242 {
00243 getViewer(viewID).doClear();
00244 if (viewDialog.getViewerID() == viewID)
00245 updateViewerDialog(viewID);
00246 }
|
|
|
Render the canvas of the viewer in an image.
00252 {
00253 return getViewer(viewID).toImage();
00254 }
|
|
||||||||||||
|
Add a CanvasObject to the viewer. Returns the index of the object. The index is the preferred way to access objects in a viewer as direct references to objects may become invalid due to internal activities of the viewer.
00263 {
00264 int id = getViewer(viewID).addObject(obj);
00265 if (viewDialog.getViewerID() == viewID)
00266 updateViewerDialog(viewID);
00267 return id;
00268 }
|
|
||||||||||||
|
Get the CanvasObject with the given index.
00274 {
00275 return getViewer(viewID).getObject(objID);
00276 }
|
|
||||||||||||||||
|
Get a copy of the CanvasObject with the given index.
00282 {
00283 return getViewer(viewID).getObjectCopy(objID, ics);
00284 }
|
|
||||||||||||
|
Remove given object from the viewer.
00290 {
00291 getViewer(viewID).removeObject(objID);
00292 if (viewDialog.getViewerID() == viewID)
00293 updateViewerDialog(viewID);
00294 }
|
|
|
Implementation of MouseListener interface.
00300 {
00301 for (int i=0; i<vLabel.length; i++) {
00302 if (e.getSource() == vLabel[i]) {
00303 handleViewerDialogSelected(viewerIDs[i]);
00304 break;
00305 }
00306 }
00307 }
|
|
|
Implementation of MouseListener interface.
00312 { }
|
|
|
00313 { }
|
|
|
00314 { }
|
|
|
00315 { }
|
|
|
Implementation of ViewerListener interface.
00321 {
00322 int viewID = e.getViewerID();
00323 if (viewDialog.getViewerID() != viewID) {
00324 setActiveViewer(viewID);
00325 updateViewerDialog(viewID);
00326 viewDialog.setZoomValue(getViewer(viewID).getZoomFactor());
00327 }
00328 }
|
|
|
Implementation of ViewerListener interface.
00334 {
00335 int ID = e.getViewerID();
00336 if (viewDialog.getViewerID() != ID) {
00337 setActiveViewer(ID);
00338 updateViewerDialog(ID);
00339 viewDialog.setZoomValue(getViewer(ID).getZoomFactor());
00340 }
00341 }
|
|
|
Implementation of ViewerListener interface.
00346 { }
|
|
|
00347 { }
|
|
|
00348 { }
|
|
|
00349 { }
|
|
|
00350 { }
|
|
|
00351 { }
|
|
|
00352 { }
|
|
|
00353 { }
|
|
|
00354 { }
|
|
|
00355 { }
|
|
|
Implementation of ButtonBarListener.
Reimplemented from ButtonBarListener.
00361 {
00362 String label = e.getLabel();
00363
00364 if (label.equals("clear")) {
00365 int n = JOptionPane.showConfirmDialog(
00366 this, "Are you sure you want to clear ALL viewers?",
00367 "Clear viewers",
00368 JOptionPane.YES_NO_OPTION);
00369 if (n == JOptionPane.YES_OPTION) {
00370 doClear();
00371 zoomer.updateStatus(IcsCanvas.STD_ZOOM);
00372 updateViewerDialog(viewDialog.getViewerID());
00373 viewDialog.setZoomValue(IcsCanvas.STD_ZOOM);
00374 }
00375 } else if (label.equals("Vmanip")) {
00376 viewDialog.pop();
00377 updateViewerDialog(activeViewer);
00378 } else if (label.equals("trans")) {
00379 new JavaFuncDialog(this,
00380 new CallableMethod("copyObjectAcrossViewer",
00381 "int", "object ID", "int",
00382 "int", "source Viewer ID", "int",
00383 "int", "destination Viewer ID", "int"));
00384 }
00385 }
|
|
|
Implementation of ViewerModeListener.
Reimplemented from ViewerModeListener.
00391 {
00392 for (int i=0; i<nrOfViewers(); i++)
00393 getViewerIndex(i).setMode(e.getMode(), e.getSubMode());
00394 }
|
|
||||||||||||||||
|
00398 {
00399 if (source != dest && validViewer(source) && validViewer(dest)) {
00400 CanvasObject c = getObjectCopy(objID, source, true);
00401 if (c != null) {
00402 addObject(c, dest);
00403 return;
00404 }
00405 }
00406 }
|
|
|
Implementation of ViewerDialogUser.
Reimplemented from ViewerDialogUser.
00412 {
00413 getViewer(viewID).doClear();
00414 viewDialog.setZoomValue(getViewer(viewID).getZoomFactor());
00415 updateViewerDialog(viewID);
00416 }
|
|
|
Implementation of ViewerDialogUser.
Reimplemented from ViewerDialogUser.
00422 {
00423 // do nothing
00424 }
|
|
||||||||||||||||
|
Implementation of ViewerDialogUser.
Reimplemented from ViewerDialogUser.
00430 {
00431 SimpleViewer sv = getViewer(viewID);
00432 sv.doPan(x, y);
00433 }
|
|
|
Implementation of ViewerDialogUser.
Reimplemented from ViewerDialogUser.
00439 {
00440 setActiveViewer(viewID);
00441 updateViewerDialog(viewID);
00442 SimpleViewer sv = getViewer(viewID);
00443 viewDialog.setZoomValue(sv.getZoomFactor());
00444
00445 Vector list;
00446 ViewerEvent ve = new ViewerEvent(this, sv, null, -1, -1, -1);
00447 synchronized (this) {
00448 list = (Vector)listeners.clone();
00449 }
00450 for(int i=0; i<list.size(); i++) {
00451 ((ViewerListener)list.elementAt(i)).viewerSelected(ve);
00452 }
00453 }
|
|
||||||||||||
|
Implementation of ViewerDialogUser.
Reimplemented from ViewerDialogUser.
00459 {
00460 SimpleViewer sv = getViewer(viewID);
00461 // sv.setMode(ViewerMode.SELECT, 0);
00462 // vcb.setMode(ViewerMode.SELECT, 0);
00463 sv.doZoom(zoomVal);
00464 }
|
|
||||||||||||
|
Implementation of ViewerDialogUser.
Reimplemented from ViewerDialogUser.
00470 {
00471 getViewer(viewID).setBackgroundColor(c);
00472 updateViewerDialog(viewID);
00473 }
|
|
||||||||||||
|
Implementation of ViewerDialogUser.
Reimplemented from ViewerDialogUser.
00479 {
00480 getViewer(viewID).setDefaultDrawColor(c);
00481 }
|
|
|
Implementation of ZoomerUser.
Reimplemented from ZoomerUser.
00487 {
00488 for (int i=0 ; i<nrOfViewers() ; i++) {
00489 SimpleViewer sv = getViewerIndex(i);
00490 // sv.setMode(ViewerMode.SELECT, 0);
00491 // vcb.setMode(ViewerMode.SELECT, 0);
00492 sv.doZoom(zoomVal);
00493 viewDialog.setZoomValue(zoomVal);
00494 }
00495 }
|
1.2.12 written by Dimitri van Heesch,
© 1997-2001