List of usage examples for org.eclipse.jface.resource ImageDescriptor createFromImage
public static ImageDescriptor createFromImage(Image img)
From source file:org.eclipse.datatools.sqltools.sqleditor.internal.editor.SQLImageDescriptor.java
License:Open Source License
private void drawBottomLeft() { Point size = getSize();/*from w ww . ja va2 s . com*/ int x = 0; if ((_fFlags & ERROR) != 0) { ImageData data = getImageData( ImageDescriptor.createFromImage(SQLEditorResources.getImage("over16/error_co"))); drawImage(data, x, size.y - data.height); x += data.width; } if ((_fFlags & WARNING) != 0) { ImageData data = getImageData( ImageDescriptor.createFromImage(SQLEditorResources.getImage("over16/warning_co"))); drawImage(data, x, size.y - data.height); x += data.width; } }
From source file:org.eclipse.dltk.internal.ui.typehierarchy.HierarchyLabelProvider.java
License:Open Source License
public Image getImage(Object element) { Image result = null;// ww w . j a va2s .co m if (element instanceof IType) { if (isCustomTypeHierarchy()) { // TODO (alex) think of better solution return getScriptLabelProvider().getImage(element); } ImageDescriptor desc = getTypeImageDescriptor((IType) element); if (desc != null) { if (element.equals(fHierarchy.getInputElement())) { desc = new FocusDescriptor(desc); } result = DLTKUIPlugin.getImageDescriptorRegistry().get(desc); } } else if (element instanceof CumulativeType) { final CumulativeType cType = (CumulativeType) element; ImageDescriptor desc = getTypeImageDescriptor(cType.getFirst()); if (desc != null) { if (cType.contains(fHierarchy.getInputElement())) { desc = new FocusDescriptor(desc); } result = DLTKUIPlugin.getImageDescriptorRegistry().get(desc); } } else if (element instanceof CumulativeType.Part) { final CumulativeType.Part part = (CumulativeType.Part) element; result = super.getImage(part.type.getSourceModule()); ImageDescriptor desc = new ScriptElementImageDescriptor(ImageDescriptor.createFromImage(result), 0, ScriptElementImageProvider.BIG_SIZE); result = DLTKUIPlugin.getImageDescriptorRegistry().get(desc); } else { result = fImageLabelProvider.getImageLabel(element, evaluateImageFlags(element)); } return decorateImage(result, element); }
From source file:org.eclipse.dltk.mod.internal.ui.typehierarchy.HierarchyLabelProvider.java
License:Open Source License
public Image getImage(Object element) { Image result = null;/*from w w w . jav a 2 s.c o m*/ if (element instanceof IType) { ImageDescriptor desc = getTypeImageDescriptor((IType) element); if (desc != null) { if (element.equals(fHierarchy.getInputElement())) { desc = new FocusDescriptor(desc); } result = DLTKUIPlugin.getImageDescriptorRegistry().get(desc); } } else if (element instanceof CumulativeType) { final CumulativeType cType = (CumulativeType) element; ImageDescriptor desc = getTypeImageDescriptor(cType.getFirst()); if (desc != null) { if (cType.contains(fHierarchy.getInputElement())) { desc = new FocusDescriptor(desc); } result = DLTKUIPlugin.getImageDescriptorRegistry().get(desc); } } else if (element instanceof CumulativeType.Part) { final CumulativeType.Part part = (CumulativeType.Part) element; result = super.getImage(part.type.getSourceModule()); ImageDescriptor desc = new ScriptElementImageDescriptor(ImageDescriptor.createFromImage(result), 0, ScriptElementImageProvider.BIG_SIZE); result = DLTKUIPlugin.getImageDescriptorRegistry().get(desc); } else { result = fImageLabelProvider.getImageLabel(element, evaluateImageFlags(element)); } return decorateImage(result, element); }
From source file:org.eclipse.dltk.mod.ui.ScriptElementImageProvider.java
License:Open Source License
/** * Returns an image descriptor for ascriptelement. This is the base image, * no overlays./*w w w .jav a 2 s . c om*/ */ public ImageDescriptor getBaseImageDescriptor(IModelElement element, int renderFlags) { // if (true) { // return DLTKPluginImages.DESC_OBJS_UNKNOWN; // } ILabelProvider provider = getContributedLabelProvider(element); if (provider != null) { Image img = provider.getImage(element); if (img != null) { return ImageDescriptor.createFromImage(img); } } try { switch (element.getElementType()) { case IModelElement.METHOD: { IMethod method = (IMethod) element; int flags = method.getFlags(); return getMethodImageDescriptor(flags); } case IModelElement.FIELD: { IField member = (IField) element; return getFieldImageDescriptor(member.getFlags()); } case IModelElement.TYPE: { IType type = (IType) element; return getTypeImageDescriptor(type.getFlags(), useLightIcons(renderFlags)); } case IModelElement.PACKAGE_DECLARATION: return DLTKPluginImages.DESC_OBJS_PACKDECL; case IModelElement.PROJECT_FRAGMENT: { IProjectFragment root = (IProjectFragment) element; if (root.isExternal()) { if (root.isArchive()) { return DLTKPluginImages.DESC_OBJS_JAR_WSRC; } else { return DLTKPluginImages.DESC_OBJS_PACKFRAG_ROOT; } } else { return DLTKPluginImages.DESC_OBJS_PACKFRAG_ROOT; } } case IModelElement.SCRIPT_FOLDER: return getScriptFolderIcon(element, renderFlags); case IModelElement.SOURCE_MODULE: boolean external = element instanceof IExternalSourceModule; return getSourceModuleIcon(element, external, renderFlags); case IModelElement.SCRIPT_PROJECT: IScriptProject jp = (IScriptProject) element; if (jp.getProject().isOpen()) { IProject project = jp.getProject(); IWorkbenchAdapter adapter = (IWorkbenchAdapter) project.getAdapter(IWorkbenchAdapter.class); if (adapter != null) { ImageDescriptor result = adapter.getImageDescriptor(project); if (result != null) return result; } return DESC_OBJ_PROJECT; } return DESC_OBJ_PROJECT_CLOSED; // return DESC_OBJ_PROJECT; case IModelElement.SCRIPT_MODEL: // return DLTKPluginImages.DESC_OBJS_JAVA_MODEL; return null; } Assert.isTrue(false, DLTKUIMessages.ScriptImageLabelprovider_assert_wrongImage); return DLTKPluginImages.DESC_OBJS_GHOST; } catch (ModelException e) { if (e.isDoesNotExist()) return DLTKPluginImages.DESC_OBJS_UNKNOWN; DLTKUIPlugin.log(e); return DLTKPluginImages.DESC_OBJS_GHOST; } }
From source file:org.eclipse.dltk.ui.ScriptElementImageProvider.java
License:Open Source License
/** * Returns an image descriptor for ascriptelement. This is the base image, * no overlays.//w w w. java2s. c o m */ public ImageDescriptor getBaseImageDescriptor(IModelElement element, int renderFlags) { // if (true) { // return DLTKPluginImages.DESC_OBJS_UNKNOWN; // } ILabelProvider provider = getContributedLabelProvider(element); if (provider != null) { Image img = provider.getImage(element); if (img != null) { return ImageDescriptor.createFromImage(img); } } try { switch (element.getElementType()) { case IModelElement.IMPORT_CONTAINER: return DLTKPluginImages.DESC_OBJS_IMPCONT; case IModelElement.IMPORT_DECLARATION: return DLTKPluginImages.DESC_OBJS_IMPDECL; case IModelElement.METHOD: { IMethod method = (IMethod) element; int flags = method.getFlags(); return getMethodImageDescriptor(flags); } case IModelElement.FIELD: { IField member = (IField) element; return getFieldImageDescriptor(member.getFlags()); } case IModelElement.TYPE: { IType type = (IType) element; return getTypeImageDescriptor(type.getFlags(), useLightIcons(renderFlags)); } case IModelElement.LOCAL_VARIABLE: return DLTKPluginImages.DESC_OBJS_LOCAL_VARIABLE; case IModelElement.PACKAGE_DECLARATION: return DLTKPluginImages.DESC_OBJS_PACKDECL; case IModelElement.PROJECT_FRAGMENT: { IProjectFragment root = (IProjectFragment) element; if (root.isExternal()) { if (root.isArchive()) { return DLTKPluginImages.DESC_OBJS_JAR_WSRC; } else { return DLTKPluginImages.DESC_OBJS_PACKFRAG_ROOT; } } else { return DLTKPluginImages.DESC_OBJS_PACKFRAG_ROOT; } } case IModelElement.SCRIPT_FOLDER: return getScriptFolderIcon(element, renderFlags); case IModelElement.SOURCE_MODULE: if (((ISourceModule) element).isBinary()) { return getBinaryModuleIcon(element, renderFlags); } boolean external = element instanceof IExternalSourceModule; return getSourceModuleIcon(element, external, renderFlags); case IModelElement.SCRIPT_PROJECT: IScriptProject jp = (IScriptProject) element; if (jp.getProject().isOpen()) { IProject project = jp.getProject(); IWorkbenchAdapter adapter = (IWorkbenchAdapter) project.getAdapter(IWorkbenchAdapter.class); if (adapter != null) { ImageDescriptor result = adapter.getImageDescriptor(project); if (result != null) return result; } return DESC_OBJ_PROJECT; } return DESC_OBJ_PROJECT_CLOSED; // return DESC_OBJ_PROJECT; case IModelElement.SCRIPT_MODEL: // return DLTKPluginImages.DESC_OBJS_JAVA_MODEL; return null; } Assert.isTrue(false, DLTKUIMessages.ScriptImageLabelprovider_assert_wrongImage + "(" + element.getElementType() + "," + element.getElementName() + ")"); return DLTKPluginImages.DESC_OBJS_GHOST; } catch (ModelException e) { if (e.isDoesNotExist()) return DLTKPluginImages.DESC_OBJS_UNKNOWN; DLTKUIPlugin.log(e); return DLTKPluginImages.DESC_OBJS_GHOST; } }
From source file:org.eclipse.e4.internal.tools.wizards.classes.AbstractNewClassPage.java
License:Open Source License
public void createControl(Composite parent) { final Image img = new Image(parent.getDisplay(), getClass().getClassLoader().getResourceAsStream("/icons/full/wizban/newclass_wiz.png")); setImageDescriptor(ImageDescriptor.createFromImage(img)); parent.addDisposeListener(new DisposeListener() { public void widgetDisposed(DisposeEvent e) { img.dispose();//from www.ja va 2 s . co m setImageDescriptor(null); } }); parent = new Composite(parent, SWT.NULL); parent.setLayoutData(new GridData(GridData.FILL_BOTH)); parent.setLayout(new GridLayout(3, false)); clazz = createInstance(); if ((froot != null) && (initialString != null)) { clazz.setPackageFragment( froot.getPackageFragment(parseInitialStringForPackage(initialString) == null ? "" : parseInitialStringForPackage(initialString))); clazz.setName(parseInitialStringForClassName(initialString)); } DataBindingContext dbc = new DataBindingContext(); WizardPageSupport.create(this, dbc); { Label l = new Label(parent, SWT.NONE); l.setText("Source folder"); Text t = new Text(parent, SWT.BORDER); t.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); t.setEditable(false); final Binding bd = dbc.bindValue(WidgetProperties.text().observe(t), BeanProperties.value("fragmentRoot").observe(clazz), new UpdateValueStrategy().setBeforeSetValidator(new PFRootValidator()), new UpdateValueStrategy().setConverter(new PackageFragmentRootToStringConverter())); Button b = new Button(parent, SWT.PUSH); b.setText("Browse ..."); b.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { IPackageFragmentRoot root = choosePackageRoot(); if (root != null) { froot = root; clazz.setFragmentRoot(root); } bd.updateModelToTarget(); } }); } { Label l = new Label(parent, SWT.NONE); l.setText("Package"); Text t = new Text(parent, SWT.BORDER); t.setEditable(true); t.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); final Binding bd = dbc.bindValue(WidgetProperties.text(SWT.Modify).observe(t), BeanProperties.value("packageFragment").observe(clazz), new UpdateValueStrategy().setConverter(new StringToPackageFragmentConverter(clazz)), new UpdateValueStrategy().setConverter(new PackageFragmentToStringConverter())); Button b = new Button(parent, SWT.PUSH); b.setText("Browse ..."); b.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { IPackageFragment fragment = choosePackage(); if (fragment != null) { clazz.setPackageFragment(fragment); } bd.updateModelToTarget(); //TODO Find out why this is needed } }); } { IWidgetValueProperty textProp = WidgetProperties.text(SWT.Modify); Label l = new Label(parent, SWT.NONE); l.setText("Name"); Text t = new Text(parent, SWT.BORDER); t.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); dbc.bindValue(textProp.observe(t), BeanProperties.value("name", String.class).observe(clazz), new UpdateValueStrategy().setBeforeSetValidator(new ClassnameValidator(clazz)), null); new Label(parent, SWT.NONE); } { Label l = new Label(parent, SWT.SEPARATOR | SWT.HORIZONTAL); l.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false, 3, 1)); } createFields(parent, dbc); setControl(parent); }
From source file:org.eclipse.e4.tools.emf.ui.common.component.AbstractComponentEditor.java
License:Open Source License
public ImageDescriptor createImageDescriptor(String key) { if (key == null) { return null; }/*from w w w . ja v a 2 s . c om*/ return ImageDescriptor.createFromImage(createImage(key)); }
From source file:org.eclipse.e4.tools.emf.ui.internal.common.ModelEditor.java
License:Open Source License
private Composite createFormTab(Composite composite) { SashForm form = new SashForm(composite, SWT.HORIZONTAL); form.setBackground(form.getDisplay().getSystemColor(SWT.COLOR_WHITE)); viewer = createTreeViewerArea(form); Composite parent = new Composite(form, SWT.NONE); FillLayout l = new FillLayout(); parent.setLayout(l);/* w w w.j a va2 s. c om*/ Composite editingArea = new Composite(parent, SWT.BORDER); GridLayout gl = new GridLayout(); editingArea.setLayout(gl); Composite headerContainer = new Composite(editingArea, SWT.NONE); headerContainer.setLayout(new GridLayout(3, false)); headerContainer.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); final Label iconLabel = new Label(headerContainer, SWT.NONE); iconLabel.setLayoutData(new GridData(20, 20)); final Label sectionHeaderLabel = new Label(headerContainer, SWT.NONE); sectionHeaderLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); final Label separatorLabel = new Label(headerContainer, SWT.SEPARATOR | SWT.HORIZONTAL); GridData gridData = new GridData(GridData.FILL_HORIZONTAL); gridData.horizontalSpan = 2; separatorLabel.setLayoutData(gridData); final StackLayout layout = new StackLayout(); final Composite contentContainer = new Composite(editingArea, SWT.NONE); contentContainer.setLayoutData(new GridData(GridData.FILL_BOTH)); contentContainer.setLayout(layout); viewer.getTree().addKeyListener(new KeyAdapter() { @Override public void keyReleased(final KeyEvent e) { if (e.keyCode == SWT.DEL) { List<EObject> list = new ArrayList<EObject>(); final IStructuredSelection selection = (IStructuredSelection) viewer.getSelection(); for (Object o : ((StructuredSelection) selection).toList()) { if (o instanceof EObject) { list.add((EObject) o); } } if (list.isEmpty() == false) { Command cmd = DeleteCommand.create(ModelEditor.this.modelProvider.getEditingDomain(), list); if (cmd.canExecute()) { ModelEditor.this.modelProvider.getEditingDomain().getCommandStack().execute(cmd); } } } } }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { if (!event.getSelection().isEmpty()) { final IStructuredSelection s = (IStructuredSelection) event.getSelection(); if (s.getFirstElement() instanceof EObject) { EObject obj = (EObject) s.getFirstElement(); final AbstractComponentEditor editor = getEditor(obj.eClass()); if (editor != null) { currentEditor = editor; sectionHeaderLabel.setText(editor.getLabel(obj)); iconLabel.setImage(editor.getImage(obj, iconLabel.getDisplay())); obsManager.runAndCollect(new Runnable() { @Override public void run() { Composite comp = editor.getEditor(contentContainer, s.getFirstElement()); comp.setBackgroundMode(SWT.INHERIT_DEFAULT); layout.topControl = comp; contentContainer.layout(true); } }); } } else { VirtualEntry<?> entry = (VirtualEntry<?>) s.getFirstElement(); final AbstractComponentEditor editor = virtualEditors.get(entry.getId()); if (editor != null) { currentEditor = editor; sectionHeaderLabel.setText(editor.getLabel(entry)); iconLabel.setImage(editor.getImage(entry, iconLabel.getDisplay())); obsManager.runAndCollect(new Runnable() { @Override public void run() { Composite comp = editor.getEditor(contentContainer, s.getFirstElement()); comp.setBackgroundMode(SWT.INHERIT_DEFAULT); layout.topControl = comp; contentContainer.layout(true); } }); } } // Rectangle r = scrolling.getClientArea(); // scrolling.setMinSize(contentContainer.computeSize(r.width, // SWT.DEFAULT)); // scrolling.setOrigin(0, 0); // scrolling.layout(true, true); if (selectionService != null) { selectionService.setSelection(s.getFirstElement()); } } } }); form.setWeights(new int[] { 3, 4 }); MenuManager mgr = new MenuManager(); mgr.setRemoveAllWhenShown(true); mgr.addMenuListener(new IMenuListener() { @Override public void menuAboutToShow(IMenuManager manager) { final IStructuredSelection s = (IStructuredSelection) viewer.getSelection(); final List listOfSelections = s.toList(); int noSelected = listOfSelections.size(); boolean addSeparator = false; if (!s.isEmpty() && noSelected == 1) { List<Action> actions; if (s.getFirstElement() instanceof VirtualEntry<?>) { actions = virtualEditors.get(((VirtualEntry<?>) s.getFirstElement()).getId()) .getActions(s.getFirstElement()); if (actions.size() > 0) { MenuManager addMenu = new MenuManager(messages.ModelEditor_AddChild); for (Action a : actions) { addSeparator = true; addMenu.add(a); } manager.add(addMenu); } actions = virtualEditors.get(((VirtualEntry<?>) s.getFirstElement()).getId()) .getActionsImport(s.getFirstElement()); if (actions.size() > 0) { MenuManager menu = new MenuManager("Import 3x"); for (Action a : actions) { addSeparator = true; menu.add(a); } manager.add(menu); } if (addSeparator) manager.add(new Separator()); } else { final EObject o = (EObject) s.getFirstElement(); AbstractComponentEditor editor = getEditor(o.eClass()); // Build Add Child menu if (editor != null) { actions = new ArrayList<Action>(editor.getActions(s.getFirstElement())); } else { actions = new ArrayList<Action>(); } if (actions.size() > 0) { MenuManager addMenu = new MenuManager(messages.ModelEditor_AddChild); for (Action a : actions) { addSeparator = true; addMenu.add(a); } manager.add(addMenu); } // Build import menu if (editor != null) { actions = new ArrayList<Action>(editor.getActionsImport(s.getFirstElement())); } else { actions = new ArrayList<Action>(); } if (actions.size() > 0) { // TODO WIM - extract nls MenuManager menu = new MenuManager("Import 3x"); for (Action a : actions) { addSeparator = true; menu.add(a); } manager.add(menu); } if (o.eContainer() != null) { addSeparator = true; manager.add(new Action(messages.ModelEditor_Delete, ImageDescriptor.createFromImage( resourcePool.getImageUnchecked(ResourceProvider.IMG_Obj16_cross))) { @Override public void run() { Command cmd = DeleteCommand .create(ModelEditor.this.modelProvider.getEditingDomain(), o); if (cmd.canExecute()) { ModelEditor.this.modelProvider.getEditingDomain().getCommandStack() .execute(cmd); } } }); } } } // multi selection if (noSelected > 0) { if ((!isModelFragment()) && modelExtractor != null) manager.add( new Action(messages.ModelEditor_ExtractFragment, ImageDescriptor.createFromImage( resourcePool.getImageUnchecked(ResourceProvider.IMG_ModelFragments))) { @Override public void run() { ArrayList<MApplicationElement> maes = new ArrayList<MApplicationElement>(); for (Object objSelect : listOfSelections) { EObject container = null; if (objSelect instanceof VirtualEntry<?>) { VirtualEntry<?> ve = (VirtualEntry<?>) objSelect; container = (EObject) ve.getOriginalParent(); IObservableList list = ve.getList(); Iterator iterator = list.iterator(); while (iterator.hasNext()) { maes.add((MApplicationElement) iterator.next()); } } else { container = ((EObject) objSelect).eContainer(); MApplicationElement objSelect2 = (MApplicationElement) objSelect; if (!(objSelect2 instanceof MApplication)) maes.add(objSelect2); else { // can't extract application return; } } String containerId = ((MApplicationElement) container).getElementId(); if (containerId == null || containerId.length() == 0) { MessageDialog.openError(viewer.getControl().getShell(), null, messages.ModelEditor_ExtractFragment_NoParentId); return; } } if (modelExtractor.extract(viewer.getControl().getShell(), project, maes)) { Command cmd = DeleteCommand.create( ModelEditor.this.modelProvider.getEditingDomain(), maes); if (cmd.canExecute()) { ModelEditor.this.modelProvider.getEditingDomain().getCommandStack() .execute(cmd); } } }; }); } IExtensionRegistry registry = RegistryFactory.getRegistry(); IExtensionPoint extPoint = registry.getExtensionPoint("org.eclipse.e4.tools.emf.ui.scripting"); //$NON-NLS-1$ final IConfigurationElement[] elements = extPoint.getConfigurationElements(); if (elements.length > 0 && !s.isEmpty() && s.getFirstElement() instanceof MApplicationElement && noSelected == 1) { if (addSeparator) { manager.add(new Separator()); } addSeparator = false; MenuManager scriptExecute = new MenuManager(messages.ModelEditor_Script); manager.add(scriptExecute); for (IConfigurationElement e : elements) { final IConfigurationElement le = e; scriptExecute.add(new Action(e.getAttribute("label")) { //$NON-NLS-1$ @Override public void run() { try { MApplicationElement o = (MApplicationElement) s.getFirstElement(); IScriptingSupport support = (IScriptingSupport) le .createExecutableExtension("class"); //$NON-NLS-1$ IEclipseContext ctx = null; if (project == null) { if (o instanceof MContext) { ctx = ((MContext) o).getContext(); } else { ctx = ModelUtils.getContainingContext(o); } } support.openEditor(viewer.getControl().getShell(), s.getFirstElement(), ctx); } catch (CoreException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }); } } if (project != null) { if (addSeparator) { manager.add(new Separator()); } Action nlsAction = new Action(messages.ModelEditor_ExternalizeStrings) { @Override public void run() { ExternalizeStringHandler h = ContextInjectionFactory .make(ExternalizeStringHandler.class, context); ContextInjectionFactory.invoke(h, Execute.class, context); } }; Action extIdAction = new Action(messages.ModelEditor_ExportIds) { @Override public void run() { ExportIdsHandler h = ContextInjectionFactory.make(ExportIdsHandler.class, context); ContextInjectionFactory.invoke(h, Execute.class, context); } }; manager.add(nlsAction); manager.add(extIdAction); } else { if (addSeparator) { manager.add(new Separator()); } if (s.getFirstElement() instanceof MUIElement) { final MUIElement el = (MUIElement) s.getFirstElement(); if (el.getWidget() instanceof Control) { manager.add(new Action(messages.ModelEditor_ShowControl) { @Override public void run() { ControlHighlighter.show((Control) el.getWidget()); } }); } } } if (addSeparator) { manager.add(new Separator()); } Action expandAction = new Action(messages.ModelEditor_ExpandSubtree) { @Override public void run() { if (!s.isEmpty()) { if (viewer.getExpandedState(s.getFirstElement())) { viewer.collapseToLevel(s.getFirstElement(), AbstractTreeViewer.ALL_LEVELS); } else { viewer.expandToLevel(s.getFirstElement(), AbstractTreeViewer.ALL_LEVELS); } } } }; manager.add(expandAction); if (s.getFirstElement() instanceof EObject) { manager.add(new Separator()); final EObject el = (EObject) s.getFirstElement(); Action gotoXmiAction = new Action(Messages.ModelEditor_goto_xmi) { @Override public void run() { gotoEObject(TAB_XMI, el); } }; manager.add(gotoXmiAction); if (listTab != null) { if (EmfUtil.getAttribute(el, "elementId") != null) { //$NON-NLS-1$ Action gotoListAction = new Action(Messages.ModelEditor_goto_list) { @Override public void run() { gotoEObject(TAB_LIST, el); } }; manager.add(gotoListAction); } } } } }); // Save the stateMask viewer.getTree().addKeyListener(new KeyListener() { @Override public void keyReleased(KeyEvent e) { if (mod1Down && (e.keyCode & SWT.MOD1) == SWT.MOD1) { mod1Down = false; } } @Override public void keyPressed(KeyEvent e) { if (!mod1Down && (e.keyCode & SWT.MOD1) == SWT.MOD1) { mod1Down = true; } } }); viewer.addTreeListener(new ITreeViewerListener() { @Override public void treeExpanded(final TreeExpansionEvent event) { if (mod1Down) { viewer.getTree().getDisplay().asyncExec(new Runnable() { @Override public void run() { viewer.expandToLevel(event.getElement(), AbstractTreeViewer.ALL_LEVELS); } }); } } @Override public void treeCollapsed(final TreeExpansionEvent event) { if (mod1Down) { viewer.getTree().getDisplay().asyncExec(new Runnable() { @Override public void run() { viewer.collapseToLevel(event.getElement(), AbstractTreeViewer.ALL_LEVELS); } }); } } }); viewer.getControl().setMenu(mgr.createContextMenu(viewer.getControl())); viewer.setSelection(new StructuredSelection(modelProvider.getRoot())); return form; }
From source file:org.eclipse.e4.tools.emf.ui.internal.imp.ModelImportWizard.java
License:Open Source License
public ModelImportWizard(Class<? extends MApplicationElement> applicationElement, AbstractComponentEditor editor, String hint, IResourcePool resourcePool) { this.applicationElement = applicationElement; this.editor = editor; this.hint = hint; this.application = (MApplication) editor.getEditor().getModelProvider().getRoot().get(0); setWindowTitle("Model " + applicationElement.getSimpleName() + " Import Wizard"); setDefaultPageImageDescriptor(ImageDescriptor .createFromImage(resourcePool.getImageUnchecked(ResourceProvider.IMG_Wizban16_imp3x_wiz))); Assert.isNotNull(RegistryUtil.getStruct(applicationElement, getHint()), "Unknown Element: " + applicationElement.getClass().getName()); }
From source file:org.eclipse.e4.tools.ui.dataform.workbench.events.EventFactory.java
License:Open Source License
public static void handleAttribute(Shell shell, IProject project, EObject parent, EObject eObj, EAttribute attribute) {// w w w . ja va 2s . c om if (eObj == null || attribute == null) { MessageDialog.openError(shell, "Handle Reference Error", "Failed to handle reference."); return; } String displayName = ApplicationModelHelper.getDisplayName(eObj, attribute); if (displayName == null) { displayName = attribute.getName(); } if (attribute.isMany()) { FeatureEditorDialog dialog = new FeatureEditorDialog(shell, ApplicationModelHelper.getLabelProvider(), eObj, attribute, displayName, null); dialog.create(); dialog.getShell().pack(true); if (Window.OK == dialog.open()) { EList<?> result = dialog.getResult(); eObj.eSet(attribute, result); } } else if (ApplicationPackageImpl.Literals.CONTRIBUTION__CONTRIBUTION_URI == attribute) { IProgressService service = PlatformUI.getWorkbench().getProgressService(); IJavaElement[] elements = new IJavaElement[] { JavaCore.create(project) }; IJavaSearchScope scope = SearchEngine.createJavaSearchScope(elements, IJavaSearchScope.SOURCES); FilteredTypesSelectionDialog dialog = new FilteredTypesSelectionDialog(shell, false, service, scope, IJavaSearchConstants.CLASS); dialog.create(); dialog.setTitle("Contribution URI"); dialog.setMessage("Choose a type for contribution."); dialog.getShell().setText("Contribution Dialog"); if (dialog.open() == Window.OK) { IType type = (IType) dialog.getFirstResult(); String contributionURI = createContributionURI(type); if (contributionURI != null) { eObj.eSet(attribute, contributionURI); } } } else if (UiPackageImpl.Literals.UI_LABEL__ICON_URI == attribute) { List<ViewerFilter> filters = new ArrayList<ViewerFilter>(); ViewerFilter imageFilter = new ViewerFilter() { public boolean select(Viewer viewer, Object parentElement, Object element) { if (element instanceof IFile) { IFile file = (IFile) element; InputStream in = null; Image image = null; try { in = file.getContents(); image = new Image(null, in); return ImageDescriptor.createFromImage(image) != null; } catch (Exception e) { return false; } finally { if (in != null) { try { in.close(); } catch (IOException e) { } } if (image != null) { image.dispose(); } } } return true; } }; filters.add(imageFilter); IFile[] files = WorkspaceResourceDialog.openFileSelection(shell, "Icon URI - Attribute", "Choose Icon.", false, null, filters); if (files.length == 1) { String iconURI = createIconURI(files[0]); if (iconURI != null) { eObj.eSet(attribute, iconURI); } } } else if (DataForms.isRefSF(attribute)) { Object[] children = ApplicationModelHelper.getChildren(parent.eResource(), new IFilter() { public boolean select(Object toTest) { if (toTest instanceof EObject && toTest instanceof MApplicationElement) { return ((EObject) toTest).eResource() != null; } return false; } }, true); FindByElementIdDialog dialog = new FindByElementIdDialog(shell, children); if (Window.OK == dialog.open()) { Object result = dialog.getFirstResult(); eObj.eSet(attribute, result); } } }