private MPerspectiveStack createPerspectiveStack() { MPerspectiveStack perspStack = modelService .createModelElement(MPerspectiveStack.class); perspStack.setElementId("PerspectiveStack"); //$NON-NLS-1$ return perspStack; }
private void addEditorArea() { editorArea = modelService.createModelElement(MArea.class); sharedElements.add(editorArea); editorArea.setElementId(IPageLayout.ID_EDITOR_AREA); }
public MPartStack createStack(String id, boolean visible) { MPartStack newStack = modelService.createModelElement(MPartStack.class); newStack.setElementId(id); newStack.setToBeRendered(visible); return newStack; }
MPlaceholder createPlaceHolder(String str, String label) { MPlaceholder placeholder = null; placeholder = modelService.createModelElement(MPlaceholder.class); placeholder.setElementId(str); if (modelService.getPartDescriptor(str) == null) { placeholder.getTransientData().put(IWorkbenchConstants.TAG_LABEL, label); } return placeholder; }
private MPlaceholder createSharedPart(MPart sharedPart) { // Create and return a reference to the shared part MPlaceholder sharedPartRef = modelService.createModelElement(MPlaceholder.class); sharedPartRef.setElementId(sharedPart.getElementId()); sharedPartRef.setRef(sharedPart); return sharedPartRef; }
private void addStickyFolder() { MPartStack stickyFolder = modelService.createModelElement(MPartStack.class); stickyFolder.setElementId(StickyViewDescriptor.STICKY_FOLDER_RIGHT); stickyFolder.setContainerData("2500"); //$NON-NLS-1$ stickyFolder.setToBeRendered(false); mainSash.getChildren().add(stickyFolder); }
private void addDetachedWindows() { for (DetachedWindowReader detachedWindowReader : perspReader.getDetachedWindows()) { MTrimmedWindow detachedWindow = modelService.createModelElement(MTrimmedWindow.class); Rectangle bounds = detachedWindowReader.getBounds(); detachedWindow.setX(bounds.x); detachedWindow.setY(bounds.y); detachedWindow.setWidth(bounds.width); detachedWindow.setHeight(bounds.height); MPartStack stack = modelService.createModelElement(MPartStack.class); populatePartStack(stack, detachedWindowReader); detachedWindow.getChildren().add(stack); perspective.getWindows().add(detachedWindow); } }
@Execute void addSplitterAddon(MApplication app, EModelService modelService) { List<MAddon> addons = app.getAddons(); // prevent multiple copies for (MAddon addon : addons) { if (addon.getContributionURI().contains( "ui.workbench.addons.splitteraddon.SplitterAddon")) { return; } } // adds the add-on to the application model MAddon splitterAddon = modelService.createModelElement(MAddon.class); splitterAddon.setElementId("SplitterAddon"); //$NON-NLS-1$ splitterAddon .setContributionURI("bundleclass://org.eclipse.e4.ui.workbench.addons.swt/org.eclipse.e4.ui.workbench.addons.splitteraddon.SplitterAddon"); //$NON-NLS-1$ app.getAddons().add(splitterAddon); } }
@Execute void addDnDAddon(MApplication app, EModelService modelService) { List<MAddon> addons = app.getAddons(); // prevent multiple copies for (MAddon addon : addons) { if (addon.getContributionURI().contains("ui.workbench.addons.dndaddon.DnDAddon")) { return; } } // adds the add-on to the application model MAddon dndAddon = modelService.createModelElement(MAddon.class); dndAddon.setElementId("DnDAddon"); //$NON-NLS-1$ dndAddon.setContributionURI("bundleclass://org.eclipse.e4.ui.workbench.addons.swt/org.eclipse.e4.ui.workbench.addons.dndaddon.DnDAddon"); //$NON-NLS-1$ app.getAddons().add(dndAddon); } }
@Execute void addMinMaxAddon(MApplication app, EModelService modelService) { List<MAddon> addons = app.getAddons(); // prevent multiple copies for (MAddon addon : addons) { if (addon.getContributionURI().contains("ui.workbench.addons.minmax.MinMaxAddon")) { return; } } // add the add-on to the application model MAddon minMaxAddon = modelService.createModelElement(MAddon.class); minMaxAddon.setElementId("MinMaxAddon"); //$NON-NLS-1$ minMaxAddon .setContributionURI("bundleclass://org.eclipse.e4.ui.workbench.addons.swt/org.eclipse.e4.ui.workbench.addons.minmax.MinMaxAddon"); //$NON-NLS-1$ app.getAddons().add(minMaxAddon); } }
@Execute void addCleanupAddon(MApplication app, EModelService modelService) { List<MAddon> addons = app.getAddons(); // prevent multiple copies for (MAddon addon : addons) { if (addon.getContributionURI() .contains("ui.workbench.addons.cleanupaddon.CleanupAddon")) { return; } } // adds the add-on to the application model MAddon cleanupAddon = modelService.createModelElement(MAddon.class); cleanupAddon.setElementId("CleanupAddon"); //$NON-NLS-1$ cleanupAddon .setContributionURI("bundleclass://org.eclipse.e4.ui.workbench.addons.swt/org.eclipse.e4.ui.workbench.addons.cleanupaddon.CleanupAddon"); //$NON-NLS-1$ app.getAddons().add(cleanupAddon); } }
@Override public <T extends MApplicationElement> @NonNull T createModelElement(@NonNull Class<@NonNull T> clazz, @NonNull Supplier<@NonNull String> contributor, Function<@NonNull T, @NonNull T> processor) { T element = this.modelService.createModelElement(clazz); element.setContributorURI("platform:/plugin/" + contributor); //$NON-NLS-1$ element = processor.apply(element); return element; }
private MPart createView(ViewReader viewReader) { MPart view = modelService.createModelElement(MPart.class); view.setElementId(viewReader.getId()); view.setContributionURI(CompatibilityPart.COMPATIBILITY_VIEW_URI); view.setLabel(viewReader.getLabel()); view.getTags().add(ViewRegistry.VIEW_TAG); view.getPersistedState().put(Workbench.MEMENTO_KEY, new MementoSerializer(viewReader.getViewState()).serialize()); return view; }
private void create() { perspective = modelService.createModelElement(MPerspective.class); perspective.setElementId(perspReader.getId()); String label = perspReader.getLabel(); perspective.setLabel(label); perspective.setTooltip(label); if (perspReader.isCustom()) { perspective.getTransientData().put(BASE_PERSPECTIVE_ID, perspReader.getBasicPerspectiveId()); perspective.getTransientData().put(ORIGINAL_ID, perspReader.getOriginalId()); } }
public CoolBarToTrimManager(MApplication app, MTrimmedWindow window, List<MTrimElement> workbenchTrimElements, IRendererFactory rf) { application = app; this.window = window; rendererFactory = rf; this.workbenchTrimElements = workbenchTrimElements; toolbarExtensions = new ArrayList<>(); modelService = window.getContext().get(EModelService.class); topTrim = (MTrimBar) modelService.find(MAIN_TOOLBAR_ID, window); if (topTrim == null) { topTrim = modelService.getTrim(window, SideValue.TOP); topTrim.setElementId(MAIN_TOOLBAR_ID); } topTrim.setToBeRendered(false); MToolBar mToolBar = modelService.createModelElement(MToolBar.class); renderer = (ToolBarManagerRenderer) rendererFactory.getRenderer(mToolBar, null); }
private void addEditorArea(InfoReader info) { editorAreaPlaceholder = modelService.createModelElement(MPlaceholder.class); editorAreaPlaceholder.setElementId(ID_EDITOR_AREA); editorAreaPlaceholder.setToBeRendered(perspReader.isEditorAreaVisible()); setPartState(editorAreaPlaceholder, perspReader.getEditorAreaState()); addToPerspective(editorAreaPlaceholder, info); }
private MCompositePart createCompositePart(MPart originalPart) { MCompositePart compPart = ms.createModelElement(MCompositePart.class); compPart.setElementId("Split Host(" + originalPart.getLabel() + ")"); //$NON-NLS-1$ //$NON-NLS-2$ compPart.setLabel(originalPart.getLabel()); compPart.setTooltip(originalPart.getTooltip()); compPart.setIconURI(originalPart.getIconURI()); compPart.setCloseable(true); compPart.setContributionURI("bundleclass://org.eclipse.e4.ui.workbench.addons.swt/org.eclipse.e4.ui.workbench.addons.splitteraddon.SplitHost"); //$NON-NLS-1$ // Check if icon from MPart was overridden Object overriddenImage = originalPart.getTransientData().get(IPresentationEngine.OVERRIDE_ICON_IMAGE_KEY); if (overriddenImage != null) { compPart.getTransientData().put(IPresentationEngine.OVERRIDE_ICON_IMAGE_KEY, overriddenImage); } // Always remove the composite part from the model compPart.getTags().add(EPartService.REMOVE_ON_HIDE_TAG); return compPart; }
ArrayList<String> getPerspectiveExtensionActionSets(String id) { IPerspectiveDescriptor desc = getWorkbenchWindow().getWorkbench().getPerspectiveRegistry() .findPerspectiveWithId(id); if (desc != null) { MPerspective temporary = modelService.createModelElement(MPerspective.class); ModeledPageLayout modelLayout = new ModeledPageLayout(window, modelService, partService, temporary, desc, this, true); PerspectiveExtensionReader reader = new PerspectiveExtensionReader(); reader.setIncludeOnlyTags(new String[] { IWorkbenchRegistryConstants.TAG_ACTION_SET }); reader.extendLayout(null, id, modelLayout); return new ArrayList<>(ModeledPageLayout.getIds(temporary, ModeledPageLayout.ACTION_SET_TAG)); } return null; }
private void replacePlaceholder(MPlaceholder ph) { MPart part = modelService.createModelElement(MPart.class); part.setElementId(ph.getElementId()); part.getTransientData().put(IPresentationEngine.OVERRIDE_ICON_IMAGE_KEY, ImageDescriptor.getMissingImageDescriptor().createImage()); String label = (String) ph.getTransientData().get(IWorkbenchConstants.TAG_LABEL); if (label != null) { part.setLabel(label); } else { part.setLabel(getLabel(ph.getElementId())); } part.setContributionURI(CompatibilityPart.COMPATIBILITY_VIEW_URI); part.setCloseable(true); MElementContainer<MUIElement> curParent = ph.getParent(); int curIndex = curParent.getChildren().indexOf(ph); curParent.getChildren().remove(curIndex); curParent.getChildren().add(curIndex, part); if (curParent.getSelectedElement() == ph) { curParent.setSelectedElement(part); } }
/** * @param perspective * @return never null */ private MPerspective createPerspective(IPerspectiveDescriptor perspective) { MPerspective modelPerspective = modelService.createModelElement(MPerspective.class); // tag it with the same id modelPerspective.setElementId(perspective.getId()); // instantiate the perspective IPerspectiveFactory factory = ((PerspectiveDescriptor) perspective).createFactory(); ModeledPageLayout modelLayout = new ModeledPageLayout(window, modelService, partService, modelPerspective, perspective, this, true); factory.createInitialLayout(modelLayout); PerspectiveTagger.tagPerspective(modelPerspective, modelService); PerspectiveExtensionReader reader = new PerspectiveExtensionReader(); reader.extendLayout(getExtensionTracker(), perspective.getId(), modelLayout); return modelPerspective; }