Community
Participate
Working Groups
Flatten the palette - get rid of the groups. Let the user to customize the palette in accordance with his/her needs.
Fixed in 2932
Rémi the following exception occurs with the palette : eclipse.buildId=M20100909-0800 java.version=1.6.0_22 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=fr_FR Framework arguments: -product org.eclipse.platform.ide Command-line arguments: -product org.eclipse.platform.ide -data C:\Workspaces\Papyrus-0.7.X/../Papyrus-0.7.X-Runtime -dev file:C:/Workspaces/Papyrus-0.7.X/.metadata/.plugins/org.eclipse.pde.core/Papyrus-0.7.X-Runtime/dev.properties -os win32 -ws win32 -arch x86 -consoleLog Error Fri Nov 05 11:42:10 CET 2010 Unexpected Error java.lang.NullPointerException at org.eclipse.papyrus.diagram.common.service.palette.Configuration.buildConfiguration(Configuration.java:156) at org.eclipse.papyrus.diagram.common.service.palette.Configuration.<init>(Configuration.java:82) at org.eclipse.papyrus.diagram.common.service.palette.StereotypePostAction.init(StereotypePostAction.java:252) at org.eclipse.papyrus.diagram.common.service.palette.StereotypeAspectActionProvider.createAction(StereotypeAspectActionProvider.java:48) at org.eclipse.papyrus.diagram.common.service.XMLRequiredProfileFactory.traverseAspectToolEntryNode(XMLRequiredProfileFactory.java:97) at org.eclipse.papyrus.diagram.common.service.XMLDefinitionPaletteParser.parseAspectToolNode(XMLDefinitionPaletteParser.java:89) at org.eclipse.papyrus.diagram.common.service.XMLDefinitionPaletteParser.parsePaletteContent(XMLDefinitionPaletteParser.java:76) at org.eclipse.papyrus.diagram.common.service.XMLDefinitionPaletteParser.parserDrawerNode(XMLDefinitionPaletteParser.java:101) at org.eclipse.papyrus.diagram.common.service.XMLDefinitionPaletteParser.parsePaletteContent(XMLDefinitionPaletteParser.java:68) at org.eclipse.papyrus.diagram.common.service.XMLDefinitionPaletteParser.parsePaletteDefinition(XMLDefinitionPaletteParser.java:49) at org.eclipse.papyrus.diagram.common.service.PluginPaletteProvider.getRequiredProfiles(PluginPaletteProvider.java:112) at org.eclipse.papyrus.diagram.common.part.PaletteUtil.areRequiredProfileApplied(PaletteUtil.java:440) at org.eclipse.papyrus.diagram.common.service.PapyrusPaletteService$ProviderDescriptor.provides(PapyrusPaletteService.java:175) at org.eclipse.gmf.runtime.common.core.service.Service.safeProvides(Service.java:860) at org.eclipse.gmf.runtime.common.core.service.ExecutionStrategy.getUncachedProviders(ExecutionStrategy.java:255) at org.eclipse.gmf.runtime.common.core.service.Service.getProviders(Service.java:538) at org.eclipse.gmf.runtime.common.core.service.ExecutionStrategy$4.execute(ExecutionStrategy.java:179) at org.eclipse.gmf.runtime.common.core.service.Service.execute(Service.java:652) at org.eclipse.papyrus.diagram.common.service.PapyrusPaletteService.execute(PapyrusPaletteService.java:523) at org.eclipse.papyrus.diagram.common.service.PapyrusPaletteService.contributeToPalette(PapyrusPaletteService.java:501) at org.eclipse.papyrus.diagram.common.service.PapyrusPaletteService$1.run(PapyrusPaletteService.java:540) at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.runExclusive(TransactionalEditingDomainImpl.java:328) at org.eclipse.papyrus.diagram.common.service.PapyrusPaletteService.createPalette(PapyrusPaletteService.java:537) at org.eclipse.papyrus.diagram.clazz.part.UMLDiagramEditor.createPaletteRoot(UMLDiagramEditor.java:135) at org.eclipse.papyrus.diagram.clazz.part.UMLDiagramEditor.createPaletteViewerProvider(UMLDiagramEditor.java:323) at org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditorWithFlyOutPalette.getPaletteViewerProvider(DiagramEditorWithFlyOutPalette.java:432) at org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditorWithFlyOutPalette.createPartControl(DiagramEditorWithFlyOutPalette.java:327) at org.eclipse.gmf.runtime.diagram.ui.resources.editor.parts.DiagramDocumentEditor.createPartControl(DiagramDocumentEditor.java:1510) at org.eclipse.papyrus.sasheditor.internal.EditorPart.createEditorPartControl(EditorPart.java:263) at org.eclipse.papyrus.sasheditor.internal.EditorPart.createPartControl(EditorPart.java:169) at org.eclipse.papyrus.sasheditor.internal.TabFolderPart.createChildPart(TabFolderPart.java:903) at org.eclipse.papyrus.sasheditor.internal.TabFolderPart.createTabItem(TabFolderPart.java:828) at org.eclipse.papyrus.sasheditor.internal.TabFolderPart.synchronize2(TabFolderPart.java:743) at org.eclipse.papyrus.sasheditor.internal.RootPart.synchronize2(RootPart.java:139) at org.eclipse.papyrus.sasheditor.internal.SashWindowsContainer.refreshTabsInternal(SashWindowsContainer.java:386) at org.eclipse.papyrus.sasheditor.internal.SashWindowsContainer.refreshTabs(SashWindowsContainer.java:339) at org.eclipse.papyrus.sasheditor.editor.AbstractMultiPageSashEditor.refreshTabs(AbstractMultiPageSashEditor.java:171) at org.eclipse.papyrus.core.editor.CoreMultiDiagramEditor.access$5(CoreMultiDiagramEditor.java:1) at org.eclipse.papyrus.core.editor.CoreMultiDiagramEditor$3.contentChanged(CoreMultiDiagramEditor.java:193) at org.eclipse.papyrus.sasheditor.contentprovider.di.internal.ContentChangedEventProvider.fireContentChanged(ContentChangedEventProvider.java:162) at org.eclipse.papyrus.sasheditor.contentprovider.di.internal.ContentChangedEventProvider$EMFAdapter.notifyChanged(ContentChangedEventProvider.java:194) at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:380) at org.eclipse.emf.ecore.util.EcoreEList.dispatchNotification(EcoreEList.java:255) at org.eclipse.emf.common.notify.impl.NotifyingListImpl.addUnique(NotifyingListImpl.java:300) at org.eclipse.emf.common.util.AbstractEList.add(AbstractEList.java:307) at org.eclipse.papyrus.sashwindows.di.impl.TabFolderImpl.addPage(TabFolderImpl.java:91) at org.eclipse.papyrus.sashwindows.di.impl.SashModelImpl.addPage(SashModelImpl.java:145) at org.eclipse.papyrus.sasheditor.contentprovider.di.internal.PageMngrImpl.openPage(PageMngrImpl.java:141) at org.eclipse.papyrus.core.adaptor.gmf.AbstractPapyrusGmfCreateDiagramCommandHandler.openDiagram(AbstractPapyrusGmfCreateDiagramCommandHandler.java:190) at org.eclipse.papyrus.core.adaptor.gmf.AbstractPapyrusGmfCreateDiagramCommandHandler$1.doExecuteWithResult(AbstractPapyrusGmfCreateDiagramCommandHandler.java:142) at org.eclipse.gmf.runtime.emf.commands.core.command.AbstractTransactionalCommand.doExecute(AbstractTransactionalCommand.java:247) at org.eclipse.emf.workspace.AbstractEMFOperation.execute(AbstractEMFOperation.java:150) at org.eclipse.core.commands.operations.DefaultOperationHistory.execute(DefaultOperationHistory.java:511) at org.eclipse.papyrus.core.adaptor.gmf.AbstractPapyrusGmfCreateDiagramCommandHandler.runAsTransaction(AbstractPapyrusGmfCreateDiagramCommandHandler.java:149) at org.eclipse.papyrus.core.adaptor.gmf.AbstractPapyrusGmfCreateDiagramCommandHandler.runAsTransaction(AbstractPapyrusGmfCreateDiagramCommandHandler.java:99) at org.eclipse.papyrus.core.adaptor.gmf.AbstractPapyrusGmfCreateDiagramCommandHandler.execute(AbstractPapyrusGmfCreateDiagramCommandHandler.java:78) at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:293) at org.eclipse.core.commands.Command.executeWithChecks(Command.java:476) at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508) at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:169) at org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(SlaveHandlerService.java:241) at org.eclipse.ui.menus.CommandContributionItem.handleWidgetSelection(CommandContributionItem.java:820) at org.eclipse.ui.menus.CommandContributionItem.access$19(CommandContributionItem.java:806) at org.eclipse.ui.menus.CommandContributionItem$5.handleEvent(CommandContributionItem.java:796) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) at org.eclipse.equinox.launcher.Main.run(Main.java:1407) at org.eclipse.equinox.launcher.Main.main(Main.java:1383)
commit a fix in the NPE class. Could you test if the problem is resolved? The modified class is located in {o.e.p}.diagram.common plugin.
By "groups" I guess you mean button stack. In my opinion flattening the palette in this case lead to a palette with too many elements which is confusing for users. Note that even with "unflattened" palette, there were already a too large number of elements in the "Node" drawer. I suggest to add two drawers : - grouping FlowPort / FlowSpecification elements - grouping Type related elements (DataType, Unit, Dimension...) Do you have other suggestion ?
(In reply to comment #3) > commit a fix in the NPE class. Could you test if the problem is resolved? The > modified class is located in {o.e.p}.diagram.common plugin. It is resolved, thanks.
(In reply to comment #4) > By "groups" I guess you mean button stack. > > In my opinion flattening the palette in this case lead to a palette with too > many elements which is confusing for users. > Note that even with "unflattened" palette, there were already a too large > number of elements in the "Node" drawer. > > I suggest to add two drawers : > - grouping FlowPort / FlowSpecification elements > - grouping Type related elements (DataType, Unit, Dimension...) > I agree. So the bug was renamed to 'Reorganize the palette'
> > I suggest to add two drawers : > > - grouping FlowPort / FlowSpecification elements > > - grouping Type related elements (DataType, Unit, Dimension...) Initial grouping is committed as of r3216
(In reply to comment #7) > > > I suggest to add two drawers : > > > - grouping FlowPort / FlowSpecification elements > > > - grouping Type related elements (DataType, Unit, Dimension...) > > Initial grouping is committed as of r3216 But it seems that palette still can be organized better.