Package research

Examples of research.DrawingView


        protected transient Rectangle rect = null;

        public boolean isEnabled() {
            if (!super.isEnabled()) return false;

            DrawingView currentView = editorArea.getCurrentView();
            if (currentView == null) return false;

            Vector selection = currentView.getSelection();

            if (selection == null) return false;
            if (selection.size() < 3) return false;

            //DistAction����connectionFigure��Ч�����Ҫ�жϵ�ǰѡ���ͼԪ�з�connectionFigure����Ŀ�Ƿ����3
View Full Code Here


        }

        public void actionPerformed(ActionEvent e) {
            if (!isEnabled()) return;

            DrawingView view = editorArea.getCurrentView();
            FigureEnumeration fe = new ReverseFigureEnumerator(view.getSelectionZOrdered());

            while (fe.hasMoreElements()) {
                view.getDrawing().bringToFront(fe.nextFigure());
            }
            view.checkDamage();
        }
View Full Code Here

        }

        public void actionPerformed(ActionEvent e) {
            if (!isEnabled()) return;

            DrawingView view = editorArea.getCurrentView();

            JComponent comp = (JComponent) view;

            File imageFile = (File) this.getValue(ConstantDefinition.FILE);

            String imageType = (String) this.getValue(ConstantDefinition.IMAGE_TYPE);

            Image image = null;
            Graphics2D g2d = null;

            //get image information
            if (imageType.equalsIgnoreCase("gif")) {
                Rectangle rect = GlobalFunction.checkMinimumViewport(view);
                Dimension size = new Dimension(rect.width + 10, rect.height + 10);

                image = comp.createImage(size.width, size.height);

                g2d = (Graphics2D) image.getGraphics();
                g2d.setColor(new Color(TRANSPARENT_BG_COLOR));
                g2d.fillRect(0, 0, (int) size.getWidth(), (int) size.getHeight());

                g2d.translate(-rect.x + 5, -rect.y + 5);

                view.drawDrawing(g2d);

            } else if (imageType.equalsIgnoreCase("svg")) {
                // Get a DOMImplementation
                DOMImplementation domImpl = GenericDOMImplementation.getDOMImplementation();

                // Create an instance of org.w3c.dom.Document
                Document document = domImpl.createDocument(null, "svg", null);

                SVGGeneratorContext ctx = SVGGeneratorContext.createDefault(document);

                //ctx.setEmbeddedFontsOn(true);
                // Create an instance of the SVG Generator
                g2d = new SVGGraphics2D(ctx, false);

                Rectangle rect = GlobalFunction.checkMinimumViewport(view);
                Dimension size = new Dimension(rect.width + 10, rect.height + 10);

                g2d.translate(-rect.x + 5, -rect.y + 5);
                ((SVGGraphics2D) g2d).setSVGCanvasSize(size);

                view.drawDrawing(g2d);

            } else if (imageType.equalsIgnoreCase("emf")) {

            }

            //write image into file
            try {

                if (imageType.equalsIgnoreCase("gif")) {
                    FileOutputStream out = new FileOutputStream(imageFile);
                    FilteredImageSource fis =
                            new FilteredImageSource(image.getSource(),
                                    new TransFilter(TRANSPARENT_BG_COLOR));
                    GifEncoder ge = new GifEncoder(fis, out);
                    ge.encode();
                    out.flush();
                    out.close();
                } else if (imageType.equalsIgnoreCase("svg")) {
                    FileOutputStream out = new FileOutputStream(imageFile);
                    boolean useCSS = true; // we want to use CSS style attribute
                    //Writer outer = new OutputStreamWriter(out, "iso8859-1");
                    Writer outer = new OutputStreamWriter(out, "UTF-8");
                    ((SVGGraphics2D) g2d).stream(outer, useCSS);
                    outer.flush();
                    outer.close();
                } else {
                    //version 2
                    Rectangle rect = GlobalFunction.checkMinimumViewport(view);
                    Dimension size = new Dimension((rect.x + rect.width) * 2 + 5, (rect.y + rect.height) * 2 + 5);

                    Dimension oldSize = view.getSize();
                    ((SaturnDrawingView) view).setSizeTemp(size);

                    /**
                     SaveAsDialog saveAs = new SaveAsDialog();
                     saveAs.addAllExportFileTypes();
                     saveAs.showExportDialog((Component) getValue(de.FeatureModellingTool.GraphicalEditor.ConstantDefinition.UI_FRAME),
                     "����ͼ���ʽ", (Component) view, view.getDrawing().getTitle());
                     **/

                    exportDialog.showExportDialog((Component) getValue(de.FeatureModellingTool.GraphicalEditor.ConstantDefinition.UI_FRAME), "Export view as ...", (Component) view, view.getDrawing().getTitle());

                    ((SaturnDrawingView) view).setSizeTemp(oldSize);
                }
            } catch (IOException ioe) {
                System.out.println(ioe);
View Full Code Here

        protected transient Rectangle rect = null;

        public boolean isEnabled() {
            if (!super.isEnabled()) return false;

            DrawingView currentView = editorArea.getCurrentView();
            if (currentView == null) return false;

            Vector selection = currentView.getSelection();

            if (selection == null) return false;
            if (selection.size() < 2) return false;

            //AlignAction����connectionFigure��Ч�����Ҫ�жϵ�ǰѡ���ͼԪ�з�connectionFigure����Ŀ�Ƿ����2
View Full Code Here

    public void removePropertyChangeListener(String propertyName, PropertyChangeListener listener) {
        editorArea.removePropertyChangeListener(propertyName, listener);
    }

    public ArrayList getSelection() {
        DrawingView currentView = editorArea.getCurrentView();
        if (currentView == null) return null;

        Vector selection = currentView.getSelection();
        if ((selection == null) || (selection.size() <= 0)) return null;

        ArrayList selectionList = new ArrayList(selection.size());
        for (int i = 0; i < selection.size(); i++) {
            Figure fig = (Figure) selection.get(i);
View Full Code Here

    protected class ViewAddedOrRemovedListener implements PropertyChangeListener {
        public void propertyChange(PropertyChangeEvent e) {
            String propertyName = e.getPropertyName();

            if (DrawingEditor.VIEW_ADDED.equals(propertyName)) {
                DrawingView view = (DrawingView) e.getNewValue();
                //����id��figure��ӳ���
                if (idToFigureMap != null) {
                    FigureEnumeration fe = view.getDrawing().getFigures();
                    while (fe.hasMoreElements()) {
                        Figure figure = fe.nextFigure();

                        idToFigureMap.add(figure.getAttribute("id"), figure);
                    }
                }
            } else if (DrawingEditor.VIEW_REMOVED.equals(propertyName)) {
                DrawingView view = (DrawingView) e.getOldValue();
                //����id��figure��ӳ���
                if (idToFigureMap != null) {
                    FigureEnumeration fe = view.getDrawing().getFigures();
                    while (fe.hasMoreElements()) {
                        Figure figure = fe.nextFigure();

                        idToFigureMap.remove(figure.getAttribute("id"), figure);
                    }
View Full Code Here

        if (!super.isEnabled()) return false;

        DrawingEditor drawingEditor = (DrawingEditor)getValue(ConstantDefinition.DRAWING_EDITOR);
        if(drawingEditor == null) return false;

        DrawingView currentView = drawingEditor.getCurrentView();
        if (currentView == null) return false;

        Vector selection = currentView.getSelection();

        if (selection == null) return false;
        if (selection.size() < 3) return false;

        //DistAction����connectionFigure��Ч�����Ҫ�жϵ�ǰѡ���ͼԪ�з�connectionFigure����Ŀ�Ƿ����3
View Full Code Here

            dtde.dropComplete(true);

            DropTarget dropTarget = (DropTarget) dtde.getSource();

            DrawingView drawingView = (DrawingView) dropTarget.getComponent();

            if (feature != null) {
                FeatureFigure ff = new FeatureFigure();
                ff.setAttribute("id", id);
                ff.setAttribute(FeatureFigure.IS_A_LINK, Boolean.TRUE);
                ff.setAttribute("text", feature.getName());
                ff.setAttribute(FeatureProperties.VARIABILITY, feature.getVariability().getName());
                ff.setAttribute(FeatureProperties.BINDINGTIME, feature.getBindingTime().getName());

                Point location = dtde.getLocation();
                double scale = drawingView.getScale();
                int realX = (int) (location.getX() / scale + 0.5);
                int realY = (int) (location.getY() / scale + 0.5);

                ff.basicDisplayBox(new Point(realX, realY), null);

                idToFigureMap.add(id, ff);
                drawingView.add(ff);
            } else if (rc != null) {
                ResourceComponentFigure rcf = new ResourceComponentFigure();
                rcf.setAttribute("id", id);
                rcf.setAttribute(FeatureFigure.IS_A_LINK, Boolean.TRUE);
                rcf.setAttribute("text", rc.getName());
                rcf.setAttribute(FeatureProperties.VARIABILITY, rc.getVariability().getName());

                Point location = dtde.getLocation();
                double scale = drawingView.getScale();
                int realX = (int) (location.getX() / scale + 0.5);
                int realY = (int) (location.getY() / scale + 0.5);

                rcf.basicDisplayBox(new Point(realX, realY), null);

                idToFigureMap.add(id, rcf);
                drawingView.add(rcf);
            }

            drawingView.repairDamage();
        }
View Full Code Here

        public void locateInCurrentView(String elementID) {
            Set figSet = idToFigureMap.get(elementID);

            if (figSet == null) return;

            DrawingView drawingView = editorArea.getCurrentView();
            drawingView.clearSelection();

            Iterator iterator = figSet.iterator();

            treeSet.clear();

            while (iterator.hasNext()) {
                Figure fig = (Figure) iterator.next();

                if (drawingView.getDrawing().includes(fig)) {
                    String type = (String) fig.getAttribute("type");
                    if ((type != null) && (type.equals("interactionTitle"))) continue;
                    drawingView.addToSelection(fig);
                    treeSet.add(fig);
                }
            }

            drawingView.repairDamage();

            adjustFigureToCenter(drawingView, treeSet.iterator());

        }
View Full Code Here

            }

            DrawingView[] views = editorArea.toArray();

            for (int i = 0; i < views.length; i++) {
                DrawingView drawingView = views[i];
                if (drawingView.getDrawing().includes(definition)) {
                    String type = (String) definition.getAttribute("type");
                    if ((type != null) && (type.equals("interactionTitle"))) continue;
                    drawingView.clearSelection();
                    drawingView.addToSelection(definition);
                    drawingView.repairDamage();
                    editorArea.setCurrentView(drawingView);
                    adjustFigureToCenter(drawingView, definition);
                    break;
                }
            }
View Full Code Here

TOP

Related Classes of research.DrawingView

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.