Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » GEF » How to catch editor and / or window resize event
How to catch editor and / or window resize event [message #246601] Wed, 17 December 2008 17:50 Go to next message
Marcin is currently offline MarcinFriend
Messages: 2
Registered: July 2009
Junior Member
I need to resize one type of my figures according to height of editor.

the rectangle I mean has to be always at least that height as editor is.

anyone how to catch editor and / or window resize event in an edit part or
make it in different way?
Re: How to catch editor and / or window resize event [message #246622 is a reply to message #246601] Thu, 18 December 2008 16:16 Go to previous message
Marcin is currently offline MarcinFriend
Messages: 2
Registered: July 2009
Junior Member
answering to myself (how cute!)

in class that extends GraphicalEditorWithFlyoutPalette

protected void configureGraphicalViewer() {
super.configureGraphicalViewer();

GraphicalViewer viewer = getGraphicalViewer();
viewer.setEditPartFactory(new ModelEditPartFactory(viewer));

viewer.setKeyHandler(new GraphicalViewerKeyHandler(viewer));
[...]

}


in the edit part factory

private GraphicalViewer viewer;
public ModelEditPartFactory(GraphicalViewer viewer) {
this.viewer = viewer;
}


private EditPart getPartForElement(Object modelElement) {
if (modelElement instanceof YourDiagram) {
DiagramEditPart part = new DiagramEditPart();
viewer.getControl().addControlListener(part);
viewer.addPropertyChangeListener(part);
return part;
}
[...]
}

then DiagramEditPart has to implement ControlListener, so also this method:

public void controlResized(ControlEvent e) {
FigureCanvas source = (FigureCanvas) e.getSource();
//the following returns childrens
List<AbstractModelElement> elements = getCastedModel().getElements();
for(YourElement element : elements) {
if(element.getSize().height < source.getBounds().height) {
Dimension size = element.getSize();
size.height = source.getBounds().height;
element.setSize(size);

}
}

}
Previous Topic:Eyedropper tool
Next Topic:Using grouped SWT widgets in GMF editor.
Goto Forum:
  


Current Time: Wed Apr 24 17:48:20 GMT 2024

Powered by FUDForum. Page generated in 0.02815 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top