Twitter github

Cooking in the PDE Kitchen

I have a new feature that I put in PDE that I’m requesting feedback on. I need feedback soon since I will disappear and bury myself in EclipseCon preparation and also be vacationing in Whistler, BC for a week.

I created a new schema attribute type called ‘identifier’ that can be used when you define your extension points. Instead of explaining things in words, I like to do things using pictures:

In the picture above, I’m working with the ‘pespectiveExtensions’ extension point. If you’re familiar with this extension point, it allows you to extend perspectives defined in other plug-ins. It lets you do this by referencing the id of an already defined perspective, but this suffers from the magical identifier problem in Eclipse. To help with this issue, I’ve modified the pespectiveExtensions extension point to have its ‘targetID’ field be of type ‘identifier’ and be based on perspective ids (in simple terms).

Now what does this look like to end users working with the ‘perspectiveExtensions’ extension point? Look at the figure below:

Now, instead of the ‘targetID’ field being just a string, it becomes hyperlinkable along with a ‘Browse…’ button that when clicked, displays all the valid identifiers for this attribute (in this case, it’s all the perspective ids found). On top of that, if you notice in the Problems view, identifiers that don’t belong will be properly flagged with a warning.

If you want to toy with this functionality and provide feedback, checkout the latest I-build of Eclipse where Paul Webster assisted me in the PDE kitchen by modifying some of the Platform UI extension points. Try to create a command with keybinding now >:)

Thanks to Paul Webster and Remy Suen for motivating me to finish this feature.

Note: There’s no guarantee that this feature is set in stone yet so don’t go changing all your extension points just yet. The PDE kitchen is closed until I get back from Whistler 🙂

  • villane

    This looks awesome!

  • villane

    This looks awesome!

  • Peter Hendriks

    Very nice! I love all the new PDE stuff. It’s all in the “I really missed this feature but didn’t realize it until it’s on the what’s new list” zone.

  • Min

    It would be awesome if you could add a package to the exported packages manifest by using right click on a package in the project explorer. (Similar to how Java allows you to configure build path from there)

  • Peter Hendriks

    Very nice! I love all the new PDE stuff. It’s all in the “I really missed this feature but didn’t realize it until it’s on the what’s new list” zone.

  • Min

    It would be awesome if you could add a package to the exported packages manifest by using right click on a package in the project explorer. (Similar to how Java allows you to configure build path from there)

  • Peter Friese

    Very cool! This makes the form based editor even better – along the lines of bug #141640, which added lookup features to the class field. Great work, Chris!

  • Peter Friese

    Very cool! This makes the form based editor even better – along the lines of bug #141640, which added lookup features to the class field. Great work, Chris!

  • Wassim Melhem

    Best feature ever!

  • Wassim Melhem

    Best feature ever!