GEF Displaying rulers [message #788403] |
Wed, 01 February 2012 14:12  |
Eclipse User |
|
|
|
Hi there! My first post. I'm starting my editor in gef, and I came across the following problem: how to display rulers on my editor? I've read API documentation about Ruler Composite and Ruler Provider and it seem's pretty easy to implement all the logics that have to me done. But i can't simply display the rullers, they won't show. I don't understand, should an empty Ruler Composite dispay a 'basic' empty ruler? Here is my code:
public class VisualEditor extends GraphicalEditorWithFlyoutPalette {
RulerComposite rulerComp;
public VisualEditor() {
setEditDomain(new DefaultEditDomain(this));
}
@Override
protected void initializeGraphicalViewer() {
super.initializeGraphicalViewer();
getGraphicalViewer().setContents(ContentHelper.getDummyRoot());
}
@Override
protected void configureGraphicalViewer() {
super.configureGraphicalViewer();
getGraphicalViewer().setEditPartFactory(new VisualEditPartFactory());
getGraphicalViewer().setProperty(RulerProvider.PROPERTY_RULER_VISIBILITY, true);
}
@Override
protected PaletteRoot getPaletteRoot() {
return new VisualEditorPalette();
}
@Override
public void doSave(IProgressMonitor monitor) {
// TODO Auto-generated method stub
}
protected void createGraphicalViewer(Composite parent) {
rulerComp = new RulerComposite(parent, SWT.NONE);
super.createGraphicalViewer(rulerComp);
rulerComp.setGraphicalViewer((ScrollingGraphicalViewer) getGraphicalViewer());
}
protected Control getGraphicalControl() {
return rulerComp;
}
}
[Updated on: Wed, 01 February 2012 14:29] by Moderator
|
|
|
Re: GEF Displaying rulers [message #798448 is a reply to message #788403] |
Tue, 14 February 2012 13:01  |
Eclipse User |
|
|
|
Hi Dark Diver,
looking at the Logic example, I thing you should provide a ruler provider:
LogicRuler ruler = getLogicDiagram().getRuler(PositionConstants.WEST);
RulerProvider provider = null;
if (ruler != null) {
provider = new LogicRulerProvider(ruler);
}
getGraphicalViewer().setProperty(RulerProvider.PROPERTY_VERTICAL_RULER, provider);
ruler = getLogicDiagram().getRuler(PositionConstants.NORTH);
provider = null;
if (ruler != null) {
provider = new LogicRulerProvider(ruler);
}
getGraphicalViewer().setProperty(RulerProvider.PROPERTY_HORIZONTAL_RULER, provider);
[Updated on: Tue, 14 February 2012 13:02] by Moderator
|
|
|
Powered by
FUDForum. Page generated in 0.04797 seconds