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.
Difference between revisions of "Efxclipse/SWTonFX"
(→Components) |
(→How to contribute) |
||
(15 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 = | ||
− | * | + | * Sign an Eclipse CLA - we can not accept pull requests, patches |
− | * Get | + | * Get Java8 from http://www.oracle.com/technetwork/java/javase/downloads/index.html |
− | * | + | * Download e(fx)clipse All-In-One builds from http://downloads.efxclipse.bestsolution.at/downloads/nightly/sdk/ |
− | + | * 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) | |
− | * | + | * Clone http://git.eclipse.org/c/efxclipse/org.eclipse.efxclipse.git/ |
− | * | + | * Import the following projects |
− | ** | + | ** org.eclipse.fx.runtime.examples.swt |
− | ** | + | ** 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:// | + | * 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> | ||
Line 32: | Line 70: | ||
<tr> | <tr> | ||
<td>Image</td> | <td>Image</td> | ||
+ | <td></td> | ||
<td bgcolor="green"></td> | <td bgcolor="green"></td> | ||
<td>Finished</td> | <td>Finished</td> | ||
Line 37: | Line 76: | ||
<tr> | <tr> | ||
<td>Button</td> | <td>Button</td> | ||
+ | <td></td> | ||
<td bgcolor="lightgreen"></td> | <td bgcolor="lightgreen"></td> | ||
<td>Main methods done</td> | <td>Main methods done</td> | ||
Line 42: | Line 82: | ||
<tr> | <tr> | ||
<td>Canvas</td> | <td>Canvas</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 47: | Line 88: | ||
<tr> | <tr> | ||
<td>Caret</td> | <td>Caret</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 52: | Line 94: | ||
<tr> | <tr> | ||
<td>ColorDialog</td> | <td>ColorDialog</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 57: | Line 100: | ||
<tr> | <tr> | ||
<td>Combo</td> | <td>Combo</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 62: | Line 106: | ||
<tr> | <tr> | ||
<td>Composite</td> | <td>Composite</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 67: | Line 112: | ||
<tr> | <tr> | ||
<td>Control</td> | <td>Control</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 72: | Line 118: | ||
<tr> | <tr> | ||
<td>CoolBar</td> | <td>CoolBar</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 77: | Line 124: | ||
<tr> | <tr> | ||
<td>CoolItem</td> | <td>CoolItem</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 82: | Line 130: | ||
<tr> | <tr> | ||
<td>DateTime</td> | <td>DateTime</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 87: | Line 136: | ||
<tr> | <tr> | ||
<td>Decorations</td> | <td>Decorations</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 92: | Line 142: | ||
<tr> | <tr> | ||
<td>Dialog</td> | <td>Dialog</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 97: | Line 148: | ||
<tr> | <tr> | ||
<td>DirectoryDialog</td> | <td>DirectoryDialog</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 102: | Line 154: | ||
<tr> | <tr> | ||
<td>Display</td> | <td>Display</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 107: | Line 160: | ||
<tr> | <tr> | ||
<td>Event</td> | <td>Event</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 112: | Line 166: | ||
<tr> | <tr> | ||
<td>EventTable</td> | <td>EventTable</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 117: | Line 172: | ||
<tr> | <tr> | ||
<td>FileDialog</td> | <td>FileDialog</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 122: | Line 178: | ||
<tr> | <tr> | ||
<td>FontDialog</td> | <td>FontDialog</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 127: | Line 184: | ||
<tr> | <tr> | ||
<td>Group</td> | <td>Group</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 132: | Line 190: | ||
<tr> | <tr> | ||
<td>Item</td> | <td>Item</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 137: | Line 196: | ||
<tr> | <tr> | ||
<td>Label</td> | <td>Label</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 142: | Line 202: | ||
<tr> | <tr> | ||
<td>Link</td> | <td>Link</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 147: | Line 208: | ||
<tr> | <tr> | ||
<td>List</td> | <td>List</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 152: | Line 214: | ||
<tr> | <tr> | ||
<td>Menu</td> | <td>Menu</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 157: | Line 220: | ||
<tr> | <tr> | ||
<td>MenuItem</td> | <td>MenuItem</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 162: | Line 226: | ||
<tr> | <tr> | ||
<td>MessageBox</td> | <td>MessageBox</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 167: | Line 232: | ||
<tr> | <tr> | ||
<td>Monitor</td> | <td>Monitor</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 172: | Line 238: | ||
<tr> | <tr> | ||
<td>ProgressBar</td> | <td>ProgressBar</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 177: | Line 244: | ||
<tr> | <tr> | ||
<td>Sash</td> | <td>Sash</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 182: | Line 250: | ||
<tr> | <tr> | ||
<td>Scale</td> | <td>Scale</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 187: | Line 256: | ||
<tr> | <tr> | ||
<td>Scrollbar</td> | <td>Scrollbar</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 192: | Line 262: | ||
<tr> | <tr> | ||
<td>Shell</td> | <td>Shell</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 197: | Line 268: | ||
<tr> | <tr> | ||
<td>Slider</td> | <td>Slider</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 202: | 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> | ||
Line 207: | Line 280: | ||
<tr> | <tr> | ||
<td>TabFolder</td> | <td>TabFolder</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 212: | Line 286: | ||
<tr> | <tr> | ||
<td>TabItem</td> | <td>TabItem</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 217: | Line 292: | ||
<tr> | <tr> | ||
<td>Table</td> | <td>Table</td> | ||
+ | <td></td> | ||
<td bgcolor="yellow"></td> | <td bgcolor="yellow"></td> | ||
<td>SWT.EarseItem not supported</td> | <td>SWT.EarseItem not supported</td> | ||
Line 222: | Line 298: | ||
<tr> | <tr> | ||
<td>TableColumn</td> | <td>TableColumn</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 227: | Line 304: | ||
<tr> | <tr> | ||
<td>TableItem</td> | <td>TableItem</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 232: | Line 310: | ||
<tr> | <tr> | ||
<td>TaskBar</td> | <td>TaskBar</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 237: | Line 316: | ||
<tr> | <tr> | ||
<td>TaskItem</td> | <td>TaskItem</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 242: | Line 322: | ||
<tr> | <tr> | ||
<td>Text</td> | <td>Text</td> | ||
+ | <td></td> | ||
<td bgcolor="lightgreen"></td> | <td bgcolor="lightgreen"></td> | ||
<td>Main methods done</td> | <td>Main methods done</td> | ||
Line 247: | Line 328: | ||
<tr> | <tr> | ||
<td>ToolBar</td> | <td>ToolBar</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 252: | Line 334: | ||
<tr> | <tr> | ||
<td>ToolItem</td> | <td>ToolItem</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 257: | Line 340: | ||
<tr> | <tr> | ||
<td>ToolTip</td> | <td>ToolTip</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 262: | Line 346: | ||
<tr> | <tr> | ||
<td>Tracker</td> | <td>Tracker</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 267: | Line 352: | ||
<tr> | <tr> | ||
<td>Tray</td> | <td>Tray</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 272: | Line 358: | ||
<tr> | <tr> | ||
<td>TrayItem</td> | <td>TrayItem</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 277: | Line 364: | ||
<tr> | <tr> | ||
<td>Tree</td> | <td>Tree</td> | ||
+ | <td></td> | ||
<td bgcolor="orange"></td> | <td bgcolor="orange"></td> | ||
<td>TreeTable support is missing, SWT.EarseItem not supported</td> | <td>TreeTable support is missing, SWT.EarseItem not supported</td> | ||
Line 282: | Line 370: | ||
<tr> | <tr> | ||
<td>TreeColumn</td> | <td>TreeColumn</td> | ||
+ | <td></td> | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
Line 287: | Line 376: | ||
<tr> | <tr> | ||
<td>CTabFolder</td> | <td>CTabFolder</td> | ||
+ | <td></td> | ||
<td bgcolor="yellow"></td> | <td bgcolor="yellow"></td> | ||
<td>Initial version working</td> | <td>Initial version working</td> | ||
Line 293: | Line 383: | ||
<tr> | <tr> | ||
<td>StyledText</td> | <td>StyledText</td> | ||
+ | <td></td> | ||
<td bgcolor="orange"></td> | <td bgcolor="orange"></td> | ||
<td>TextLayout port has to be finished</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
How to contribute
- Sign an Eclipse CLA - we can not accept pull requests, patches
- Get Java8 from http://www.oracle.com/technetwork/java/javase/downloads/index.html
- Download e(fx)clipse All-In-One builds from http://downloads.efxclipse.bestsolution.at/downloads/nightly/sdk/
- 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)
- Clone http://git.eclipse.org/c/efxclipse/org.eclipse.efxclipse.git/
- Import the following projects
- org.eclipse.fx.runtime.examples.swt
- 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
- 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
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 |