Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Eclipse 4 » Abandoning E4
Abandoning E4 [message #1413715] Fri, 29 August 2014 08:56 Go to next message
Martin  odloucký is currently offline Martin odlouckýFriend
Messages: 49
Registered: July 2010
Member
Hello guys,

my final decision is here. I am leaving the e4 platform and returning to the good old 3.x. Why? Here are the reasons. Note, that I have been working with the Eclipse platform for over 4 years now, so I have some experience with the 3.x.

1. It is immensely complicated to the even very simple things like binding MenuItem visibility to a core-expression. I just wanted to have some menu items to be visible only when particular part is active. After two weeks of investigation, I am giving up. If you wish, look at my previous post

https://www.eclipse.org/forums/index.php/t/800912/

see the associated bugs, see how many basic things are not solved after two releases 4.3 and 4.4. I just cannot browse forums and bugreports for two weeks to solve such a basic issue.

2. The platform got horrendously complicated and cluttered by things from the past, backward compatibility layers and so forth. Look at Eclipse Luna. It still uses Actions instead of commands. I know there is no other choice, you cannot break compatibility with already exisitng plugins. However, if you want to use e4 in standalone RCP which means you do not have to deal with backward compatibility you still have to use many things from the past, like eclipse.ui.workbench which contains some very useful controls.

3. There is no documentation! There are a few tutorials from Lars Vogel (thank you Lars, you are king) some VERY incomplete wiki pages and thats it. If only the platfrom was functional and there was some place where I can learn how to do even simple things, I would gladly write tutorials by myself. But now my e4 RCP is mostly workaround wrapped in another workaround.

I think that E4 is heading the right direction and maybe, after next 4 releases it would be mature enough. By that time though, the platform will be its own operating system written in Java being as big as Windows 8 and slow as hell due to so many layers upon layers of other layers of compatiblity, EMF and who knows what else.

I do not wish to say that the developers do not work hard and with a good intent on their minds. I just want to say that e4 is not for me.

Martin
Re: Abandoning E4 [message #1413786 is a reply to message #1413715] Fri, 29 August 2014 12:18 Go to previous messageGo to next message
Karl Puperze is currently offline Karl PuperzeFriend
Messages: 36
Registered: August 2011
Member
You should have just used the compatibility layer and continue working like your did before.
icon9.gif  Re: Abandoning E4 [message #1417307 is a reply to message #1413786] Fri, 05 September 2014 06:18 Go to previous messageGo to next message
Jeeeyul Lee is currently offline Jeeeyul LeeFriend
Messages: 117
Registered: July 2009
Location: Seoul
Senior Member

At first, Command Framework is not coming with e4.
It was strongly recommanded standard way since eclipse 3.2.
Except very old fashioned plugins that I don't like, Almost plugins uses command framework.
ActionSets are deprecated long time ago.

Here are the core reasons:

With actions, to display menu or toolbar, plugin must be started, even user never use buttons.
Because action is described with code.
It's too stupid strategy.
It's okay with small Face Application, but not for huge application such as Eclipse.
Actually, in eclipse 2.x ~ 3.1, Just starting eclipse is almost impossible with many plugins due to this problems.
(My eclipse contains 1,500 plugins)

Mean while, Command and menu contributions are just xml.
There is no reason to load classes.
Core-Expressions are also described as xml (I mean extension in plugin.xml).

And the other developers can easily inspect codes,
Because everything is described in single plugin.xml.
It makes management extremely easy.

So, We don't have execute any code to compute visibility or eanblement, or to figure out appropriate icons.
As a result, plugins does not have to be started to display it's UI contributions till users actually use it.

Without this, Eclipse might be failed 7~8 years ago.

And, all the documents that you need is already shipped in your eclipse help.
See http://help.eclipse.org/luna/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Fworkbench_cmd.htm
Re: Abandoning E4 [message #1417340 is a reply to message #1417307] Fri, 05 September 2014 08:01 Go to previous messageGo to next message
Guenther Mahr is currently offline Guenther MahrFriend
Messages: 36
Registered: September 2011
Member
Regarding actions and commands, I want to mention that I have been struggling for a while to find a way to get the action-like appearance of images in a toolbar with commands( I'm not talking about the model-supported toolbars but about toolbars inside of arbitrary composites). It seems to be impossible as in actions in toolbars there in no control used for the ToolItem so the image can appear small in its actual size (that's exactly what I want and how it looks nice) whereas as soon as you use a button, you have a border and a minimum size (which is larger). Somewhere I found the recommendation to use labels with images instead of buttons but then you would have to do event handling in a complicated way with MouseListeners and KeyListeners and still the appearance would not be the same as with actions (as soon as you hover over it for example). Css support in e4 doesn't seem to include the border of buttons (by the way, is there somewhere a "guide" on what is really supported in css in e4 now?).

So I ended up in continuing using actions and in order to support key bindings wrapping them into commands - of course not a nice solution. Actions in a toolbar also seem to have the disadvantage that they are ignored in the key tab order - you can only make them accessible with forceFocus().

I'd be curious to see if somebody knows a better way.

Kind Regards,
Günther
Re: Abandoning E4 [message #1417358 is a reply to message #1417340] Fri, 05 September 2014 08:48 Go to previous messageGo to next message
Jeeeyul Lee is currently offline Jeeeyul LeeFriend
Messages: 117
Registered: July 2009
Location: Seoul
Senior Member

I did read your post many times, however I don't get what you really want to say, sorry.

Can you give more clue?
model file, codes or menu contribution xml..

Quote:
is there somewhere a "guide" on what is really supported in css in e4 now

Yes, here it is

https://wiki.eclipse.org/E4/CSS/SWT_Mapping

SWT is not intended to be customized, It supposed to provide exactly same native experience with user's OS. It means using native theme.

So e4 css styling idea has some paradox with SWT.

for Instance, Even CSS feature is provided by e4,
There is no way to adjust vertical alignment of Button in Windows OS.

Because Windows doesn't provides such APIs.
So css is not so meaning full for SWT except cross-platform custom controls(canvas based, IE: CTabFolder)

However It is hard to treat e4 as stupid.

Because e4 is not intended to be rendered with SWT Only.
Luna is just single show case of E4 Application renderer.
There are few renderers that is not using SWT, however each of them has to long way to go by for now.

You can also define new css properties, however it's somehow complicated to explain now.
Instead of explaining it, Please visit my theme plugin project to check capabilities.

https://github.com/jeeeyul/eclipse-themes
http://themes.jeeeyul.net
Re: Abandoning E4 [message #1417465 is a reply to message #1417358] Fri, 05 September 2014 13:48 Go to previous message
Guenther Mahr is currently offline Guenther MahrFriend
Messages: 36
Registered: September 2011
Member
Hi Jeeeyul,

sorry for being unclear in my last post. Let me try to explain again:

I use a lot of icons inside of composites which themselves are located somewhere in parts. And I want to show these icons (which when I press on them trigger different kinds of actions) in a nice format. The only way to do that I saw was to put them into a toolbar. And there I couldn't see another way to reach the desired appearance other than to add them as Actions to a ToolBarManager.

Actually I found out the very simple answer to my problem (with a little help of Google) in the meantime:
e.g.:

ToolBar toolbar = new ToolBar(c1, SWT.FLAT);
ToolItem item = new ToolItem(toolbar, SWT.FLAT);
item.setImage(new Image(display, "link_obj.gif"));

By using SWT.FLAT in ToolBar and ToolItem, the item "button" doesn't have a border any more and appears like it would if I had added an Action to a ToolBarManager.


So - problem solved!

Regarding Css, the site you mention seems to suggest that one can use "border-style" for a Button.
So I tried:

Button {
border-style: none;
}

but that has no effect.

Kind Regards,
Guenther
Previous Topic:E4 Compatibility Layer Menu Ordering Issues.
Next Topic:Customizing ToolBar
Goto Forum:
  


Current Time: Tue Apr 23 11:52:08 GMT 2024

Powered by FUDForum. Page generated in 0.04048 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top