Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Efxclipse/SWTonFX"

(Components)
(How to contribute)
 
(20 intermediate revisions by 2 users not shown)
Line 4: Line 4:
  
 
SWT on JavaFX is an experimental SWT port sitting on top of JavaFX. It's main task is to built a compat story to move the Eclipse IDE away from SWT to JavaFX.
 
SWT on JavaFX is an experimental SWT port sitting on top of JavaFX. It's main task is to built a compat story to move the Eclipse IDE away from SWT to JavaFX.
 +
 +
= Eclipse on FX state =
 +
 +
[[File:eclipse_fx.png]]
  
 
= How to contribute =
 
= How to contribute =
  
* Get JDK8Beta > b120 from https://jdk8.java.net/download.html
+
* Sign an Eclipse CLA - we can not accept pull requests, patches
* Get Eclipse 4.3 SR 1 from http://download.eclipse.org/eclipse/downloads/drops4/R-4.3.1-201309111000/
+
* Get Java8 from http://www.oracle.com/technetwork/java/javase/downloads/index.html
* Install EGit-Team Provider
+
* Download e(fx)clipse All-In-One builds from http://downloads.efxclipse.bestsolution.at/downloads/nightly/sdk/
* Install JDTBeta8 feature patches from http://dist.springsource.com/snapshot/TOOLS/java8/e43
+
* Launch the downloaded IDE with JDK8 (because of a bug in Luna M6 it is super important that you launch with JDK8 the first time already)
* Install e(fx)clipse tooling
+
* Clone http://git.eclipse.org/c/efxclipse/org.eclipse.efxclipse.git/
** add update site http://download.eclipse.org/modeling/tmf/xtext/updates/composite/releases/  
+
* Import the following projects
** add update site ttp://download.eclipse.org/efxclipse/updates-nightly/site
+
** org.eclipse.fx.runtime.examples.swt
** Clone https://bitbucket.org/tschindl/e_on_f.git
+
** org.eclipse.fx.runtime.swt.compat
 +
** org.eclipse.fx.runtime.swt
 +
** org.eclipse.fx.runtime.swtutil
 +
** org.eclipse.fx.ui.controls
 
* Get familiar with the codebase
 
* Get familiar with the codebase
* Show up at https://groups.google.com/forum/?fromgroups=#!forum/swt-javafx and ask questions, and inform others what you plan to work on
+
* Show up at our mailing list https://dev.eclipse.org/mailman/listinfo/efxclipse-dev and ask questions, and inform others what you plan to work on
 +
* (optional) File a bugzilla https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Efxclipse&component=Runtime&short_desc=%5Bswtfx%5D
 +
 
 +
<!--
 +
== Workbench ==
 +
 
 +
For those of you who want to run the Eclipse IDE on top of JavaFX you should clone the following repos as well and use the '''efx_tmp''' branch:
 +
 
 +
* https://github.com/swt-javafx/eclipse.platform.ui/
 +
* https://github.com/swt-javafx/eclipse.platform.text/
 +
* https://github.com/swt-javafx/eclipse.jdt.ui/
 +
 
 +
You need to import the following projects:
 +
* org.eclipse.e4.ui.workbench
 +
* org.eclipse.e4.ui.workbench.renderers.swt
 +
* org.eclipse.e4.ui.workbench.swt
 +
* org.eclipse.jface
 +
* org.eclipse.jface.text
 +
* org.eclipse.search
 +
* org.eclipse.ui.ide.application
 +
* org.eclipse.ui.workbench
 +
* org.eclipse.jdt.ui
 +
 
 +
You can launch 2 different inner Eclipse:
 +
* org.eclipse.ui.ide.workbench - swt - git.launch: which uses the native SWT-Port
 +
* org.eclipse.ui.ide.workbench-git.launch: which uses SWT on JavaFX
 +
 
 +
You have to launch the "''org.eclipse.ui.ide.workbench - swt - git.launch''" and switch to the <strong>Java Perspective</strong> before you start the "''org.eclipse.ui.ide.workbench-git.launch''" for the first time.
 +
 
 +
<strong>THERE ARE MANY - IF NOT MOST - THINGS BROKEN</strong>
 +
-->
  
 
= Contributions =
 
= Contributions =
Line 27: Line 64:
 
<tr>
 
<tr>
 
<th>Component</th>
 
<th>Component</th>
 +
<th>Bug-Id</th>
 
<th>Status</th>
 
<th>Status</th>
 
<th>Remarks</th>
 
<th>Remarks</th>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
   <td>Text</td>
+
   <td>Image</td>
  <td></td>
+
 
   <td></td>
 
   <td></td>
 +
  <td bgcolor="green"></td>
 +
  <td>Finished</td>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
 
   <td>Button</td>
 
   <td>Button</td>
 +
  <td></td>
 +
  <td bgcolor="lightgreen"></td>
 +
  <td>Main methods done</td>
 +
</tr>
 +
<tr>
 +
  <td>Canvas</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Caret</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>ColorDialog</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Combo</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Composite</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Control</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>CoolBar</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>CoolItem</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>DateTime</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Decorations</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Dialog</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>DirectoryDialog</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Display</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Event</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>EventTable</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>FileDialog</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>FontDialog</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Group</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Item</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Label</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Link</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>List</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Menu</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>MenuItem</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>MessageBox</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Monitor</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>ProgressBar</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Sash</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Scale</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Scrollbar</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Shell</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Slider</td>
 +
  <td></td>
 
   <td></td>
 
   <td></td>
 
   <td></td>
 
   <td></td>
Line 42: Line 274:
 
<tr>
 
<tr>
 
   <td>Spinner</td>
 
   <td>Spinner</td>
 +
  <td></td>
 
   <td bgcolor="red"></td>
 
   <td bgcolor="red"></td>
 
   <td>JavaFX control missing</td>
 
   <td>JavaFX control missing</td>
 +
</tr>
 +
<tr>
 +
  <td>TabFolder</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>TabItem</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
 
   <td>Table</td>
 
   <td>Table</td>
 
   <td></td>
 
   <td></td>
   <td>SWT.MeasureItem not supported</td>
+
  <td bgcolor="yellow"></td>
 +
   <td>SWT.EarseItem not supported</td>
 +
</tr>
 +
<tr>
 +
  <td>TableColumn</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>TableItem</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>TaskBar</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>TaskItem</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Text</td>
 +
  <td></td>
 +
  <td bgcolor="lightgreen"></td>
 +
  <td>Main methods done</td>
 +
</tr>
 +
<tr>
 +
  <td>ToolBar</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>ToolItem</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>ToolTip</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Tracker</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Tray</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>TrayItem</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>Tree</td>
 +
  <td></td>
 +
  <td bgcolor="orange"></td>
 +
  <td>TreeTable support is missing, SWT.EarseItem not supported</td>
 +
</tr>
 +
<tr>
 +
  <td>TreeColumn</td>
 +
  <td></td>
 +
  <td></td>
 +
  <td></td>
 +
</tr>
 +
<tr>
 +
  <td>CTabFolder</td>
 +
  <td></td>
 +
  <td bgcolor="yellow"></td>
 +
  <td>Initial version working</td>
 +
</tr>
 +
 
 +
<tr>
 +
  <td>StyledText</td>
 +
  <td></td>
 +
  <td bgcolor="orange"></td>
 +
  <td>TextLayout port has to be finished</td>
 
</tr>
 
</tr>
 
</table>
 
</table>

Latest revision as of 15:00, 23 April 2014


What is it

SWT on JavaFX is an experimental SWT port sitting on top of JavaFX. It's main task is to built a compat story to move the Eclipse IDE away from SWT to JavaFX.

Eclipse on FX state

Eclipse fx.png

How to contribute


Contributions

Generally speaking any contribution is welcome. An easy way to contribute is to port one of the SWT-Snippets http://www.eclipse.org/swt/snippets/ to the at.bestsolution.efxclipse.runtime.examples.swt-bundle. The code currently holds a lot of calls to Util.logNotImplemented() track them down and implement them so that they do the same as they do in the other SWT ports

Components

Component Bug-Id Status Remarks
Image Finished
Button Main methods done
Canvas
Caret
ColorDialog
Combo
Composite
Control
CoolBar
CoolItem
DateTime
Decorations
Dialog
DirectoryDialog
Display
Event
EventTable
FileDialog
FontDialog
Group
Item
Label
Link
List
Menu
MenuItem
MessageBox
Monitor
ProgressBar
Sash
Scale
Scrollbar
Shell
Slider
Spinner JavaFX control missing
TabFolder
TabItem
Table SWT.EarseItem not supported
TableColumn
TableItem
TaskBar
TaskItem
Text Main methods done
ToolBar
ToolItem
ToolTip
Tracker
Tray
TrayItem
Tree TreeTable support is missing, SWT.EarseItem not supported
TreeColumn
CTabFolder Initial version working
StyledText TextLayout port has to be finished

Back to the top