How can we add a picture to GMF Editor background, the full picture on canvas . [message #204920] |
Wed, 10 September 2008 07:49 |
Eclipse User |
|
|
|
Originally posted by: matengyue2006.126.com
How can we add a picture to GMF Editor background, the full picture on
canvas .
I rewrite the editor in configureGraphicalViewer () methods.The code
below, master guide!
/**
* @generated NOT
*/
protected void configureGraphicalViewer() {
super.configureGraphicalViewer();
configureGraphicalViewerGen();
//
saveImageFile(getDiagramGraphicalViewer(),"D:\\Blue hills.jpg");
DiagramRootEditPart root = (DiagramRootEditPart)
getDiagramGraphicalViewer()
.getRootEditPart();
LayeredPane printableLayers = (LayeredPane) root
.getLayer(LayerConstants.PRINTABLE_LAYERS);
//////Background Layer//////////////////
Layer backgroundLayer = new Layer() {
@Override
protected void paintFigure(Graphics graphics) {
super.paintFigure(graphics);
graphics.drawImage(getImageImage("images/Hall2.JPG"),
0, 0);
}
};
// IDiagramGraphicalViewer viewer = getDiagramGraphicalViewer();
// FigureCanvas figureCanvas = (FigureCanvas) viewer.getControl();
// int whhtt = figureCanvas.getBounds().height;
//
// FreeformLayer tayer = (FreeformLayer)
printableLayers.getChildren()
// .get(0);
// int whhhcan = tayer.getBounds().height;
backgroundLayer.setSize(750, 600);
////////////////////////////////////////
FreeformLayer extLabelsLayer = new FreeformLayer();
extLabelsLayer.setLayoutManager(new DelegatingLayout());
printableLayers.addLayerAfter(extLabelsLayer, "ExtLabels Layer",
LayerConstants.PRIMARY_LAYER);
//////Insert Background Layer///////////
printableLayers.addLayerBefore(backgroundLayer, "Background Layer",
LayerConstants.PRIMARY_LAYER);
////////////////////////////////////////
LayeredPane scalableLayers = (LayeredPane) root
.getLayer(LayerConstants.SCALABLE_LAYERS);
FreeformLayer scaledFeedbackLayer = new FreeformLayer();
scaledFeedbackLayer.setEnabled(false);
scalableLayers.addLayerAfter(scaledFeedbackLayer,
LayerConstants.SCALED_FEEDBACK_LAYER,
DiagramRootEditPart.DECORATION_UNPRINTABLE_LAYER);
}
|
|
|
Powered by
FUDForum. Page generated in 0.02454 seconds