// /** // * export images // * // * RAP currently, GC drawing is only supported on Canvas, but not on image. // */ // public void exportImage() { // try { // IFigure figure = // ((AbstractGraphicalEditPart)getGraphicalViewer().getRootEditPart()).getFigure(); // File file = new File ("/Users/hangum/Downloads/gefout.png"); // if (file.exists ()) { // if (!MessageDialog.openQuestion(null, "prompted", "The file already exists. Want // to re-cover it?")) { // return; // } // } else { // file.createNewFile (); // } // // if (figure instanceof Viewport) { // ((Viewport)figure).setViewLocation(0, 0); // } // // Dimension size = figure.getPreferredSize (); // Image image = new Image (Display.getDefault (), size.width, size.height); //// Drawable drawable = (Drawable)image; // // GC gc = new GC(getSite().getShell().getDisplay()); // gc.drawImage(image, size.width, size.height); // SWTGraphics graphics = new SWTGraphics(gc); // figure.paint (graphics); // // ImageLoader loader = new ImageLoader (); // loader.data = new ImageData []{image.getImageData ()}; // loader.save("/Users/hangum/Downloads/gefout.png", // SWT.IMAGE_PNG);//FileFormat.FORMATS); // // graphics.dispose(); // gc.dispose(); // image.dispose(); // // } catch (Exception e) { // e.printStackTrace(); // } finally { // } // } @Override public void doSave(IProgressMonitor monitor) { // exportImage(); // 신규 저장이면 if (userDBErd == null) { // file 이름 dialog ResourceSaveDialog rsDialog = new ResourceSaveDialog(null, null, userDB, PublicTadpoleDefine.RESOURCE_TYPE.ERD, ""); if (rsDialog.open() == Window.OK) { try { // erd 정보 디비저장 userDBErd = TadpoleSystem_UserDBResource.saveResource( userDB, rsDialog.getRetResourceDao(), createResourceToString()); userDBErd.setParent(userDB); // command stack 초기화 getCommandStack().markSaveLocation(); // title 수정 setPartName(userDBErd.getName()); // managerView tree refresh // 뒤에 시간을붙인것은 한번 저장한 db_seq는 업데이지 않는 오류를 방지하기위해... // PlatformUI.getPreferenceStore() .setValue( PublicTadpoleDefine.SAVE_FILE, "" + userDBErd.getDb_seq() + ":" + System.currentTimeMillis()); // $NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ } catch (Exception e) { logger.error(Messages.get().TadpoleEditor_9, e); Status errStatus = new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(), e); // $NON-NLS-1$ ExceptionDetailsErrorDialog.openError( getSite().getShell(), "Error", Messages.get().TadpoleEditor_3, errStatus); //$NON-NLS-1$ } } // 기존 리소스를 가지고 있었으면 } else { try { TadpoleSystem_UserDBResource.updateResource(userDBErd, createResourceToString()); getCommandStack().markSaveLocation(); } catch (Exception e) { logger.error(Messages.get().TadpoleEditor_12, e); Status errStatus = new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(), e); // $NON-NLS-1$ ExceptionDetailsErrorDialog.openError( getSite().getShell(), "Error", Messages.get().TadpoleEditor_1, errStatus); //$NON-NLS-1$ } } }