Eclipse plug-in development - Multiple workbanches/pages - eclipse

I am developing an eclipse plugin application.
I have the following scenario:
Main application gui will be based on eclipse, a workbench with a page.
In this page there will be a toolbar, menu bar, some views and multiple editor.
Until now the task is standard.
But here is a "twist": I want to show a popup window (org.eclipse.jface.dialogs.Dialog) and in this dialog i want to insert another editor. In this editor I want to use GEF framework.
Currently I access page like this (which is used by all editors):
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();

Eclipse, especially eclipse 3.x (Helios, Indigo) won't allow editors in dialogs gracefully. With no IEditorSite (the editor's link to the workbench page) many of the services it uses won't be available, and it might not even start.

Related

Eclipse: Launch plug-in from web page

Is it possible to launch the Eclipse plug-in from a web page?
I'm working on a project where, ideally, I'd like to launch an Eclipse plug-in from a web application. The web application contains information related to the code then, when the user gets to a certain point, I'd like the user to be able to click an "Edit Code" button. At that point, I'd like Eclipse to launch for the selected code, meaning the context is passed over the Eclipse.

Eclipse Plugin to Invoke a GUI

I understand the process of creating Eclipse plugins and adding buttons or menu items to Eclipse.
I would like to know how to create an Eclipse Plugin which should add a button to the eclipse menu and that button must invoke a GUI. How do I proceed with that?
The GUI will be a form where the user needs to select a bunch of options. How do I create this GUI form within a custom Eclipse plugin??
There's plenty of information already out there as long as you search using the correct names. Start with a simple plug-in then work your way up to creating Wizards.

How to reuse the Eclipse 4 IDE Perspective Features in an RCP Application

is there an easy way to reuse the complete Perspective implementation from the Eclipse Juno 4.2 IDE ("Open Perspective", Customize Perspective, "Save Perspective As ...", "Reset Perspective...", "Close Perspective...", ... ) in an e4 RCP application (if possible without using the Eclipse 3 compatibility layer)?
Thanks and Best Regards
Marc
I am assuming you mean to reuse them as Menu items, just as they are in Eclipse.
You can locate their ids using the Plugin Spy - on your Eclipse development platform, press Alt++Shift+F2 and then click on the Window menu and then on Customize Perspective... (for example). This will give you its id as org.eclipse.ui.window.customizePerspective.
Then go to your plugin.xml and to the menu extension where you want to add this command, right click and add a command. For the commandId you put that id you found (org.eclipse.ui.window.customizePerspective). You can even find these ids when you click on Browse, next to commandId.
Unfortunately for E4 RCP you must use plugin.xml for the Eclipse defined commands. If you do not wish to, then you can get an idea of the implementation of the command by viewing its source code.
I have a more detailed answer here - https://stackoverflow.com/a/14370898/462285

Eclipse : Run an external software in editor view

I am using Eclipse to edit almost any file that I code. But for some, I prefer to use gEdit (for instance CoffeeScript files).
I wondered if there was a way to somehow embed the UI of gEdit (or any other software) in the Editor view of Eclipse. I could use my favorite editor in an unified environment and this could also bring the richness of the Eclipse environment to those files (even if I'm well aware that most of it won't work).
But is it ever possible ? Better, is there already a plugin for that ?
Thanks for your help !
I wondered if there was a way to somehow embed the UI of gEdit (or any other software) in the Editor view of Eclipse.
No, there isn't.
However, you can execute an external editor from Eclipse.
From the main Eclipse menu, left click on Window -> Preferences.
On the Preferences dialog, left click General -> Editors -> File Associations.
For any file type, you can associate one or more editors. These editors can be external to Eclipse.
Once you've done this, you can bring up your external editor by double clicking on the module name in the Package Explorer.
After you're finished editing with an external editor, refresh the module so Eclipse knows you've made changes.
SWT allows to integrate apps using OLE. Unluckily this is obviously available only when running on Windows.
For more info, see this article by Lars Vogel.

Developing an Eclipse Plugin and adding a submenu item to navigator

This is my first attempt at an Eclipse plugin- the plugin architecture is vast and a little overwhelming, but I've found a number of tutorials and how-to's online which is helping, but trying to do the following is driving me nuts:
I want to add a submenu item that is available in the navigator context menu when you right click on an Eclipse project.
I can get a submenu to appear on a project file or folder, but absolutely no idea how to have it appear on a project.
Would someone be so kind as to provide me with step by step instructions, starting with creating a new plugin-project? This is probably a lot to ask, but I can't seem to find an online guide that has just the right amount of detail. I specifically want to use the plugin-project wizard rather than hand code a plugin.xml file as I am not very familiar with the Eclipse plugin architecture.
Ok- I got it- it was simple, but I got lost in the noise of the API-
Create a new Plug-in Project using the Plugin-Project Wizard and when the wizard has launched...
1.
On the Plug-in Project page, use anything as the project name and 3.5 as target platform eclipse version
2.
On the Content page, skip ahead and just press next
3.
On the Templates page, select "plug-in with a popup menu" and press next
4.
On the Sample Popup Menu page, you will see that eclipse has prefilled the field
"Target Object's Class" with a value of "org.eclipse.core.resources.IFile".
This means that when your popup menu will only appear when you right-click on a file in
a project. As we want the menu to appear when we right click on a Project when
we are using the Navigator view, simply use "org.eclipse.core.resources.IProject" instead
5.
Finish
You can validate that your pop-up will appear as expected by right-clicking the MF file
and "Run-as" > Eclipse Application
Now to refactor the resulting code to use menuContributions and commands rather than objectContributions and actions :)
I think you have a similar question (menu in the package explorer) here:
Renaming packages in Eclipse (thanks to Rich Seller)
This could be a good start, and is a complete plugin project.
You should look into the Eclipse Common Navigator Framework there are a few tutorials on this side that tell you what to do in detail The Project Explorer is an implementation of the CNF. You should also consider using the Platform Commands to add your commands (and popup menu item) to the popup menu associated with the project explorer. It's somewhat easier to use commands than actions. You should be able to do it with by adding a Command in your plugin extensions. Unfortunately off the top of my head I don't know the right incantation to have the command appear in the project explorer. But you will be able to find it in these resources.