Archive

Posts Tagged ‘Galileo’

Eclipse 3.5 – some PDE improvements

With Eclipse 3.5, some new interesting features appears to improve the publication of Eclipse products and features.

Now you can publish p2 metadata directly from the build instead of generating it later based on binary jars.
To do that, just put this property :
p2.gathering =true

You can precise repositories of metadata by setting : p2.metadata.repo and p2.artifact.repo.

An other result of setting the p2.gathering property to true is that root files contributed by features will be published into the artifact repository and associated metadata will be created. So, you have directly the feature’s root files installed.

There’s another great feature. Now you can choose the replacement of the .qualifier used in a product build.  Just set the p2.product.qualifier to the qualifier you want to use.

You can now easily export source bundles too. There’s an option to generate a source bundle for each generated plug-ins.

exportSource

Eclipse 3.5 provides  facilities to publish features categories on export. (more info here).

This previous feature is quite useful, mostly if we look at the new software update skin!! If you have set no categories for your features, by default they won’t appeared.

updateSite1

You will have to checked out the “Group items by categories” options.

updateSite2

As we talked of the new software update skin. We can notice that the UI is greatly improved. And I found a little thing that I find useful : define names for software sites. (more info here)

Advertisements
Categories: Eclipse Tags: , ,

Eclipse 3.5 – Plug-in Spy and menus

All plug-in developpers know about the beloved plug-in spy (Alt+Shift+F1).  This great feature allows to inspect various part of the workbench (Editors, Views, Wizards, Dialogs,…) but menus were not include in this list… Until Galileo!!

First we will see how it works and how it looks, then I will briefly make a demo of how it is useful for a cool use case 🙂
I finally make some comment on this feature.

The Plug-in Spy for menu

Press Alt+Shift+F2, then click on the menu item that you want to inspect.
It will display this kind of pop-up :
plugin Spy popup

We can see such information as:

  • The active contribution item identifier : We know the id of the item, can call it now 🙂
  • The active contribution location URI : With this path you can easily provide your own menu item in the same group.
  • The active action definition identifier : Useful to reuse this action.
  • The active contribution item class : The responsible class of this Action. A good start point to see what this menu item triggers.
  • The contributing plug-in : To see which plug-in provides this menu item

A quick demo

A demo use case : “I want to add a great menu item which will trigger the display of great information about me!!”
So, I see that a menu item exists to do such kind of thing : “About Eclipse SDK”

menu

And as you guess I will use the Plug-in Spy to grab needed information!
plugin Spy popup

Now I create a new plug-in project and create an extension to the point : org.eclipse.ui.menus and fill the locationURI with the one given by the plug-in spy. To get the locationURI, select the text and right-click on it 😉

extensionPointWithLocationURI

Now create a command and attach it to the menu contribution :

extensions

Set a handler to this command and do what you want in execute method of the class implementing the handler (Open a MessageDialog and display a great text for instance):

handler

Test your plugin :

menuWthContribution

popupAboutMe

All works fine and very quickly!!

Comments

You have to adopt a different point of view with this new feature of the plug-in spy :

  • Make active what you want to inspect then press Alt+SHift+F1 to trigger the plug-in spy
  • Make active the plug-in spy Alt+Shift+F2, then navigate through menu and click on the menu item to inspect

Why? think of mnemonics 😉

sources :

eclipse new and noteworthy (seems to work only in google cache)
and 2 Chris blogpost : here and here

Categories: Eclipse Tags: , , ,