Inheritance diagram for MdiApp::
Public Methods | |
void | handleOpenImageJava () |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleOpenServerImage () |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleOpenServerSeq () |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleExit () |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handlePaste () |
void | handleLF (String lfName) |
void | handleResult (String type, String value) |
void | handleNewViewer () |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleViewerOp (Object target, CallableMethod method, Object[] argVals) |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleDrawingColor (Color c) |
void | handleBackgroundColor (Color c) |
void | handleDisplayMode (String mode) |
void | handleNormalView () |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleFitViewportToCanvas () |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleViewAllImages () |
void | viewImageRep (String imName, boolean newViewer) |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | viewHistogram (String histName, boolean newViewer) |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | viewBlob2d (String blobName, boolean newViewer) |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | viewPolyline2d (String polyName, boolean newViewer) |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | viewBSplineCurve (String bsplName, boolean newViewer) |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | viewSampledBSplineCurve (String bsplName, boolean newViewer) |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleMakeImage () |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleRegistryViewer () |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleIDLScript () |
void | handlePixelEditor () |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleStubBrowser () |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleImageBrowser () |
void | handleAppBrowser () |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleOperationsBrowser () |
void | handleRegisterApp () |
void | handleNewJavaImage (int width, int height, Color c) |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleJavaImageToHxImageRep (int javaImID) |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleJavaPolylineToHxPolyline2d (int javaPolyID) |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleLabelCermet (String cermName) |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | handleTestSomething () |
This function is called by _bmenu if the associated menu item is selected. More... | |
void | objectEntered (ViewerEvent e) |
Implementation of ViewerInspectionListener. More... | |
void | objectProbed (ViewerEvent e) |
Implementation of ViewerInspectionListener. More... | |
void | objectSelected (ViewerEvent e) |
Implementation of ViewerInspectionListener. More... | |
void | viewerExited (ViewerEvent e) |
Implementation of ViewerInspectionListener. More... | |
void | viewerSelected (ViewerEvent e) |
Implementation of ViewerInspectionListener. More... | |
void | objectCreated (ViewerEvent e) |
Implementation of ViewerEditListener. More... | |
void | objectDeleted (ViewerEvent e) |
Method invoked when a CanvasObject has been deleted. More... | |
void | objectMoved (ViewerEvent e) |
Method invoked when a CanvasObject has been moved. More... | |
void | objectResized (ViewerEvent e) |
Method invoked when a CanvasObject has been resized. More... | |
void | objectReshaped (ViewerEvent e) |
Method invoked when a CanvasObject has been reshaped, i.e. More... | |
void | viewerEntered (ViewerEvent e) |
Implementation of Viewer(*)Listener (ignored). More... | |
void | objectChangedVisually (ViewerEvent e) |
Method invoked when one of the visual properties of a CanvasObject has been changed. More... | |
void | viewerModeChanged (ViewerModeEvent e) |
Implementation of ViewerModeListener. More... | |
int[] | handleNavigatorViewerIDs () |
Implementation of NavigatorUser. More... | |
void | handleNavigatorPan (int viewerID, double x, double y) |
Implementation of NavigatorUser. More... | |
void | handleNavigatorZoomed (int viewerID, double zoomVal) |
Implementation of NavigatorUser. More... | |
void | handleNavigatorSelected (int viewerID) |
Implementation of NavigatorUser. More... | |
void | internalFrameClosed (InternalFrameEvent e) |
Implementation of InternalFrameListener. More... | |
void | internalFrameActivated (InternalFrameEvent e) |
Implementation of InternalFrameListener. More... | |
void | internalFrameClosing (InternalFrameEvent e) |
Implementation of InternalFrameListener (ignored). More... | |
void | internalFrameOpened (InternalFrameEvent e) |
void | internalFrameIconified (InternalFrameEvent e) |
void | internalFrameDeiconified (InternalFrameEvent e) |
void | internalFrameDeactivated (InternalFrameEvent e) |
void | itemStateChanged (ItemEvent e) |
Implementation of ItemListener. More... | |
Static Public Methods | |
void | main (String[] args) |
This function is called when this is used as an application. More... | |
Protected Methods | |
boolean | buildSample (JFrame parent, JApplet applet, String[] args) |
Initialization. More... |
|
This function is called when this is used as an application.
Reimplemented from SampleApp.
|
|
This function is called by _bmenu if the associated menu item is selected.
00060 { 00061 File file = askFilename(JAVA_FILTER, true); 00062 if(file == null) return; 00063 00064 Image im = Toolkit.getDefaultToolkit().getImage(file.getPath()); 00065 //String name = StubManager.getName(file); // not the full path... 00066 boolean success = _objManager.addJavaImage(im); 00067 00068 if(!success) 00069 ErrorStreamArea.println("Can not open image "+file.getName()); 00070 } |
|
This function is called by _bmenu if the associated menu item is selected.
00075 { 00076 HxCorba.Constructor cons = 00077 ServiceRepository.instance().getConstructor(); 00078 if(cons == null) return; 00079 00080 File file = askFilename(HORUS_FILTER, CorbaMediator.instance().hasLocalServer()); 00081 if(file == null) return; 00082 00083 HxCorba.ImageRep img = cons.fromFile(file.getPath()); 00084 if(img == null) { 00085 ErrorStreamArea.println(cons.getLastError()); 00086 return; 00087 } 00088 00089 String name = nameFromFile(file); // not the full path... 00090 StubRepository.instance().addStub(HxCorba.ImageRepHelper.id(), name, img); 00091 viewObject(new CanvasCorbaImage(img), name); 00092 } |
|
This function is called by _bmenu if the associated menu item is selected.
00098 { 00099 HxCorba.Constructor cons = 00100 ServiceRepository.instance().getConstructor(); 00101 if(cons == null) return; 00102 00103 File file = askFilename(SEQ_FILTER, CorbaMediator.instance().hasLocalServer()); 00104 if(file == null) return; 00105 00106 HxCorba.ImageSeq seq = cons.constructImageSeq(file.getPath()); 00107 if(seq == null) { 00108 ErrorStreamArea.println(cons.getLastError()); 00109 return; 00110 } 00111 00112 String name = nameFromFile(file); // not the full path... 00113 StubRepository.instance().addStub(HxCorba.ImageSeqHelper.id(), name, seq); 00114 00115 OutputStreamArea.println("Result " + name + ", showing first frame."); 00116 viewObject(new CanvasCorbaImage(seq.getFrame(0)), name); 00117 } |
|
This function is called by _bmenu if the associated menu item is selected.
00122 { 00123 unregisterApp(); 00124 System.exit(0); 00125 } |
|
00128 { 00129 _objManager.doPaste(); 00130 } |
|
00133 { 00134 String lfClass = null; 00135 if(lfName.equals("Cross Platform")) 00136 lfClass = UIManager.getCrossPlatformLookAndFeelClassName(); 00137 else if(lfName.equals("System")) 00138 lfClass = UIManager.getSystemLookAndFeelClassName(); 00139 else if(lfName.equals("Motif")) 00140 lfClass = "com.sun.java.swing.plaf.motif.MotifLookAndFeel"; 00141 00142 if(lfClass == null) return; 00143 00144 try { 00145 UIManager.setLookAndFeel(lfClass); 00146 } catch (Exception e) { ErrorStreamArea.println("Unable to set L&F"); } 00147 SwingUtilities.updateComponentTreeUI(getParentFrame()); 00148 getParentFrame().show(); 00149 } |
|
00152 { 00153 if((type.startsWith("interface ")) && (value == null)) 00154 OutputStreamArea.println("Result: null, type: "+type); 00155 00156 else if(type.equals("interface ImageRep")) 00157 viewImageRep(value, true); 00158 else if(type.equals("interface Histogram")) 00159 viewHistogram(value, true); 00160 else if(type.equals("interface Polyline2d")) 00161 viewPolyline2d(value, true); 00162 else if(type.equals("interface BSplineCurve")) 00163 viewBSplineCurve(value, true); 00164 else if(type.equals("interface SampledBSplineCurve")) 00165 viewSampledBSplineCurve(value, true); 00166 00167 else if(type.equals("void")) 00168 OutputStreamArea.println("void"); 00169 else if(type.equals("error")) 00170 ErrorStreamArea.println(value); 00171 else 00172 OutputStreamArea.println("Result: "+value+", type: "+type); 00173 } |
|
This function is called by _bmenu if the associated menu item is selected.
00179 { 00180 newViewer(); 00181 } |
|
This function is called by _bmenu if the associated menu item is selected.
00187 { 00188 if (_activeViewer != null) 00189 method.invoke(_activeViewer, argVals); 00190 else 00191 ErrorStreamArea.println("No viewer selected"); 00192 } |
|
00196 { 00197 if (_activeViewer != null) 00198 _activeViewer.setDefaultDrawColor(c); 00199 else 00200 ErrorStreamArea.println("No viewer selected"); 00201 } |
|
00204 { 00205 if (_activeViewer != null) 00206 _activeViewer.setBackgroundColor(c); 00207 else 00208 ErrorStreamArea.println("No viewer selected"); 00209 } |
|
00212 { 00213 _displayMode = mode; 00214 } |
|
This function is called by _bmenu if the associated menu item is selected. Seems to work for all look&feels except Java's :-(
00220 { 00221 if (_activeViewer != null) { 00222 _activeViewer.doZoom(1.0); 00223 _activeFrame.pack(); 00224 } 00225 else 00226 ErrorStreamArea.println("No viewer selected"); 00227 } |
|
This function is called by _bmenu if the associated menu item is selected. Seems to work for all look&feels except Java's :-(
00234 { 00235 if (_activeViewer != null) 00236 _activeFrame.pack(); 00237 else 00238 ErrorStreamArea.println("No viewer selected"); 00239 } |
|
00242 { 00243 CorbaImageSpace3dViewer space = new CorbaImageSpace3dViewer(); 00244 00245 HxCorba.ImageRepHelper helper = new HxCorba.ImageRepHelper(); 00246 java.util.Enumeration e = StubRepository.instance().listStubs(helper.id()); 00247 while(e.hasMoreElements()) { 00248 String name = e.nextElement().toString(); 00249 Object obj = StubRepository.instance().getStub(helper.id(), name); 00250 HxCorba.ImageRep image = helper.narrow((org.omg.CORBA.Object)obj); 00251 space.addImage(image, name); 00252 } 00253 00254 JDialog dlg = new JDialog(getParentFrame(), "Image space", false); 00255 dlg.getContentPane().add(space, BorderLayout.CENTER); 00256 dlg.pack(); 00257 dlg.show(); 00258 } |
|
This function is called by _bmenu if the associated menu item is selected.
00263 { 00264 HxCorba.ImageRepHelper helper = new HxCorba.ImageRepHelper(); 00265 00266 Object obj = StubRepository.instance().getStub(helper.id(), imName); 00267 if(obj == null) { 00268 ErrorStreamArea.println("Image doesn't exists"); 00269 return; 00270 } 00271 00272 HxCorba.ImageRep image = helper.narrow((org.omg.CORBA.Object)obj); 00273 CanvasCorbaImage cObj = new CanvasCorbaImage(image); 00274 cObj.setDisplayMode(_displayMode); 00275 viewObject(cObj, newViewer, imName); 00276 } |
|
This function is called by _bmenu if the associated menu item is selected.
00281 { 00282 HxCorba.HistogramHelper helper = new HxCorba.HistogramHelper(); 00283 00284 Object obj = StubRepository.instance().getStub(helper.id(), histName); 00285 if(obj == null) { 00286 ErrorStreamArea.println("Histogram doesn't exists"); 00287 return; 00288 } 00289 00290 HxCorba.Histogram hist = helper.narrow((org.omg.CORBA.Object)obj); 00291 00292 if(hist.dimensionality() == 1) { 00293 CanvasObject cObj = new CanvasCorbaHistogram(hist); 00294 viewObject(cObj, newViewer, histName); 00295 } 00296 else { 00297 CorbaHistogram3dViewer h = new CorbaHistogram3dViewer(hist); 00298 JDialog dlg = new JDialog(getParentFrame(), "Histogram3d", false); 00299 dlg.getContentPane().add(h, BorderLayout.CENTER); 00300 dlg.pack(); 00301 dlg.show(); 00302 } 00303 } |
|
This function is called by _bmenu if the associated menu item is selected.
00309 { 00310 HxCorba.Blob2dHelper helper = new HxCorba.Blob2dHelper(); 00311 00312 Object obj = StubRepository.instance().getStub(helper.id(), blobName); 00313 if(obj == null) { 00314 ErrorStreamArea.println("Blob doesn't exists"); 00315 return; 00316 } 00317 00318 HxCorba.Blob2d blob = helper.narrow((org.omg.CORBA.Object)obj); 00319 CanvasObject cObj = new CanvasCorbaBlob2d(blob); 00320 viewObject(cObj, newViewer, blobName); 00321 } |
|
This function is called by _bmenu if the associated menu item is selected.
00327 { 00328 HxCorba.Polyline2dHelper helper = new HxCorba.Polyline2dHelper(); 00329 00330 Object obj = StubRepository.instance().getStub(helper.id(), polyName); 00331 if(obj == null) { 00332 ErrorStreamArea.println("Polyline2d doesn't exists"); 00333 return; 00334 } 00335 00336 HxCorba.Polyline2d poly = helper.narrow((org.omg.CORBA.Object)obj); 00337 CanvasObject cObj = new CanvasCorbaPolyline2d(poly); 00338 viewObject(cObj, newViewer, polyName); 00339 } |
|
This function is called by _bmenu if the associated menu item is selected.
00345 { 00346 HxCorba.BSplineCurveHelper helper = new HxCorba.BSplineCurveHelper(); 00347 00348 Object obj = StubRepository.instance().getStub(helper.id(), bsplName); 00349 if(obj == null) { 00350 ErrorStreamArea.println("BSplineCurve doesn't exists"); 00351 return; 00352 } 00353 00354 HxCorba.BSplineCurve bspl = helper.narrow((org.omg.CORBA.Object)obj); 00355 CanvasObject cObj = new CanvasCorbaBSplineCurve(bspl, 50); 00356 viewObject(cObj, newViewer, bsplName); 00357 } |
|
This function is called by _bmenu if the associated menu item is selected.
00362 { 00363 HxCorba.SampledBSplineCurveHelper helper 00364 = new HxCorba.SampledBSplineCurveHelper(); 00365 00366 Object obj = StubRepository.instance().getStub(helper.id(), bsplName); 00367 if(obj == null) { 00368 ErrorStreamArea.println("SampledBSplineCurve doesn't exists"); 00369 return; 00370 } 00371 00372 HxCorba.SampledBSplineCurve bspl = helper.narrow((org.omg.CORBA.Object)obj); 00373 CanvasObject cObj = new CanvasCorbaSampledBSplineCurve(bspl); 00374 viewObject(cObj, newViewer, bsplName); 00375 } |
|
This function is called by _bmenu if the associated menu item is selected.
00380 { 00381 if (_activeViewer == null) { 00382 ErrorStreamArea.println("No viewer selected"); 00383 return; 00384 } 00385 00386 BufferedImage im = _activeViewer.toImage(); 00387 _objManager.addJavaImage(im); 00388 } |
|
This function is called by _bmenu if the associated menu item is selected.
00417 { 00418 if(!showTool("Registry Viewer")) { 00419 CorbaRegistryViewer rv = new CorbaRegistryViewer("/"); 00420 showTool(rv, "Registry Viewer", true); 00421 } 00422 } |
|
00425 { 00426 if(!showTool("IDL Script")) { 00427 IDLScriptShell idl = new IDLScriptShell(); 00428 idl.setGuard(_objManager.stubRepositoryGuard()); 00429 idl.setGUI("mdiApp", this); 00430 StubRepository.instance().addStubListener(idl); 00431 showTool(idl, "IDL Script", true); 00432 } 00433 00434 } |
|
This function is called by _bmenu if the associated menu item is selected.
00439 { 00440 if (_pixelEditor != null) return; 00441 00442 _pixelEditor = new PixelEditor(); 00443 showTool(_pixelEditor, "PixelEditor", false); 00444 } |
|
This function is called by _bmenu if the associated menu item is selected.
00449 { 00450 if(!showTool("Stub Browser")) { 00451 StubBrowser st = new StubBrowser(); 00452 st.setPopupUser(this); 00453 st.setGuard(_objManager.stubRepositoryGuard()); 00454 st.setFrame(getParentFrame()); 00455 showTool(st, "Stub Browser", true); 00456 } 00457 } |
|
00460 { 00461 if(!showTool("Image Browser")) { 00462 WorldApp world = new WorldApp(getParentFrame()); 00463 00464 HxCorba.ImageRepHelper helper = new HxCorba.ImageRepHelper(); 00465 java.util.Enumeration e = StubRepository.instance().listStubs(helper.id()); 00466 while(e.hasMoreElements()) { 00467 String name = e.nextElement().toString(); 00468 Object obj = StubRepository.instance().getStub(helper.id(), name); 00469 HxCorba.ImageRep image = helper.narrow((org.omg.CORBA.Object)obj); 00470 world.addImage(image, name); 00471 } 00472 00473 showTool(world, "Image Browser", true); 00474 } 00475 } |
|
This function is called by _bmenu if the associated menu item is selected.
00480 { 00481 if(!showTool("App Browser")) { 00482 AppBrowser app = new CorbaMdiAppBrowser(); 00483 showTool(app, "App Browser", true); 00484 } 00485 } |
|
00488 { 00489 if(!showTool("Operations")) { 00490 OperationsBrowser ops = new OperationsBrowser(getParentFrame(), this); 00491 JInternalFrame frame = showTool(ops, "Operations", true); 00492 frame.setLocation(0,0); 00493 frame.setSize(frame.getSize().width, _desktop.getSize().height); 00494 } 00495 } |
|
00499 { 00500 registerApp(_objManager); 00501 } |
|
This function is called by _bmenu if the associated menu item is selected.
00506 { 00507 BufferedImage bufIm = 00508 new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); 00509 00510 for (int y=0 ; y<height ; y++) 00511 for (int x=0 ; x<width ; x++) 00512 bufIm.setRGB(x, y, c.getRGB()); 00513 00514 _objManager.addJavaImage(bufIm); 00515 } |
|
This function is called by _bmenu if the associated menu item is selected.
00521 { 00522 /* if (_activeViewer == null) { 00523 ErrorStreamArea.println("No viewer selected"); 00524 return; 00525 } 00526 Object obj = _activeViewer.getObject(javaImID); 00527 if (! (obj instanceof CanvasJavaImage)) { 00528 ErrorStreamArea.println("Object is not a java image"); 00529 return; 00530 } 00531 00532 CanvasJavaImage im = (CanvasJavaImage) obj; 00533 00534 int width = (int) im.getWidth(); 00535 int height = (int) im.getHeight(); 00536 int[] pixels = im.getPixels(0, 0, width, height); 00537 String resImName = _mediator.makeHxImage(2, 3, 0, 8, width, height, 00538 1, pixels); 00539 CanvasHxImage cIm = new CanvasHxImage(resImName, "Direct"); 00540 viewObject(cIm, true);*/ 00541 } |
|
This function is called by _bmenu if the associated menu item is selected.
00547 { 00548 } |
|
This function is called by _bmenu if the associated menu item is selected.
00554 { 00555 Object obj = StubRepository.instance().getStub(HxCorba.ImageRepHelper.id(), cermName); 00556 HxCorba.ImageRep image = HxCorba.ImageRepHelper.narrow((org.omg.CORBA.Object)obj); 00557 00558 if(image == null) { 00559 ErrorStreamArea.println("Image doesn't exists"); 00560 return; 00561 } 00562 00563 HxCorba.GlobalOps ops = 00564 ServiceRepository.instance().getGlobalOps(); 00565 if(ops == null) return; 00566 00567 try { 00568 // first negate cermet 00569 HxCorba.ImageRep resImg = ops.HxNegate(image); 00570 00571 // now add 255 to resImg 00572 HxCorba.PixValue val = new HxCorba.PixValue(); 00573 val.scalarInt(255); 00574 resImg = ops.HxAddVal(resImg, val); 00575 00576 // now make resImg really binary by tresholding 00577 val.scalarInt(128); 00578 resImg = ops.HxThreshold(resImg, val); 00579 00580 // display resIm 00581 viewObject(new CanvasCorbaImage(resImg, "Binary"), "Binary"); 00582 StubRepository.instance().addStub(HxCorba.ImageRepHelper.id(), 00583 cermName+"binary", resImg); 00584 00585 // now call "LabelBlobs" 00586 HxCorba.Blob2d[] blobList = ops.HxLabelBlobs(image, resImg, 0); 00587 StubRepository.instance().addStub(HxCorba.Blob2dSetHelper.id(), 00588 cermName+"_blobs", blobList); 00589 00590 // display the blobs 00591 for(int i=0; i<blobList.length; i++) { 00592 CanvasFigure cBlob = new CanvasCorbaBlob2d(blobList[i]); 00593 cBlob.setColor(Color.yellow); 00594 _activeViewer.addObject(cBlob); 00595 } 00596 }catch(HxCorba.ImageException e){ 00597 ErrorStreamArea.println(e.message); 00598 } 00599 } |
|
This function is called by _bmenu if the associated menu item is selected.
00605 { 00606 HxCorba.ImageFactory fac; 00607 HxCorba.GlobalOps ops; 00608 00609 fac = ServiceRepository.instance().getConstructor(); 00610 if(fac == null) return; 00611 ops = ServiceRepository.instance().getGlobalOps(); 00612 if(ops == null) return; 00613 00614 try { 00615 00616 //int[] vals = {-1, 0, 1}; 00617 //HxCorba.ImageRep im = fac.fromIntData(1, 2, new HxCorba.Sizes(3,1,1), vals); 00618 HxCorba.ImageRep im = fac.fromFile("d:/images/flamingo.jpg"); 00619 00620 //String name = new String("testing"); 00621 //StubRepository.instance().addStub(HxCorba.ImageRepHelper.id(), name, im); 00622 00623 /* 00624 double[][] data = ops.HxNJetInvar(im, "E", 1.0, 128); 00625 00626 OutputStreamArea.println("n1 : " + data.length); 00627 for (int i=0 ; i<data.length ; i++) { 00628 for (int j=0 ; j<data[i].length ; j++) { 00629 OutputStreamArea.println("at " + i + j + " : " + data[i][j]); 00630 } 00631 } 00632 HxCorba.AapFeatures features = ops.JmCalcAapFeatures(im, im); 00633 OutputStreamArea.println("outdoor : " + features.outdoor); 00634 OutputStreamArea.println("col x: " + features.col.x); 00635 OutputStreamArea.println("col y: " + features.col.y); 00636 OutputStreamArea.println("col z: " + features.col.z); 00637 OutputStreamArea.println("percentage : " + features.percentage); 00638 OutputStreamArea.println("label : " + features.label); 00639 */ 00640 00641 } catch(Exception e){ 00642 ErrorStreamArea.println("test "+e); 00643 e.printStackTrace(); 00644 } 00645 } |
|
Implementation of ViewerInspectionListener.
Reimplemented from ViewerInspectionListener.
00676 { 00677 updateStatusBar(e); 00678 } |
|
Implementation of ViewerInspectionListener.
Reimplemented from ViewerInspectionListener.
00684 { 00685 updateStatusBar(e); 00686 } |
|
Implementation of ViewerInspectionListener.
Reimplemented from ViewerInspectionListener.
00692 { 00693 updateStatusBar(e); 00694 //((CanvasObject) e.getCanvasObject()).dump(); 00695 00696 if (_pixelEditor != null) { 00697 CanvasViewer viewer = (CanvasViewer) e.getViewer(); 00698 Object obj = e.getCanvasObject(); 00699 if (obj instanceof CanvasImage) 00700 _pixelEditor.updatePixels(viewer, (CanvasObject) obj, 00701 e.getXPosPcs(), e.getYPosPcs()); 00702 else 00703 _pixelEditor.doClear(); 00704 } 00705 } |
|
Implementation of ViewerInspectionListener.
Reimplemented from ViewerInspectionListener.
00711 { 00712 clearStatusBar(e); 00713 } |
|
Implementation of ViewerInspectionListener.
Reimplemented from ViewerInspectionListener.
00719 { 00720 clearStatusBar(e); 00721 } |
|
Implementation of ViewerEditListener.
Reimplemented from ViewerEditListener.
00727 { 00728 updateStatusBar(e); 00729 00730 CanvasObject obj = e.getCanvasObject(); 00731 if(obj instanceof ScribbleFigure) 00732 _objManager.addScribbleFigure((ScribbleFigure)obj, e.getObjectID()); 00733 } |
|
Method invoked when a CanvasObject has been deleted.
Reimplemented from ViewerEditListener.
00737 { 00738 CanvasObject obj = e.getCanvasObject(); 00739 if(obj instanceof ScribbleFigure) 00740 _objManager.deleteScribbleFigure((ScribbleFigure)obj, e.getObjectID()); 00741 } |
|
Method invoked when a CanvasObject has been moved.
Reimplemented from ViewerEditListener.
00744 { 00745 CanvasObject obj = e.getCanvasObject(); 00746 if(obj instanceof ScribbleFigure) 00747 _objManager.addScribbleFigure((ScribbleFigure)obj, e.getObjectID()); 00748 } |
|
Method invoked when a CanvasObject has been resized.
Reimplemented from ViewerEditListener.
00751 { 00752 CanvasObject obj = e.getCanvasObject(); 00753 if(obj instanceof ScribbleFigure) 00754 _objManager.addScribbleFigure((ScribbleFigure)obj, e.getObjectID()); 00755 } |
|
Method invoked when a CanvasObject has been reshaped, i.e. one of its points has been deleted or moved Reimplemented from ViewerEditListener.
00758 { 00759 CanvasObject obj = e.getCanvasObject(); 00760 if(obj instanceof ScribbleFigure) 00761 _objManager.addScribbleFigure((ScribbleFigure)obj, e.getObjectID()); 00762 } |
|
Implementation of Viewer(*)Listener (ignored).
Reimplemented from ViewerInspectionListener.
00766 {} |
|
Method invoked when one of the visual properties of a CanvasObject has been changed.
Reimplemented from ViewerEditListener.
00767 {} |
|
Implementation of ViewerModeListener.
Reimplemented from ViewerModeListener.
00773 { 00774 for (int i=0; i<_viewerList.size(); i++) { 00775 JInternalFrame f = (JInternalFrame) _viewerList.get(i); 00776 CanvasViewer v = (CanvasViewer)f.getClientProperty("Hx.Viewer"); 00777 v.setMode(e.getMode(), e.getSubMode()); 00778 } 00779 } |
|
Implementation of NavigatorUser.
Reimplemented from NavigatorUser.
00785 { 00786 int[] ids = new int[_viewerList.size()]; 00787 for (int i=0; i<_viewerList.size(); i++) { 00788 JInternalFrame f = (JInternalFrame) _viewerList.get(i); 00789 Integer viewerID = (Integer)f.getClientProperty("Hx.ViewerID"); 00790 ids[i] = viewerID.intValue(); 00791 } 00792 return ids; 00793 } |
|
Implementation of NavigatorUser.
Reimplemented from NavigatorUser.
00799 { 00800 CanvasViewer viewer = getCanvasViewer(viewerID); 00801 if (viewer != null) 00802 viewer.doPan(x, y); 00803 } |
|
Implementation of NavigatorUser.
Reimplemented from NavigatorUser.
00809 { 00810 CanvasViewer viewer = getCanvasViewer(viewerID); 00811 if (viewer != null) 00812 viewer.doZoom(zoomVal); 00813 } |
|
Implementation of NavigatorUser.
Reimplemented from NavigatorUser.
00819 { 00820 CanvasViewer viewer = getCanvasViewer(viewerID); 00821 if (viewer != null) 00822 _navigator.updateStatus(viewer); 00823 } |
|
Implementation of InternalFrameListener.
00829 { 00830 JInternalFrame frame = (JInternalFrame) e.getSource(); 00831 if (frame == _activeFrame) 00832 _activeFrame = null; 00833 CanvasViewer viewer = (CanvasViewer)frame.getClientProperty("Hx.Viewer"); 00834 if (viewer != null) { 00835 removeCanvasViewer(viewer.getViewerID()); 00836 _activeViewer = null; 00837 _navigator.updateStatus(getFirstCanvasViewer()); 00838 } else { 00839 for (int i=0; i<_toolFrames.size(); i++) { 00840 JInternalFrame f = (JInternalFrame) _toolFrames.get(i); 00841 if (f == frame) { 00842 _toolFrames.remove(f); 00843 } 00844 } 00845 } 00846 updateWindowMenu(); 00847 } |
|
Implementation of InternalFrameListener.
00853 { 00854 _activeFrame = (JInternalFrame) e.getSource(); 00855 updateWindowMenu(); 00856 _activeViewer = (CanvasViewer)_activeFrame.getClientProperty("Hx.Viewer"); 00857 if (_activeViewer != null) 00858 _navigator.updateStatus(_activeViewer); 00859 } |
|
Implementation of InternalFrameListener (ignored).
00864 {} |
|
00865 {} |
|
00866 {} |
|
00867 {} |
|
00868 {} |
|
Implementation of ItemListener.
00874 { 00875 if (e.getStateChange() == ItemEvent.DESELECTED) 00876 return; 00877 00878 JMenuItem source = (JMenuItem)(e.getSource()); 00879 String s = source.getText(); 00880 JInternalFrame[] frames = _desktop.getAllFrames(); 00881 for (int i=0 ; i<frames.length ; i++) 00882 if (frames[i].getTitle().compareTo(s) == 0) { 00883 if (frames[i].isIcon()) { 00884 try { 00885 frames[i].setIcon(false); 00886 } catch (java.beans.PropertyVetoException ex1) {} 00887 } 00888 try { 00889 frames[i].setSelected(true); 00890 frames[i].setVisible(true); 00891 } catch (java.beans.PropertyVetoException ex2) {} 00892 } 00893 } |
|
Initialization.
Reimplemented from SampleApp.
00904 { 00905 OutputStreamArea out = new OutputStreamArea(10, 60, false); 00906 ErrorStreamArea errorText = new ErrorStreamArea(parent, 4, 60); 00907 00908 OutputStreamArea.println("Initializing CorbaMediator..."); 00909 initCorbaMediator(args); 00910 addInitialService(HxCorba.ConstructorHelper.id(), "Constructor", "CTOR"); 00911 addInitialService(HxCorba.GlobalOpsHelper.id(), "GlobalOps", "OPS"); 00912 00913 _objManager = new CorbaMdiObjectManager(); 00914 00915 AdvancedLookupManager lMgr = setAdvancedLookupManager(parent); 00916 lMgr.allowChangeServer(false); 00917 00918 OutputStreamArea.println("Building "+getSampleName()+" GUI..."); 00919 parent.setTitle(getSampleName()+" (unregistered)"); 00920 00921 Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); 00922 parent.setBounds(0, 0, screenSize.width - 50, screenSize.height - 50); 00923 00924 // Create desktop 00925 00926 _desktop = new JDesktopPane(); 00927 //_desktop.putClientProperty("JDesktopPane.dragMode", "outline"); 00928 _windowMenu = new JMenu("Windows"); 00929 00930 int x, y; 00931 00932 // Create frame for text output 00933 00934 JInternalFrame outFrame = new JInternalFrame("Output", 00935 true, false, true, true); 00936 outFrame.getContentPane().add(out); 00937 outFrame.addInternalFrameListener(this); 00938 outFrame.pack(); 00939 // Should be based on desktop, but that is not packed yet. 00940 x = parent.getSize().width - outFrame.getSize().width; 00941 y = parent.getSize().height - outFrame.getSize().height; 00942 y = y - 65; // allow space for status bar 00943 outFrame.setLocation(x, y); 00944 _desktop.add(outFrame); 00945 outFrame.setVisible(true); 00946 _fixedFrames.add(outFrame); 00947 00948 // Create frame for errors 00949 00950 JInternalFrame errFrame = new JInternalFrame("Errors", 00951 true, false, true, true); 00952 errFrame.getContentPane().add(errorText); 00953 errFrame.addInternalFrameListener(this); 00954 errFrame.pack(); 00955 errFrame.setLocation(x, y - errFrame.getSize().height); 00956 _desktop.add(errFrame); 00957 errFrame.setVisible(true); 00958 _fixedFrames.add(errFrame); 00959 // This makes it invisible :-( 00960 // _desktop.getDesktopManager().iconifyFrame(errFrame); 00961 // This also makes it invisible :-( 00962 // try { 00963 // errFrame.setIcon(true); 00964 // } catch (java.beans.PropertyVetoException e) {} 00965 00966 00967 // Add StatusBars to parent frame below desktop 00968 00969 JPanel statusP = new JPanel(); 00970 statusP.setLayout(new GridBagLayout()); 00971 _stBar1 = new JTextField("StatusBar1"); 00972 _stBar1.setEditable(false); 00973 HX.addGridComp(statusP, _stBar1, 0, 0, 1, 1, 00974 GridBagConstraints.HORIZONTAL, 1.0, 0.0, 0, 0); 00975 _stBar2 = new JTextField("StatusBar2"); 00976 _stBar2.setEditable(false); 00977 HX.addGridComp(statusP, _stBar2, 1, 0, 1, 1, 00978 GridBagConstraints.HORIZONTAL, 1.0, 0.0, 0, 0); 00979 parent.getContentPane().add("South", statusP); 00980 00981 00982 // Add ViewerControlBar to desktop 00983 00984 _vcb = new ViewerControlBar(); 00985 _vcb.addViewerModeListener(this); 00986 JInternalFrame vcbFrame = new JInternalFrame("ViewerControlBar", 00987 false, false, false, true); 00988 vcbFrame.getContentPane().add(_vcb); 00989 vcbFrame.addInternalFrameListener(this); 00990 vcbFrame.pack(); 00991 _desktop.add(vcbFrame); 00992 vcbFrame.setVisible(true); 00993 // Should be based on desktop, but that is not packed yet. 00994 x = parent.getSize().width - vcbFrame.getSize().width; 00995 y = 0; 00996 vcbFrame.setLocation(x, y); 00997 _fixedFrames.add(vcbFrame); 00998 00999 // Add Navigator to desktop 01000 01001 double[] values = {0.1, 0.2, 0.5, 1.0, 2.0, 3.0, 4.0, 5.0, 10.0, 20.0}; 01002 _navigator = new Navigator(this, 1.0, 0.1, 20.0, values, 2); 01003 JInternalFrame zoomFrame = new JInternalFrame("Navigator", 01004 false, false, false, true); 01005 zoomFrame.getContentPane().add(_navigator); 01006 zoomFrame.addInternalFrameListener(this); 01007 zoomFrame.pack(); 01008 x = parent.getSize().width - zoomFrame.getSize().width; 01009 y = vcbFrame.getSize().height; 01010 zoomFrame.setLocation(x, y); 01011 _desktop.add(zoomFrame); 01012 zoomFrame.setVisible(true); 01013 _fixedFrames.add(zoomFrame); 01014 01015 // Create CorbaExtMenuBar: 01016 01017 //OutputStreamArea.println("Querying InterfaceRepository..."); 01018 //org.omg.CORBA.Repository ir = ServiceRepository.instance().getRepository(); 01019 _bmenu = new CorbaExtMenuBar(parent, this); 01020 _bmenu.addMenu("File"); 01021 _bmenu.addMenuItem("File", "Open Image Java", "handleOpenImageJava"); 01022 _bmenu.addMenuItem("File", "Open Server Image", "handleOpenServerImage"); 01023 _bmenu.addMenuItem("File", "Open Server Sequence", "handleOpenServerSeq"); 01024 _bmenu.addSeparator("File"); 01025 _bmenu.addMenuItem("File", "Exit", "handleExit"); 01026 01027 _bmenu.addMenu("Edit"); 01028 _bmenu.addMenuItem("Edit", "Cut", (String)null); 01029 _bmenu.addMenuItem("Edit", "Copy", (String)null); 01030 _bmenu.addMenuItem("Edit", "Paste", "handlePaste"); 01031 01032 _bmenu.addMenu("Preferences"); 01033 _bmenu.addSubMenu("Preferences", "Look&Feel"); 01034 String[] lf = { "Cross Platform", "System", "Motif" }; 01035 _bmenu.addGroupMenu("Look&Feel", lf, "handleLF", lf[0]); 01036 01037 _bmenu.addMenu("Viewer"); 01038 _bmenu.addMenuItem("Viewer", "New viewer", "handleNewViewer"); 01039 _bmenu.addMenuItem("Viewer", "Refresh", null, 01040 new CallableMethod("doRefresh"), 01041 this, "handleViewerOp"); 01042 _bmenu.addMenuItem("Viewer", "Clear", null, 01043 new CallableMethod("doClear"), 01044 this, "handleViewerOp"); 01045 _bmenu.addMenuItem("Viewer", "Normal view", "handleNormalView"); 01046 _bmenu.addMenuItem("Viewer", "Fit viewport to canvas", "handleFitViewportToCanvas"); 01047 _bmenu.addSeparator("Viewer"); 01048 _bmenu.addSubMenu("Viewer", "Set Default Drawing Color"); 01049 _bmenu.addColorsMenu("Set Default Drawing Color", "handleDrawingColor"); 01050 _bmenu.addSubMenu("Viewer", "Set Background Color"); 01051 _bmenu.addColorsMenu("Set Background Color", "handleBackgroundColor"); 01052 _bmenu.addSeparator("Viewer"); 01053 _bmenu.addSubMenu("Viewer", "Default Display Mode"); 01054 _bmenu.addGroupMenu("Default Display Mode", getRGBModes(), "handleDisplayMode", _displayMode); 01055 _bmenu.addSeparator("Viewer"); 01056 _bmenu.addSubMenu("Viewer", "View Object"); 01057 _bmenu.addMenuItem("View Object", "ImageRep", 01058 new CallableMethod("viewImageRep", 01059 "String", "image name", HxCorba.ImageRepHelper.id(), 01060 "boolean", "pop new viewer", "boolean")); 01061 _bmenu.addMenuItem("View Object", "Blob2d", 01062 new CallableMethod("viewBlob2d", 01063 "String", "blob name", HxCorba.Blob2dHelper.id(), 01064 "boolean", "pop new viewer", "boolean")); 01065 _bmenu.addMenuItem("View Object", "Polyline2d", 01066 new CallableMethod("viewPolyline2d", 01067 "String", "polyline name", HxCorba.Polyline2dHelper.id(), 01068 "boolean", "pop new viewer", "boolean")); 01069 _bmenu.addMenuItem("View Object", "BSplineCurve", 01070 new CallableMethod("viewBSplineCurve", 01071 "String", "b-spline name", HxCorba.BSplineCurveHelper.id(), 01072 "boolean", "pop new viewer", "boolean")); 01073 _bmenu.addMenuItem("View Object", "SampledBSplineCurve", 01074 new CallableMethod("viewSampledBSplineCurve", 01075 "String", "b-spline name", HxCorba.SampledBSplineCurveHelper.id(), 01076 "boolean", "pop new viewer", "boolean")); 01077 _bmenu.addMenuItem("Viewer", "View All Images", "handleViewAllImages"); 01078 _bmenu.addSeparator("Viewer"); 01079 _bmenu.addMenuItem("Viewer", "make Image", "handleMakeImage"); 01080 //_bmenu.addMenuItem("Viewer", "to HxImageRep", "handleToHxImageRep"); 01081 01082 _bmenu.addMenu("Tools"); 01083 _bmenu.addMenuItem("Tools", "Registry Viewer", "handleRegistryViewer"); 01084 //_bmenu.addMenuItem("Tools", "Sa Repository Viewer", "handleSaRepositoryViewer"); 01085 _bmenu.addMenuItem("Tools", "Pixel Editor", "handlePixelEditor"); 01086 _bmenu.addSeparator("Tools"); 01087 _bmenu.addMenuItem("Tools", "Stub Browser", "handleStubBrowser"); 01088 _bmenu.addMenuItem("Tools", "Image Browser", "handleImageBrowser"); 01089 _bmenu.addMenuItem("Tools", "App Browser", "handleAppBrowser"); 01090 _bmenu.addMenuItem("Tools", "Operations", "handleOperationsBrowser"); 01091 _bmenu.addMenuItem("Tools", "IDL Script", "handleIDLScript"); 01092 _bmenu.addSeparator("Tools"); 01093 _bmenu.addMenuItem("Tools", "Register App", "handleRegisterApp"); 01094 01095 _bmenu.addMenu("Object"); 01096 _bmenu.addMenuItem("Object", "New java image", 01097 new CallableMethod("handleNewJavaImage", 01098 "int", "width", "int", 01099 "int", "height", "int", 01100 "Color", "background color", "Color")); 01101 _bmenu.addCorbaOperationMenu("Object", "Java image to HxImageRep", 01102 "Constructor", "importImage"); 01103 _bmenu.addCorbaOperationMenu("Object", "Java polyline to HxPolyline2d", 01104 "Constructor", "importPolyline"); 01105 _bmenu.addSeparator("Object"); 01106 _bmenu.addMenuItem("Object", "Label cermet", 01107 new CallableMethod("handleLabelCermet", 01108 "String", "cermet name", HxCorba.ImageRepHelper.id())); 01109 _bmenu.addMenuItem("Object", "Example BSpline", 01110 (CallableMethod)null); 01111 /*new CallableMethod("handleExampleBSpline", 01112 "int", "Polyong ID", "int", 01113 "int", "Degree", "int", 01114 "boolean", "Interpolate", "boolean"));*/ 01115 _bmenu.addSeparator("Object"); 01116 _bmenu.addMenuItem("Object", "TestSomething", "handleTestSomething"); 01117 01118 _bmenu.addCorbaObjectsMenu(); 01119 _bmenu.addCorbaObjectMenu("Constructor"); 01120 _bmenu.addCorbaObjectMenu("ImageRep"); 01121 _bmenu.addCorbaObjectMenu("GlobalOps"); 01122 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images"); 01123 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Arithmetic"); 01124 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Conversions"); 01125 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Color"); 01126 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Detector"); 01127 /* 01128 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Export"); 01129 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Filter"); 01130 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Generation"); 01131 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Geometric"); 01132 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Mask"); 01133 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Morphology"); 01134 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Morphology2"); 01135 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Motion"); 01136 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Noise"); 01137 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Pixel"); 01138 _bmenu.addCorbaObjectMenu("GlobalOps/Menu/Images/Segmentation"); 01139 */ 01140 01141 parent.getContentPane().add(_desktop); 01142 parent.setJMenuBar(_bmenu); 01143 01144 _bmenu.add(_windowMenu); 01145 updateWindowMenu(); 01146 01147 parent.show(); 01148 01149 _desktop.setDropTarget(new DropTarget(_desktop, _objManager)); 01150 01151 // handleSystemLF(); 01152 01153 OutputStreamArea.println("Done."); 01154 out.capture(); 01155 01156 return true; 01157 } |