[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Newsgroup Home]
|
[news.eclipse.modeling.gmf] Re: How to call own layoutProvider from "Arrange All"
|
Hi Martin,
It seems to me that your class value in plugin.xml is not the right one :
<layoutProvider class="ui.diagram.providers.LayoutProvider">
should be :
<layoutProvider class="yourcompany.yourpackage.PscViewerLayoutProvider">
BTW debugging with system.out is evil :P, why you do not simply add breakpoints ?
Regards,
Mariot
Martin Jacob a écrit :
> Hi everyone,
>
> I was searching on the mailing list but did not find a sufficient
> answer fop my problem.
>
> I want to use my own layoutProvider while using the already existing
> menu item "Arrange All".
>
>
> I did the following things so far:
>
> 1. Add the extension point, see below:
>
> <extension name="PSC Viewer Layout Provider"
> point="org.eclipse.gmf.runtime.diagram.ui.layoutProviders">
> <layoutProvider class="ui.diagram.providers.LayoutProvider">
> <Priority name="Highest">
> </Priority>
> </layoutProvider>
> </extension>
>
>
> 2. Create a class derived from
> org.eclipse.gmf.runtime.diagram.ui.services.layout.AbstractLayoutNodeProvider
>
>
> public class PscViewerLayoutProvider extends AbstractLayoutNodeProvider {
>
> public Runnable layoutLayoutNodes(List layoutNodes,
> boolean offsetFromBoundingBox, IAdaptable layoutHint) {
> System.out.println("layoutNodes: "+layoutNodes.toString());
> System.out.println("offsetFromBoundingBox: "+offsetFromBoundingBox);
> System.out.println("layoutHint: "+layoutHint.toString());
> return null;
> }
>
> public boolean provides(IOperation operation) {
> System.out.println(""+operation.toString());
> if (operation instanceof
> org.eclipse.gmf.runtime.diagram.ui.services.layout.ILayoutNodeOperation) {
> System.out.println("true");
> return true;
> }
> System.out.println("false");
> return false;
> }
> }
>
> I would expect to see at least the println while calling "Arrange All".
> But I don't see any thing at System.out!
>
> Does any one could please give me a hint how to solve the problem?
>
> Thanks, Martin