Building Applications with     Eclipse 4.x (e4)                  |Lars Vogel        Tom Schindl
About Tom✤    CEO BestSolution Systemhaus GmbH✤    Eclipse Committer    ✤        e4    ✤        Platform UI    ✤        EM...
About LarsWorks as independent Eclipse and Android Developerand TrainerMaintains http://www.vogella.de Java, Eclipse andAn...
Presentation                             w     •     Eclipse e4 Overvie     •     Model                              ion  ...
What is the purpose of the  Eclipse 4.x project?
Eclipse e4 ScopeMake development for   Eclipse easier
It is not making development          with easier.„Normal“ developer shouldsee no difference, except...
Eclipse 3.x - areas of improvement                   • Testing                   • Consistent way to define               ...
If I only had aconsistent view ofthe Eclipseworkbench                 9
The e4 Workbench Model              • Workbench window                – Menu with menu items                – Window Trim,...
Limits of the e4 application model• Only models the Application (frame)                Modeled               Workbench    ...
The e4 Programming Model
Dependency Injection in e4• JSR 330 compatible injection  implementation   – @javax.inject.Inject – Field, Constructor and...
a               Jav s                Clas                        Services are injected                                    ...
e4 CSS Styling
How to enable CSS StylingProperty "cssTheme” for extension point"org.eclipse.core.runtime.products" selects the initial th...
Example CSSLabel {   font: Verdana 8px;   color: rgb(240, 240, 240);}Table {   background-color: gradient radial #575757 #...
Eclipse 4.2planned to bethe basis ofEclipse Juno SDK4.2 still has some issuesAnd there will be Eclipse 3.8
e4: Where to go from here:Eclipse e4 Wikihttp://wiki.eclipse.org/E4Eclipse 4.2 Application Tutorial – Lars Vogelhttp://www...
Plugins zur Produkt / Feature• Fügen sie die folgenden Plugins Ihrem Feature  hinzu  – org.eclipse.e4.ui.workbench.addons....
Upcoming SlideShare
Loading in …5
×

Eclipse e4 - Google Eclipse Day

2,504 views

Published on

Overview of Eclipse 4.x on the Google Developer Day.

Published in: Technology, Business
1 Comment
2 Likes
Statistics
Notes
No Downloads
Views
Total views
2,504
On SlideShare
0
From Embeds
0
Number of Embeds
16
Actions
Shares
0
Downloads
34
Comments
1
Likes
2
Embeds 0
No embeds

No notes for slide

Eclipse e4 - Google Eclipse Day

  1. 1. Building Applications with Eclipse 4.x (e4) |Lars Vogel Tom Schindl
  2. 2. About Tom✤ CEO BestSolution Systemhaus GmbH✤ Eclipse Committer ✤ e4 ✤ Platform UI ✤ EMF✤ Projectlead: UFaceKit, Nebula✤ Member of the Architectual Council
  3. 3. About LarsWorks as independent Eclipse and Android Developerand TrainerMaintains http://www.vogella.de Java, Eclipse andAndroid related Tutorials with ~40 000 visitors per dayStarting to publish (e)books at Amazon
  4. 4. Presentation w • Eclipse e4 Overvie • Model ion • Dependency Inject • Styling r • Compatibility Laye e4 • JavaFX and Eclipse • Q&A
  5. 5. What is the purpose of the Eclipse 4.x project?
  6. 6. Eclipse e4 ScopeMake development for Eclipse easier
  7. 7. It is not making development with easier.„Normal“ developer shouldsee no difference, except...
  8. 8. Eclipse 3.x - areas of improvement • Testing • Consistent way to define the UI • Styling the application • Easy way to use OSGI services
  9. 9. If I only had aconsistent view ofthe Eclipseworkbench 9
  10. 10. The e4 Workbench Model • Workbench window – Menu with menu items – Window Trim, e.g. toolbar with toolbar items – Parts Sash Container • Parts – Part Stack (CTabFolder) • Parts – Handlers – Key Bindings – Commands
  11. 11. Limits of the e4 application model• Only models the Application (frame) Modeled Workbench Content of the individual Parts not included in the model
  12. 12. The e4 Programming Model
  13. 13. Dependency Injection in e4• JSR 330 compatible injection implementation – @javax.inject.Inject – Field, Constructor and Method – @javax.inject.Named• e4 specific annotations, e.g. @Optional
  14. 14. a Jav s Clas Services are injected via the the e4 frameworkpublic class ListView { @Inject private IEclipseContext context; @Inject private Logger logger; @Inject public ListView(Composite parent) { // ...
  15. 15. e4 CSS Styling
  16. 16. How to enable CSS StylingProperty "cssTheme” for extension point"org.eclipse.core.runtime.products" selects the initial theme<extension id="product" point="org.eclipse.core.runtime.products"> <product application="org.eclipse.e4.ui.workbench.swt.E4Application" name="E4 Contacs Demo"> .... <property name="cssTheme" value="org.eclipse.e4.demo.contacts.themes.darkgradient"> </property> ....
  17. 17. Example CSSLabel { font: Verdana 8px; color: rgb(240, 240, 240);}Table { background-color: gradient radial #575757 #101010 100%; color: rgb(240, 240, 240); font: Verdana 8px;}ToolBar { background-color: #777777 #373737 #202020 50% 50%; color: white; font: Verdana 8px;}
  18. 18. Eclipse 4.2planned to bethe basis ofEclipse Juno SDK4.2 still has some issuesAnd there will be Eclipse 3.8
  19. 19. e4: Where to go from here:Eclipse e4 Wikihttp://wiki.eclipse.org/E4Eclipse 4.2 Application Tutorial – Lars Vogelhttp://www.vogella.de/articles/EclipseE4/article.htmlEclipse 4.0 Application Tutorial – Tom Schindlhttp://tomsondev.bestsolution.at/2010/07/28/eclipse-4-0-and-tutorial-on-writing-e4-rcp-application-released/
  20. 20. Plugins zur Produkt / Feature• Fügen sie die folgenden Plugins Ihrem Feature hinzu – org.eclipse.e4.ui.workbench.addons.swt – org.eclipse.equinox.ds – org.eclipse.equinox.event – org.eclipse.equinox.util – org.eclipse.platform – org.eclipse.ui.forms – org.eclipse.ui.intro

×