Java 类org.eclipse.gef.ui.parts.ScrollingGraphicalViewer 实例源码

项目:DarwinSPL    文件:DwGraphicalFeatureModelViewer.java   
/**
 * Overrides the underlying editor widget to add the date slider to it.
 * @param parent
 */
public void createEditor(Composite parent){
    GraphicalViewer viewer = new ScrollingGraphicalViewer();
    Control control = viewer.createControl(parent);

    if(parent.getLayout() instanceof GridLayout){ 
        GridData gridData = new GridData();
        gridData.horizontalSpan = 2;
        gridData.horizontalAlignment = SWT.FILL;
        gridData.grabExcessHorizontalSpace = true;
        gridData.verticalAlignment = SWT.FILL;
        gridData.grabExcessVerticalSpace = true;
        control.setLayoutData(gridData);
    }

    setGraphicalViewer(viewer);
    configureGraphicalViewer();
    hookGraphicalViewer();
    initializeGraphicalViewer();
}
项目:q7.quality.mockups    文件:DiagramWithCustomId.java   
@Override
public Control construct(Composite parent) {
    Composite content = new Composite(parent, SWT.NONE);
    GridDataFactory.fillDefaults().grab(true, true).applyTo(content);
    GridLayoutFactory.fillDefaults().applyTo(content);

    ScrollingGraphicalViewer viewer = new ScrollingGraphicalViewer();
    viewer.createControl(content);
    viewer.setRootEditPart(new FreeformGraphicalRootEditPart());
    viewer.setEditPartFactory(new CustomEditPartFactory());

    ContainerModel container = new ContainerModel("container-01");
    ComponentModel component1 = new ComponentModel("component-01", 0, 0);
    ComponentModel component2 = new ComponentModel("component-02", 200, 0);
    container.components.add(component1);
    container.components.add(component2);
    viewer.setContents(container);

    return content;
}
项目:seg.jUCMNav    文件:KPIView.java   
public void createPartControl(Composite parent) {
    // Create the viewer
    viewer = new ScrollingGraphicalViewer();
    viewer.setEditDomain(new UrnEditDomain(null));
    viewer.createControl(parent);

    // viewer.addSelectionChangedListener(this);
    // -- getSite().setSelectionProvider(viewer);
    getSite().getPage().addPartListener(this);
    getSite().getPage().addSelectionListener(this);

    // Set root editpart
    root = new ScalableFreeformRootEditPart();
    viewer.setRootEditPart(root);

    // Register the view
    DisplayPreferences.getInstance().registerListener(this);
}
项目:seg.jUCMNav    文件:UcmEditor.java   
/**
 * Configure the graphical viewer before it receives contents.
 * <p>
 * This is the place to choose an appropriate RootEditPart and EditPartFactory for your editor. The RootEditPart determines the behavior of the editor's
 * "work-area". For example, GEF includes zoomable and scrollable root edit parts. The EditPartFactory maps model elements to edit parts (controllers).
 * </p>
 * 
 * @see org.eclipse.gef.ui.parts.GraphicalEditor#configureGraphicalViewer()
 */
protected void configureGraphicalViewer() {
    super.configureGraphicalViewer();

    ScrollingGraphicalViewer viewer = (ScrollingGraphicalViewer) getGraphicalViewer();
    root = new UCMConnectionOnBottomRootEditPart(getParent());

    // zoom management is delegated to us from our parent.
    List zoomLevels = new ArrayList(3);
    zoomLevels.add(ZoomManager.FIT_ALL);
    zoomLevels.add(ZoomManager.FIT_WIDTH);
    zoomLevels.add(ZoomManager.FIT_HEIGHT);
    root.getZoomManager().setZoomLevelContributions(zoomLevels);

    viewer.setRootEditPart(root);

    registerContextMenuProvider(viewer);

    viewer.setEditPartFactory(new GraphicalEditPartFactory((UCMmap) getModel()));
    KeyHandler handler = new GraphicalViewerKeyHandler(viewer).setParent(getCommonKeyHandler());
    viewer.setKeyHandler(handler);
    getEditDomain().getPaletteViewer().setKeyHandler(handler);
}
项目:seg.jUCMNav    文件:GrlEditor.java   
/**
 * Configure the graphical viewer before it receives contents.
 * <p>
 * This is the place to choose an appropriate RootEditPart and EditPartFactory for your editor. The RootEditPart determines the behavior of the editor's
 * "work-area". For example, GEF includes zoomable and scrollable root edit parts. The EditPartFactory maps model elements to edit parts (controllers).
 * </p>
 * 
 * @see org.eclipse.gef.ui.parts.GraphicalEditor#configureGraphicalViewer()
 */
protected void configureGraphicalViewer() {
    super.configureGraphicalViewer();

    ScrollingGraphicalViewer viewer = (ScrollingGraphicalViewer) getGraphicalViewer();
    // Root editpart that include a zoom manager
    root = new GrlConnectionOnBottomRootEditPart(getParent());

    // zoom management is delegated to us from our parent.
    List zoomLevels = new ArrayList(3);
    zoomLevels.add(ZoomManager.FIT_ALL);
    zoomLevels.add(ZoomManager.FIT_WIDTH);
    zoomLevels.add(ZoomManager.FIT_HEIGHT);
    root.getZoomManager().setZoomLevelContributions(zoomLevels);

    viewer.setRootEditPart(root);

    registerContextMenuProvider(viewer);

    viewer.setEditPartFactory(new GrlGraphicalEditPartFactory((GRLGraph) getModel()));
    KeyHandler handler = new GraphicalViewerKeyHandler(viewer).setParent(getCommonKeyHandler());
    viewer.setKeyHandler(handler);
    getEditDomain().getPaletteViewer().setKeyHandler(handler);

}
项目:ermasterr    文件:NoWindowTest.java   
private static void run(final Display display, final int x) {
    final Shell shell = new Shell(display);
    shell.setBounds(0, 0, 350, 350);

    shell.setLayout(new FillLayout(SWT.VERTICAL));

    // display.syncExec(new Runnable() {
    // public void run() {

    final ERDiagramEditPartFactory editPartFactory = new ERDiagramEditPartFactory();
    final GraphicalViewer viewer = new ScrollingGraphicalViewer();
    viewer.setControl(new FigureCanvas(shell));

    final ScalableFreeformRootEditPart rootEditPart = new PagableFreeformRootEditPart(diagram);
    viewer.setRootEditPart(rootEditPart);

    viewer.setEditPartFactory(editPartFactory);
    viewer.setContents(diagram);

    viewer.getContents().refresh();

    // }
    // });

    shell.pack();
    shell.open();
    int count = 0;
    while (count < x) {
        if (!display.readAndDispatch()) {
            try {
                Thread.sleep(1000);
                count++;
            } catch (final InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
    viewer.getContents().deactivate();
    // display.dispose();
}
项目:limpet    文件:StackedchartsEditControl.java   
public StackedchartsEditControl(Composite parent)
{
  super(parent, SWT.NONE);

  setLayout(new FillLayout());

  editDomain = new EditDomain();

  viewer = new ScrollingGraphicalViewer();

  // connect external Drop support
  // add Dataset to Axis

  viewer.addDropTargetListener(new ProxyDropTargetListener(
      new DatasetToAxisDropTargetListener(viewer),
      new DatasetToAxisLandingDropTargetListener(viewer),
      new ScatterSetToScatterSetContainerTargetListener(viewer),
      new DatasetToChartDropTargetListener(viewer)
      ));

  viewer.createControl(this);
  editDomain.addViewer(viewer);

  viewer.getControl().setBackground(ColorConstants.listBackground);

  viewer.setEditPartFactory(new StackedChartsEditPartFactory());

  // emf edit domain
  adapterFactory =
      new ComposedAdapterFactory(
          ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
  BasicCommandStack commandStack = new BasicCommandStack();
  adapterFactory.addAdapterFactory(new ResourceItemProviderAdapterFactory());
  adapterFactory.addAdapterFactory(new EcoreItemProviderAdapterFactory());
  adapterFactory
      .addAdapterFactory(new ReflectiveItemProviderAdapterFactory());
  emfEditingDomain =
      new AdapterFactoryEditingDomain(adapterFactory, commandStack);

}
项目:q7.quality.mockups    文件:GraphicalViewerPart.java   
@Override
public Control construct(Composite parent) {
    Composite content = new Composite(parent, SWT.NONE);
    GridDataFactory.fillDefaults().grab(true, true).applyTo(content);
    Canvas cv = new Canvas(content, SWT.BORDER);
    GridDataFactory.fillDefaults().grab(true, false).hint(SWT.DEFAULT, 20).applyTo(cv);
    GridLayoutFactory.fillDefaults().applyTo(content);
    GraphicalViewer gv = new GraphicalViewerImpl() {
        @Override
        protected void createDefaultRoot() {
            setRootFigure(new CheckBox("Foo bar baz"));
        }
    };
    gv.createControl(content);
    GridDataFactory.fillDefaults().grab(true, true).applyTo(gv.getControl());

    GraphicalViewer gv2 = new ScrollingGraphicalViewer() {
        @Override
        protected void createDefaultRoot() {
            setRootFigure(new CheckBox("Foo2 bar2 baz2"));
        }
    };
    gv2.createControl(content);
    GridDataFactory.fillDefaults().grab(true, true).applyTo(gv2.getControl());

    return content;
}
项目:q7.quality.mockups    文件:DiagramItemWithImage.java   
@Override
public Control construct(Composite parent) {
    Composite content = new Composite(parent, SWT.NONE);
    GridDataFactory.fillDefaults().grab(true, true).applyTo(content);
    GridLayoutFactory.fillDefaults().applyTo(content);

    ScrollingGraphicalViewer viewer = new ScrollingGraphicalViewer();
    viewer.createControl(content);
    viewer.setRootEditPart(new FreeformGraphicalRootEditPart());
    viewer.setEditPartFactory(new SimplePartFactory());
    viewer.setContents(new SimpleModel());

    return content;
}
项目:seg.jUCMNav    文件:UrnEditor.java   
protected void registerContextMenuProvider(ScrollingGraphicalViewer viewer) {
    ContextMenuProvider provider = new UrnContextMenuProvider(viewer, getActionRegistry());
    viewer.setContextMenu(provider);

    // Bug 381: 3.1: remove extra items from contextual menus
    // getSite().registerContextMenu("seg.jUCMNav.editors.actionContributors.UrnContextMenuProvider", provider, viewer); //$NON-NLS-1$
    menuExtenders = new ArrayList(1);
    PartSite.registerContextMenu("seg.jUCMNav.editors.actionContributors.UrnContextMenuProvider", provider, viewer, true, //$NON-NLS-1$
            this, menuExtenders);
    // bug 531
    if (menuExtenders.get(0) != null) {
        provider.removeMenuListener((IMenuListener) menuExtenders.get(0));

    }
}
项目:relations    文件:GraphicalViewerCreator.java   
/**
 * Creates the viewer for the relations pane.
 *
 * @param inParent
 *            Composite
 * @return GraphicalViewer
 */
public GraphicalViewer createViewer(final Composite inParent) {
    final GraphicalViewer outViewer = new ScrollingGraphicalViewer();
    outViewer.createControl(inParent);

    // configure the viewer
    outViewer.getControl().setBackground(BG_COLOR);
    rootPart = new RelationsRootEditPart();
    outViewer.setRootEditPart(rootPart);

    final KeyHandler lKeyHandler = new BrowserKeyHandler(outViewer);
    lKeyHandler.put(KeyStroke.getPressed(SWT.CONTROL, SWT.NONE), new Action() {
        @Override
        public void run() {
            rootPart.makeMousOverPartClickable(true);
        }
    });
    lKeyHandler.put(KeyStroke.getReleased(SWT.CONTROL, SWT.CONTROL), new Action() {
        @Override
        public void run() {
            rootPart.makeMousOverPartClickable(false);
        }
    });
    outViewer.setKeyHandler(lKeyHandler);

    outViewer.setEditPartFactory(getEditPartFactory());

    return outViewer;
}
项目:ermaster-k    文件:NoWindowTest.java   
private static void run(Display display, int x) {
    Shell shell = new Shell(display);
    shell.setBounds(0, 0, 350, 350);

    shell.setLayout(new FillLayout(SWT.VERTICAL));

    // display.syncExec(new Runnable() {
    // public void run() {

    ERDiagramEditPartFactory editPartFactory = new ERDiagramEditPartFactory();
    GraphicalViewer viewer = new ScrollingGraphicalViewer();
    viewer.setControl(new FigureCanvas(shell));

    ScalableFreeformRootEditPart rootEditPart = new PagableFreeformRootEditPart(
            diagram);
    viewer.setRootEditPart(rootEditPart);

    viewer.setEditPartFactory(editPartFactory);
    viewer.setContents(diagram);

    viewer.getContents().refresh();

    // }
    // });

    shell.pack();
    shell.open();
    int count = 0;
    while (count < x) {
        if (!display.readAndDispatch()) {
            try {
                Thread.sleep(1000);
                count++;
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
    viewer.getContents().deactivate();
    // display.dispose();
}
项目:NEXCORE-UML-Modeler    文件:SaveToImageAction.java   
/**
     * @see org.eclipse.jface.action.Action#run()
     */
    public void run() {

        if (getSelectedObjects().size() < 1)
            return;

        Object obj = getSelectedObjects().get(0);

        if (!(obj instanceof EditPart))
            return;

        ScalableFreeformRootEditPart root = (ScalableFreeformRootEditPart) ((EditPart) obj).getRoot();
        ;
        ScrollingGraphicalViewer viewer = (ScrollingGraphicalViewer) root.getViewer();

        FileDialog dlg = new FileDialog(viewer.getControl().getShell(), SWT.SAVE);

        dlg.setFilterNames(new String[] { "JPEG Files (*.jpg)", "PNG Files (*.png)", "Bitmap Files (*.bmp)" });
        dlg.setFilterExtensions(new String[] { "*.jpg", "*.png", "*.bmp" });

        String fileName = dlg.open();

        if (fileName == null)
            return;

        LayerManager lm = (LayerManager) viewer.getEditPartRegistry().get(LayerManager.ID);
        IFigure figure = lm.getLayer(LayerConstants.PRINTABLE_LAYERS);
//        IFigure backgroundfigure = lm.getLayer(LayerConstants.FEEDBACK_LAYER);

//        Display display = getWorkbenchPart().getSite().getWorkbenchWindow().getWorkbench().getDisplay();

//        Image img = new Image(display, figure.getSize().width, figure.getSize().height);
//        GC gc = new GC(img);
//        SWTGraphics graphics = new SWTGraphics(gc);
//
//        figure.setLocation(new Point(0, 0));
//        backgroundfigure.setLocation(new Point(0, 0));
//        try {
//            root.getZoomManager().setZoom(0.001);
//            figure.paint(graphics);
//            backgroundfigure.paint(graphics);
//        } finally {
//            root.getZoomManager().setZoom(1);
//            figure.paint(graphics);
//            gc.dispose();
//            graphics.dispose();
//        }

        Diagram diagram = (Diagram) ((EditPart) obj).getModel();
        DiagramImageUtil diagramUtil = new DiagramImageUtil(diagram);
        Display.getDefault().syncExec(diagramUtil);
        Image img = diagramUtil.getDiagramImage();

        ImageLoader loader = new ImageLoader();
        if (img == null) {
            img = new Image(null, figure.getSize().width, figure.getSize().height);
        }
        loader.data = new ImageData[] { img.getImageData() };

        if (fileName.toLowerCase().endsWith("jpg")) {
            loader.save(fileName, SWT.IMAGE_JPEG);
        } else if (fileName.toLowerCase().endsWith("png")) {
            loader.save(fileName, SWT.IMAGE_PNG);
        } else {
            loader.save(fileName, SWT.IMAGE_BMP);
        }
    }
项目:triquetrum    文件:TriqDiagramBehavior.java   
/**
 * Override this to enforce that connections can also be selected with a mouse drag marquee selection.
 */
@Override
protected void configureGraphicalViewer() {

  ScrollingGraphicalViewer viewer = (ScrollingGraphicalViewer) getDiagramContainer().getGraphicalViewer();

  ScalableRootEditPartAnimated rootEditPart = new ScalableRootEditPartAnimated(viewer, getConfigurationProvider()) {
    @Override
    protected GridLayer createGridLayer() {
      return new org.eclipse.graphiti.ui.internal.util.draw2d.GridLayer((IConfigurationProviderInternal) getConfigurationProvider());
    }

    @Override
    public DragTracker getDragTracker(Request req) {
      GFMarqueeDragTracker trckr = new GFMarqueeDragTracker(this);
      trckr.setMarqueeBehavior(GFMarqueeSelectionTool.BEHAVIOR_NODES_AND_CONNECTIONS);
      return trckr;
    }
  };

  // configure ZoomManager
  viewer.setRootEditPart(rootEditPart); // support

  // animation of the zoom
  ZoomManager zoomManager = rootEditPart.getZoomManager();
  List<String> zoomLevels = new ArrayList<>(3);
  zoomLevels.add(ZoomManager.FIT_ALL);
  zoomLevels.add(ZoomManager.FIT_WIDTH);
  zoomLevels.add(ZoomManager.FIT_HEIGHT);
  zoomManager.setZoomLevelContributions(zoomLevels);
  IToolBehaviorProvider toolBehaviorProvider = getConfigurationProvider().getDiagramTypeProvider().getCurrentToolBehaviorProvider();
  zoomManager.setZoomLevels(toolBehaviorProvider.getZoomLevels());

  this.initActionRegistry(zoomManager);

  // set the keyhandler.
  viewer.setKeyHandler((new GraphicalViewerKeyHandler(viewer)).setParent(getCommonKeyHandler()));

  // settings for grid and guides
  Diagram diagram = getConfigurationProvider().getDiagram();

  boolean snapToGrid = diagram.isSnapToGrid();
  int horizontalGridUnit = diagram.getGridUnit();
  int verticalGridUnit = diagram.getVerticalGridUnit();
  if (verticalGridUnit == -1) {
    // No vertical grid unit set (or old diagram before 0.8): use
    // vertical grid unit
    verticalGridUnit = horizontalGridUnit;
  }
  boolean gridVisisble = (horizontalGridUnit > 0) && (verticalGridUnit > 0);

  viewer.setProperty(SnapToGrid.PROPERTY_GRID_VISIBLE, new Boolean(gridVisisble));
  viewer.setProperty(SnapToGrid.PROPERTY_GRID_ENABLED, new Boolean(snapToGrid));
  viewer.setProperty(SnapToGrid.PROPERTY_GRID_SPACING, new Dimension(horizontalGridUnit, verticalGridUnit));
  viewer.setProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED, toolBehaviorProvider.isShowGuides());

  // context button manager
  IConfigurationProviderInternal configurationProvider = (IConfigurationProviderInternal) this.getConfigurationProvider();
  configurationProvider.setContextButtonManager(new ContextButtonManagerForPad(this, configurationProvider.getResourceRegistry()));
}
项目:PDFReporter-Studio    文件:SQLQueryDiagram.java   
public ScrollingGraphicalViewer getViewer() {
    return viewer;
}
项目:PDFReporter-Studio    文件:AbstractVisualEditor.java   
@Override
protected void createGraphicalViewer(Composite parent) {
    rulerComp = new JDRulerComposite(parent, SWT.NONE);
    super.createGraphicalViewer(rulerComp);
    rulerComp.setGraphicalViewer((ScrollingGraphicalViewer) getGraphicalViewer());
}
项目:ermaster-nhit    文件:NoWindowTest.java   
private static void run(Display display, int x) {
    Shell shell = new Shell(display);
    shell.setBounds(0, 0, 350, 350);

    shell.setLayout(new FillLayout(SWT.VERTICAL));

    // display.syncExec(new Runnable() {
    // public void run() {

    ERDiagramEditPartFactory editPartFactory = new ERDiagramEditPartFactory();
    GraphicalViewer viewer = new ScrollingGraphicalViewer();
    viewer.setControl(new FigureCanvas(shell));

    ScalableFreeformRootEditPart rootEditPart = new PagableFreeformRootEditPart(
            diagram);
    viewer.setRootEditPart(rootEditPart);

    viewer.setEditPartFactory(editPartFactory);
    viewer.setContents(diagram);

    viewer.getContents().refresh();

    // }
    // });

    shell.pack();
    shell.open();
    int count = 0;
    while (count < x) {
        if (!display.readAndDispatch()) {
            try {
                Thread.sleep(1000);
                count++;
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
    viewer.getContents().deactivate();
    // display.dispose();
}
项目:gef-gwt    文件:RulerComposite.java   
/**
 * Creates rulers for the given graphical viewer.
 * <p>
 * The primaryViewer or its Control cannot be <code>null</code>. The
 * primaryViewer's Control should be a FigureCanvas and a child of this
 * Composite. This method should only be invoked once.
 * <p>
 * To create ruler(s), simply add the RulerProvider(s) (with the right key:
 * RulerProvider.PROPERTY_HORIZONTAL_RULER or
 * RulerProvider.PROPERTY_VERTICAL_RULER) as a property on the given viewer.
 * It can be done after this method is invoked.
 * RulerProvider.PROPERTY_RULER_VISIBILITY can be used to show/hide the
 * rulers.
 * 
 * @param primaryViewer
 *            The graphical viewer for which the rulers have to be created
 */
public void setGraphicalViewer(ScrollingGraphicalViewer primaryViewer) {
    // pre-conditions
    Assert.isNotNull(primaryViewer);
    Assert.isNotNull(primaryViewer.getControl());
    Assert.isTrue(diagramViewer == null);

    diagramViewer = primaryViewer;
    editor = (FigureCanvas) diagramViewer.getControl();

    // layout whenever the scrollbars are shown or hidden, and whenever the
    // RulerComposite
    // is resized
    layoutListener = new Listener() {
        public void handleEvent(Event event) {
            // @TODO:Pratik If you use Display.asyncExec(runnable) here,
            // some flashing
            // occurs. You can see it when the palette is in the editor, and
            // you hit
            // the button to show/hide it.
            layout(true);
        }
    };
    addListener(SWT.Resize, layoutListener);
    editor.getHorizontalBar().addListener(SWT.Show, layoutListener);
    editor.getHorizontalBar().addListener(SWT.Hide, layoutListener);
    editor.getVerticalBar().addListener(SWT.Show, layoutListener);
    editor.getVerticalBar().addListener(SWT.Hide, layoutListener);

    propertyListener = new PropertyChangeListener() {
        public void propertyChange(PropertyChangeEvent evt) {
            String property = evt.getPropertyName();
            if (RulerProvider.PROPERTY_HORIZONTAL_RULER.equals(property)) {
                setRuler(
                        (RulerProvider) diagramViewer
                                .getProperty(RulerProvider.PROPERTY_HORIZONTAL_RULER),
                        PositionConstants.NORTH);
            } else if (RulerProvider.PROPERTY_VERTICAL_RULER
                    .equals(property)) {
                setRuler(
                        (RulerProvider) diagramViewer
                                .getProperty(RulerProvider.PROPERTY_VERTICAL_RULER),
                        PositionConstants.WEST);
            } else if (RulerProvider.PROPERTY_RULER_VISIBILITY
                    .equals(property))
                setRulerVisibility(((Boolean) diagramViewer
                        .getProperty(RulerProvider.PROPERTY_RULER_VISIBILITY))
                        .booleanValue());
        }
    };
    diagramViewer.addPropertyChangeListener(propertyListener);
    Boolean rulerVisibility = (Boolean) diagramViewer
            .getProperty(RulerProvider.PROPERTY_RULER_VISIBILITY);
    if (rulerVisibility != null)
        setRulerVisibility(rulerVisibility.booleanValue());
    setRuler(
            (RulerProvider) diagramViewer
                    .getProperty(RulerProvider.PROPERTY_HORIZONTAL_RULER),
            PositionConstants.NORTH);
    setRuler(
            (RulerProvider) diagramViewer
                    .getProperty(RulerProvider.PROPERTY_VERTICAL_RULER),
            PositionConstants.WEST);
}
项目:gef-gwt    文件:GwtRulerComposite.java   
/**
 * Creates rulers for the given graphical viewer.
 * <p>
 * The primaryViewer or its Control cannot be <code>null</code>. The
 * primaryViewer's Control should be a FigureCanvas and a child of this
 * Composite. This method should only be invoked once.
 * <p>
 * To create ruler(s), simply add the RulerProvider(s) (with the right key:
 * RulerProvider.PROPERTY_HORIZONTAL_RULER or
 * RulerProvider.PROPERTY_VERTICAL_RULER) as a property on the given viewer.
 * It can be done after this method is invoked.
 * RulerProvider.PROPERTY_RULER_VISIBILITY can be used to show/hide the
 * rulers.
 * 
 * @param primaryViewer
 *            The graphical viewer for which the rulers have to be created
 */
public void setGraphicalViewer(ScrollingGraphicalViewer primaryViewer) {
    // pre-conditions
    Assert.isNotNull(primaryViewer);
    Assert.isNotNull(primaryViewer.getControl());
    Assert.isTrue(diagramViewer == null);

    diagramViewer = primaryViewer;
    editor = (FigureCanvas) diagramViewer.getControl();

    // layout whenever the scrollbars are shown or hidden, and whenever the
    // RulerComposite
    // is resized
    layoutListener = new Listener() {
        public void handleEvent(Event event) {
            // @TODO:Pratik If you use Display.asyncExec(runnable) here,
            // some flashing
            // occurs. You can see it when the palette is in the editor, and
            // you hit
            // the button to show/hide it.
            layout(true);
        }
    };
    // addListener(SWT.Resize, layoutListener);
    editor.getHorizontalBar().addListener(SWT.Show, layoutListener);
    editor.getHorizontalBar().addListener(SWT.Hide, layoutListener);
    editor.getVerticalBar().addListener(SWT.Show, layoutListener);
    editor.getVerticalBar().addListener(SWT.Hide, layoutListener);

    propertyListener = new PropertyChangeListener() {
        public void propertyChange(PropertyChangeEvent evt) {
            String property = evt.getPropertyName();
            if (RulerProvider.PROPERTY_HORIZONTAL_RULER.equals(property)) {
                setRuler(
                        (RulerProvider) diagramViewer
                                .getProperty(RulerProvider.PROPERTY_HORIZONTAL_RULER),
                        PositionConstants.NORTH);
            } else if (RulerProvider.PROPERTY_VERTICAL_RULER
                    .equals(property)) {
                setRuler(
                        (RulerProvider) diagramViewer
                                .getProperty(RulerProvider.PROPERTY_VERTICAL_RULER),
                        PositionConstants.WEST);
            } else if (RulerProvider.PROPERTY_RULER_VISIBILITY
                    .equals(property))
                setRulerVisibility(((Boolean) diagramViewer
                        .getProperty(RulerProvider.PROPERTY_RULER_VISIBILITY))
                        .booleanValue());
        }
    };
    diagramViewer.addPropertyChangeListener(propertyListener);
    Boolean rulerVisibility = (Boolean) diagramViewer
            .getProperty(RulerProvider.PROPERTY_RULER_VISIBILITY);
    if (rulerVisibility != null)
        setRulerVisibility(rulerVisibility.booleanValue());
    setRuler(
            (RulerProvider) diagramViewer
                    .getProperty(RulerProvider.PROPERTY_HORIZONTAL_RULER),
            PositionConstants.NORTH);
    setRuler(
            (RulerProvider) diagramViewer
                    .getProperty(RulerProvider.PROPERTY_VERTICAL_RULER),
            PositionConstants.WEST);
}
项目:Environment    文件:CustomDiagramBehavior.java   
protected void configureGraphicalViewer() {

        ScrollingGraphicalViewer viewer = (ScrollingGraphicalViewer) getDiagramContainer().getGraphicalViewer();

        FixedScalableFreeformRootEditPart rootEditPart = new FixedScalableFreeformRootEditPart() {

            protected GridLayer createGridLayer() {
                return new org.eclipse.graphiti.ui.internal.util.draw2d.GridLayer(
                        (IConfigurationProviderInternal) getConfigurationProvider());
            }

        };

        // configure ZoomManager
        viewer.setRootEditPart(rootEditPart); // support

        // animation of the zoom
        ZoomManager zoomManager = rootEditPart.getZoomManager();
        List<String> zoomLevels = new ArrayList<String>(3);
        zoomLevels.add(ZoomManager.FIT_ALL);
        zoomLevels.add(ZoomManager.FIT_WIDTH);
        zoomLevels.add(ZoomManager.FIT_HEIGHT);
        zoomManager.setZoomLevelContributions(zoomLevels);
        IToolBehaviorProvider toolBehaviorProvider = getConfigurationProvider().getDiagramTypeProvider()
                .getCurrentToolBehaviorProvider();
        zoomManager.setZoomLevels(toolBehaviorProvider.getZoomLevels());

        this.initActionRegistry(zoomManager);

        // set the keyhandler.
        viewer.setKeyHandler((new GraphicalViewerKeyHandler(viewer)).setParent(getCommonKeyHandler()));

        // settings for grid and guides
        Diagram diagram = getConfigurationProvider().getDiagram();

        boolean snapToGrid = diagram.isSnapToGrid();
        int horizontalGridUnit = diagram.getGridUnit();
        int verticalGridUnit = diagram.getVerticalGridUnit();
        if (verticalGridUnit == -1) {
            // No vertical grid unit set (or old diagram before 0.8): use
            // vertical grid unit
            verticalGridUnit = horizontalGridUnit;
        }
        boolean gridVisisble = (horizontalGridUnit > 0) && (verticalGridUnit > 0);

        viewer.setProperty(SnapToGrid.PROPERTY_GRID_VISIBLE, new Boolean(gridVisisble));
        viewer.setProperty(SnapToGrid.PROPERTY_GRID_ENABLED, new Boolean(snapToGrid));
        viewer.setProperty(SnapToGrid.PROPERTY_GRID_SPACING, new Dimension(horizontalGridUnit, verticalGridUnit));
        viewer.setProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED, toolBehaviorProvider.isShowGuides());

        // context button manager
        IConfigurationProviderInternal configurationProvider = (IConfigurationProviderInternal) this
                .getConfigurationProvider();
        configurationProvider.setContextButtonManager(new ContextButtonManagerForPad(this, configurationProvider
                .getResourceRegistry()));

    }
项目:jive    文件:SequenceDiagramView.java   
@Override
protected GraphicalViewer createGraphicalViewer()
{
  return new ScrollingGraphicalViewer();
}
项目:jive    文件:ContourDiagramView.java   
@Override
protected GraphicalViewer createGraphicalViewer()
{
  return new ScrollingGraphicalViewer();
}
项目:birt    文件:ReportEditorWithRuler.java   
protected void createGraphicalViewer( Composite parent )
    {
        // bidi_hcg start
        /*
         * If Bidi support is enabled - check model orientation and set the view
         * orientation accordingly
         */

        if ( getModel( ).isDirectionRTL( ) )
            rulerComp = new EditorRulerComposite( parent, SWT.RIGHT_TO_LEFT );
        else
            rulerComp = new EditorRulerComposite( parent, SWT.LEFT_TO_RIGHT );

//      else
//      // bidi_hcg end
//          rulerComp = new EditorRulerComposite( parent, SWT.NONE );
        super.createGraphicalViewer( rulerComp );
        if(Constants.OS_LINUX.equalsIgnoreCase( Platform.getOS( ) )){//Linux and Windows has different color behavior.Add OS judgment to set rulerCompsite background color.
            rulerComp.setBackground(ColorManager.getColor(240, 240, 240));
        }
        rulerComp.setGraphicalViewer( (ScrollingGraphicalViewer) getGraphicalViewer( ), getModel( ) );

        // addAction( new ToggleRulerVisibilityAction( getGraphicalViewer( ) ) {
        //
        // public boolean isChecked( )
        // {
        // return ( (LayoutEditor) editingDomainEditor ).getRulerState( );
        // }
        //
        // public void run( )
        // {
        // // if ( getButtonPane( ) != null )
        // // {
        // // getButtonPane( ).setButtonSelection( ButtonPaneComposite.BUTTON3,
        // // !isChecked( ) );
        // // }
        // getGraphicalViewer( ).setProperty(
        // RulerProvider.PROPERTY_RULER_VISIBILITY,
        // Boolean.valueOf( !isChecked( ) ) );
        // ( (LayoutEditor) editingDomainEditor ).setRulerState( !isChecked( ),
        // LayoutEditor.DESIGNER_INDEX );
        // }
        // } );
        //
        // addAction( new ToggleMarginVisibilityAction( getGraphicalViewer( ) )
        // );
    }
项目:birt    文件:GraphicalViewerKeyHandler.java   
/**
 * @param viewer
 */
public GraphicalViewerKeyHandler( ScrollingGraphicalViewer viewer )
{
    super( );
    this.viewer = viewer;
}
项目:birt    文件:LinkGroupsPage.java   
private Composite createCubeArea( Composite parent )
{
    Composite viewerContent = new Composite( parent, SWT.BORDER );
    GridData gd = new GridData( GridData.FILL_BOTH );
    gd.widthHint = 500;
    gd.heightHint = 300;
    viewerContent.setLayoutData( gd );
    viewerContent.setLayout( new FillLayout( ) );
    viewer = new ScrollingGraphicalViewer( );
    EditDomain editDomain = new EditDomain( );
    ScalableFreeformRootEditPart root = new ScalableFreeformRootEditPart( );
    viewer.setRootEditPart( root );
    viewer.setEditDomain( editDomain );
    viewer.createControl( viewerContent );
    viewer.getControl( ).setBackground( ColorConstants.listBackground );
    factory = new GraphicalEditPartsFactory( );
    viewer.setEditPartFactory( factory );
    viewer.setKeyHandler( new GraphicalViewerKeyHandler( viewer ) );
    viewer.addSelectionChangedListener( new ISelectionChangedListener( ) {

        public void selectionChanged( SelectionChangedEvent event )
        {
            if ( event.getSelection( ) != null )
            {
                StructuredSelection selection = (StructuredSelection) event.getSelection( );
                if ( selection.getFirstElement( ) instanceof HierarchyNodeEditPart
                        || selection.getFirstElement( ) instanceof DatasetNodeEditPart )
                {
                    Object obj = selection.getFirstElement( );
                    if ( obj instanceof HierarchyNodeEditPart )
                    {
                        TabularHierarchyHandle hierarchy = (TabularHierarchyHandle) ( (HierarchyNodeEditPart) obj ).getModel( );
                        if ( hierarchy.getPrimaryKeys( ) != null
                                && hierarchy.getPrimaryKeys( ).size( ) > 0 )
                        {
                            filterButton.setEnabled( false );
                        }
                        else
                            filterButton.setEnabled( true );
                    }
                    else
                        filterButton.setEnabled( true );
                }
                else
                    filterButton.setEnabled( false );
            }
            else
                filterButton.setEnabled( false );
        }
    } );
    load( );
    return viewerContent;
}
项目:seg.jUCMNav    文件:EvaluationStrategyManager.java   
public void setKPIViewer(ScrollingGraphicalViewer viewer) {
    this.kpiViewer = viewer;
}
项目:seg.jUCMNav    文件:ProgressTests.java   
public ScrollingGraphicalViewer getGraphicalViewer() {
    return (ScrollingGraphicalViewer) editor.getCurrentPage().getGraphicalViewer();
}
项目:ermasterr    文件:ExportToImageManager.java   
private static GraphicalViewer createGraphicalViewer(final Display display, final ERDiagram diagram) {

        final GraphicalViewer[] viewerHolder = new GraphicalViewer[1];

        display.syncExec(new Runnable() {

            @Override
            public void run() {
                final Shell shell = new Shell(display);
                shell.setLayout(new GridLayout(1, false));

                final ERDiagramEditPartFactory editPartFactory = new ERDiagramEditPartFactory();

                final GraphicalViewer viewer = new ScrollingGraphicalViewer();

                viewer.setControl(new FigureCanvas(shell));
                final ScalableFreeformRootEditPart rootEditPart = new PagableFreeformRootEditPart(diagram);
                viewer.setRootEditPart(rootEditPart);

                viewer.setEditPartFactory(editPartFactory);
                viewer.setContents(diagram);

                viewerHolder[0] = viewer;
            }

        });

        return viewerHolder[0];
    }
项目:ermaster-k    文件:ExportToImageManager.java   
private static GraphicalViewer createGraphicalViewer(final Display display,
        final ERDiagram diagram) {

    final GraphicalViewer[] viewerHolder = new GraphicalViewer[1];

    display.syncExec(new Runnable() {

        public void run() {
            Shell shell = new Shell(display);
            shell.setLayout(new GridLayout(1, false));

            ERDiagramEditPartFactory editPartFactory = new ERDiagramEditPartFactory();

            GraphicalViewer viewer = new ScrollingGraphicalViewer();

            viewer.setControl(new FigureCanvas(shell));
            ScalableFreeformRootEditPart rootEditPart = new PagableFreeformRootEditPart(
                    diagram);
            viewer.setRootEditPart(rootEditPart);

            viewer.setEditPartFactory(editPartFactory);
            viewer.setContents(diagram);

            viewerHolder[0] = viewer;
        }

    });

    return viewerHolder[0];
}
项目:ermaster-nhit    文件:ExportToImageManager.java   
private static GraphicalViewer createGraphicalViewer(final Display display,
        final ERDiagram diagram) {

    final GraphicalViewer[] viewerHolder = new GraphicalViewer[1];

    display.syncExec(new Runnable() {

        public void run() {
            Shell shell = new Shell(display);
            shell.setLayout(new GridLayout(1, false));

            ERDiagramEditPartFactory editPartFactory = new ERDiagramEditPartFactory();

            GraphicalViewer viewer = new ScrollingGraphicalViewer();

            viewer.setControl(new FigureCanvas(shell));
            ScalableFreeformRootEditPart rootEditPart = new PagableFreeformRootEditPart(
                    diagram);
            viewer.setRootEditPart(rootEditPart);

            viewer.setEditPartFactory(editPartFactory);
            viewer.setContents(diagram);

            viewerHolder[0] = viewer;
        }

    });

    return viewerHolder[0];
}
项目:gemoc-studio    文件:AbstractTimelineView.java   
/**
 * Gets the timeline viewer.
 * 
 * @return the timeline viewer
 */
public ScrollingGraphicalViewer getTimelineViewer() {
    return timelineViewer;
}