Can't record nebula objects using rcptt - eclipse-rcp

i'm trying to record a test over a rcp app but i can't; the nebula object can't be recorded by rcptt tool. I am using rcptt version 2.4.2

Like all RCP testing tools, RCPTT also can not record actions on Nebula controllers.
The reason for that is Nebula goes around SWT's API and renders controllers in a more resource aware way.

Related

Web application UI look like eclipse UI

I am trying to design UI in angular 6 that application intention is to provide complete eclipse interface and its functionality.
any plugins to integrate eclipse in web application(angular) to get all the functionalities and buttons etc or any suggestions?
FYI https://help.eclipse.org I have seen only this site look like eclipse UI.

Eclipse e4 migrating 3.x plugin to 4.x?

I have been working with Eclipse RCP for over a week now, and I've now been given an Eclipse plugin written in 3.x, which I need to migrate to 4.x. I'm using a book called Eclipse 4 RCP by Lars Vogel which has a small section on this, but I can't for the life of me figure out what I'm to do.
I'm trying to do this throught the use of the compatiblity layer. It mentions to add a couple of features for this (org.eclipse.rcp, org.eclipse.emf.ecore, org.eclipse.emf.common) and your ready to go, but I don't exactly know what I'm to do here. Like do I add these to the existing product file of the 3.x plugin I've been given, or do I create a separate e4 project and point to that. Many of the tutorials I read are a bit vague with the details and its a shame there's no proper step by step guide for beginners with this. Any help would be great.
Probably, you should be creating a separate e4 plug-in project for this. And where you have to configure your extensions/extension points in e4 ways.
Basically, like creating a new project.
If you want to migrate your Eclipse 3.x RCP application to the Eclipse 4 programming model, you can't directly reuse existing plugin.xml based user interface components, e.g. Views or Editors based on the definition in plugin.xml .
Components based on the plugin.xml file must be adjusted to avoid inheritance of Eclipse classes and to use the programming model based on #Inject . They also must be contributed to the application model.
Components which are not directly based on the plugin.xml file must be adjusted if they use Eclipse 3.x singletons, as for example Platform or PlatformUI , to access Eclipse API
you may want to take a look at this page: https://www.eclipse.org/community/eclipse_newsletter/2013/february/article3.php

Eclipse RCP: NullPointer on getSite().setSelectionProvider(...)

As I have done the following tutorials:
http://www.vogella.com/tutorials/EclipseRCP/article.html
http://www.vogella.com/tutorials/EclipseJFaceTable/article.html
http://www.vogella.com/tutorials/EclipseJFaceTableAdvanced/article.html
I wanted to combine the JFace table viewer (plugin from 2nd and 3rd tutorial) and the ToDo application from the first tutorial. In the JFace table example(s) there is a View extended from a ViewPart. In this the call:
getSite().setSelectionProvider(view)
inside the createPartControl method is fine and works.
But when I do the same in the other tutorial it does not work, I get a NullPointerException. The first article creates a plugin and then transform it using features and products into an Eclipse 4 application. So the classes in the application are not derived from a 'Part'. They are referenced using the application model and only use the annotation #PostConstruct.
Why is it that I get this NullPointerException?
And really, how can I get the SelectionProvider service linked to the Workbench?
I also tried to use PlatformUI.getWorkbench() but it says that the workbench does not yet exist.
Any help highly appreciated.
Thanks.
Eclipse 4 (e4) applications are completely different from traditional Eclipse 3.x style applications.
In an e4 application you cannot use a lot of things that are used in a Eclipse 3.x application - so you need to check which style the example you are using is based on. The e4 application has access to a lot of new features that are not available in a 3.x application.
In an e4 application you inject the ESelectionService to get and set the current selection.

Are there any non-deprecated Eclipse PDE plugin templates?

I'm learning how to develop plugins for eclipse, and I'm trying to add a menu item to a context menu. That sounds simple enough, and in the "New Plugin Project" wizard, several templates are given, one of which creates a new item in the context menu.
The problem is Eclpse's own templates contain deprecated code. How can I learn how to develop proper code if even the provided templates use deprecated structures? Are there any templates out there which use modern structures like MenuContributions instead of deprecated structures like ActionSet and PopupMenus?
For the record, I am using the latest version of Eclipse SDK, Indigo 4.2.1.
There are no templates for the command/menu API.
https://bugs.eclipse.org/bugs/show_bug.cgi?id=194669
A good tutorial on commands is:
http://www.vogella.com/articles/EclipseCommands/article.html

Using IDE plug-in in an Eclipse RCP application?

I'm developing an Eclipse RCP based application, that uses the resource model of eclipse (workspace, projects, resources, etc.). For basic usage of the resource concept, there is no need to depend on the IDE plug-in. But many dialogs, wizards or views I want to use are inside this plug-in. I read about not to have any dependencies on IDE plug-ins in an RCP app.
For example, I want to implement a new project wizard and use the common look and functionality of the existing ones by overriding org.eclipse.ui.dialogs.WizardNewProjectCreationPage and using org.eclipse.ui.wizards.newresource.BasicNewProjectResourceWizard - both inside the IDE plug-in.
Are there any caveats using org.eclipse.ui.ide plug-in in an RCP app?
If so, what is your best practice to not reinvent the wheel?
As you can see with this thread (or that one), since eclipse3.3, most the the components of org.eclipse.ui.ide have been isolated in their own plugin.
So it can be a good practice to include what you need from that package, the only problem being to include to much contributions.
This thread gives a hint as how to remove some of them.
You can, for example, disable export and import wizards.
Both of those examples are based on Activity filtering
An activity is a logical grouping of function that is centered around a certain kind of task.
For example, developing Java software is an activity commonly performed by users of the platform, and the JDT defines many UI contributions (views, editors, perspectives, preferences, etc.) that are only useful when performing this activity.
Activities can be used to implement progressive disclosure of UI elements; when used for this purpose, they are called capabilities in the UI.
The second use for activities, added for Eclipse 3.4, is to filter available UI elements based on other criteria such as the current user's access permissions as defined by the application.
This article "Eclipse Activities – Hide / Display certain UI elements" by Lars Vogel in his "papercut series" gives a good illustration of hiding / displaying certain UI elements.