Search in sources :

Example 1 with EntityWizard

use of org.eclipse.vorto.wizard.datatype.EntityWizard in project vorto by eclipse.

the class DatatypeTreeViewer method initContextMenu.

protected void initContextMenu() {
    final MenuManager menuMgr = new MenuManager("#PopupMenuDt");
    Menu menu = menuMgr.createContextMenu(treeViewer.getControl());
    menuMgr.addMenuListener(new IMenuListener() {

        public void menuAboutToShow(IMenuManager manager) {
            if (!treeViewer.getStructuredSelection().isEmpty()) {
                final IModelElement model = (IModelElement) treeViewer.getStructuredSelection().getFirstElement();
                if (model.getId().getModelType() == ModelType.Datatype) {
                    menuMgr.add(ShareModelAction.newInstance(treeViewer, model));
                    menuMgr.add(DeleteModelAction.newInstance(localModelWorkspace, treeViewer, model));
                    menuMgr.add(new ProjectAction("New Mapping Model", ImageUtil.getImage("add_obj.gif"), treeViewer.getLocalModelWorkspace()) {

                        @Override
                        public void doAction() {
                            IModelElement firstElement = (IModelElement) treeViewer.getStructuredSelection().getFirstElement();
                            ModelId modelId = firstElement.getId();
                            WizardDialog dialog = new WizardDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), new MappingModelWizard(treeViewer.getLocalModelWorkspace().getProjectBrowser().getSelectedProject(), modelId));
                            dialog.create();
                            dialog.open();
                        }
                    });
                }
            }
            manager.add(new ProjectAction("New Entity", ImageUtil.getImage("add_obj.gif"), treeViewer.getLocalModelWorkspace()) {

                @Override
                public void doAction() {
                    WizardDialog wizardDialog = new WizardDialog(treeViewer.getControl().getShell(), new EntityWizard(treeViewer.getLocalModelWorkspace().getProjectBrowser().getSelectedProject()));
                    if (wizardDialog.open() == Window.OK) {
                        populate(treeViewer.getLocalModelWorkspace().getProjectBrowser().getSelectedProject().getModelElementsByType(ModelType.Datatype));
                    }
                }
            });
            manager.add(new ProjectAction("New Enum", ImageUtil.getImage("add_obj.gif"), treeViewer.getLocalModelWorkspace()) {

                @Override
                public void doAction() {
                    WizardDialog wizardDialog = new WizardDialog(treeViewer.getControl().getShell(), new EnumWizard(treeViewer.getLocalModelWorkspace().getProjectBrowser().getSelectedProject()));
                    if (wizardDialog.open() == Window.OK) {
                        populate(treeViewer.getLocalModelWorkspace().getProjectBrowser().getSelectedProject().getModelElementsByType(ModelType.Datatype));
                    }
                }
            });
        }
    });
    menuMgr.setRemoveAllWhenShown(true);
    this.treeViewer.getControl().setMenu(menu);
}
Also used : MappingModelWizard(org.eclipse.vorto.wizard.mapping.MappingModelWizard) EntityWizard(org.eclipse.vorto.wizard.datatype.EntityWizard) IModelElement(org.eclipse.vorto.core.ui.model.IModelElement) ProjectAction(org.eclipse.vorto.perspective.command.ProjectAction) EnumWizard(org.eclipse.vorto.wizard.datatype.EnumWizard) MenuManager(org.eclipse.jface.action.MenuManager) IMenuManager(org.eclipse.jface.action.IMenuManager) Menu(org.eclipse.swt.widgets.Menu) IMenuManager(org.eclipse.jface.action.IMenuManager) WizardDialog(org.eclipse.jface.wizard.WizardDialog) IMenuListener(org.eclipse.jface.action.IMenuListener) ModelId(org.eclipse.vorto.core.api.model.model.ModelId)

Aggregations

IMenuListener (org.eclipse.jface.action.IMenuListener)1 IMenuManager (org.eclipse.jface.action.IMenuManager)1 MenuManager (org.eclipse.jface.action.MenuManager)1 WizardDialog (org.eclipse.jface.wizard.WizardDialog)1 Menu (org.eclipse.swt.widgets.Menu)1 ModelId (org.eclipse.vorto.core.api.model.model.ModelId)1 IModelElement (org.eclipse.vorto.core.ui.model.IModelElement)1 ProjectAction (org.eclipse.vorto.perspective.command.ProjectAction)1 EntityWizard (org.eclipse.vorto.wizard.datatype.EntityWizard)1 EnumWizard (org.eclipse.vorto.wizard.datatype.EnumWizard)1 MappingModelWizard (org.eclipse.vorto.wizard.mapping.MappingModelWizard)1