Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Eclipse Platform » Java SWTBuilder : declarative interfaces for SWT/JFace
Java SWTBuilder : declarative interfaces for SWT/JFace [message #333289] Wed, 03 December 2008 14:21 Go to next message
Jacek Furmankiewicz is currently offline Jacek FurmankiewiczFriend
Messages: 13
Registered: July 2009
Junior Member
Hi everybody, I would like to announce the first build of the Java
SWTBuilder project:

http://javabuilders.org

It allows you to build the UI via a declarative YAML file (the same format
used by Ruby on Rails) while keeping all your code in pure good old Java.
It uses the amazing MigLayout layout manager for all the layout management
as well.

The main goal of this project is to provide maximum productivity when
coding GUI and reduce the number of lines of code to a minimum, while
solving all typical pain points (e.g. internationalization, layout
management, hooking up control action listeners to methods

Unlike the existing Java SwingBuilder (which uses Beans Binding), it is
focused on using JFace Databinding under the hood.

I hope you will find this project interesting and be able to offer
suggestions for its further improvement.

Here's a sample of a complex screen with many different controls and a
complex layout:

YAML file:
http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/samples/org/javabuilders/swt/samples/Widg etComposite.yaml

The Java controller file that is built using the YAML file:

http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/samples/org/javabuilders/swt/samples/Widg etComposite.java

All the magic happens in this single line of code:

SWTBuilder.build(this);

You can have a look at the SwingBuilder wiki to see current features:
http://code.google.com/p/javabuilders/wiki/JavaSwingBuilder

Not all of them are in the SWTBuilder yet, but both builders will be
functionally equivalent in future builds.

Cheers, Jacek
Re: Java SWTBuilder : declarative interfaces for SWT/JFace [message #333292 is a reply to message #333289] Wed, 03 December 2008 14:25 Go to previous messageGo to next message
Jacek Furmankiewicz is currently offline Jacek FurmankiewiczFriend
Messages: 13
Registered: July 2009
Junior Member
This Wiki has a more general overview as well, probably the best entry
point:

http://code.google.com/p/javabuilders/wiki/Overview
Re: Java SWTBuilder : declarative interfaces for SWT/JFace [message #333309 is a reply to message #333289] Wed, 03 December 2008 20:33 Go to previous messageGo to next message
Matthew Hall is currently offline Matthew HallFriend
Messages: 368
Registered: July 2009
Senior Member
Jacek Furmankiewicz wrote:
> Hi everybody, I would like to announce the first build of the Java
> SWTBuilder project:
>
> http://javabuilders.org

Congratulations on the first release! Looking forward to future
progress on SWTBuilder. Do you have a feed or mailing list to subscribe
to for future updates?

Matthew
Re: Java SWTBuilder : declarative interfaces for SWT/JFace [message #333310 is a reply to message #333309] Wed, 03 December 2008 20:37 Go to previous messageGo to next message
Jacek Furmankiewicz is currently offline Jacek FurmankiewiczFriend
Messages: 13
Registered: July 2009
Junior Member
I have not tested it, but I believe Google Code supports this out of the
box:

http://code.google.com/p/support/wiki/Feeds
Re: Java SWTBuilder : declarative interfaces for SWT/JFace [message #333312 is a reply to message #333310] Wed, 03 December 2008 21:19 Go to previous messageGo to next message
Matthew Hall is currently offline Matthew HallFriend
Messages: 368
Registered: July 2009
Senior Member
Jacek Furmankiewicz wrote:
> I have not tested it, but I believe Google Code supports this out of the
> box:
>
> http://code.google.com/p/support/wiki/Feeds

Actually your main project page has a link to a page with all the
available feeds:

http://code.google.com/p/javabuilders/feeds

I have a feed set up now to watch your project's SVN commits. Ready.. GO!

Matt
Re: Java SWTBuilder : declarative interfaces for SWT/JFace [message #333313 is a reply to message #333312] Wed, 03 December 2008 21:37 Go to previous messageGo to next message
Jacek Furmankiewicz is currently offline Jacek FurmankiewiczFriend
Messages: 13
Registered: July 2009
Junior Member
I guess I'll have to apologize in advance for all the bad words I'll be
putting into the commit comments when wrestling with JFace Databinding and
figuring out why it's throwing exceptions every time I try to do something
different than bind to some text (e.g. bind to a Slider.selection) *grin*
Re: Java SWTBuilder : declarative interfaces for SWT/JFace [message #333315 is a reply to message #333313] Wed, 03 December 2008 22:41 Go to previous messageGo to next message
Thomas Schindl is currently offline Thomas SchindlFriend
Messages: 6651
Registered: July 2009
Senior Member
Hi Jacek,

I'm working on a project that might interest you. It's named UFaceKit
[1] and provides a uniform Widget-API. If your toolkit would support
UFaceKit you automatically support:
- Swing
- SWT
- SWT-Forms
- QT

and in future hopefully:
- GWT / GXT
- a draw2d port
-

Tom

[1]http://www.eclipse.org/proposals/ufacekit/

Jacek Furmankiewicz schrieb:
> I guess I'll have to apologize in advance for all the bad words I'll be
> putting into the commit comments when wrestling with JFace Databinding
> and figuring out why it's throwing exceptions every time I try to do
> something different than bind to some text (e.g. bind to a
> Slider.selection) *grin*
>


--
B e s t S o l u t i o n . at
------------------------------------------------------------ --------
Tom Schindl JFace-Committer
------------------------------------------------------------ --------
Re: Java SWTBuilder : declarative interfaces for SWT/JFace [message #333337 is a reply to message #333315] Thu, 04 December 2008 13:06 Go to previous message
Jacek Furmankiewicz is currently offline Jacek FurmankiewiczFriend
Messages: 13
Registered: July 2009
Junior Member
Hi Tom, at this point I am really focused on getting the Swing and SWT
part done (biggest bang for my limited time, obviously).

I would be more than glad to assist you if you want to write one yourself.
Most of the code is in the reusable builder, you just have to provide
domain-specific config and extensions for it.

For example, the entire SWT part of SWTBuilder consists of less than 15
classes, all of which are very small and focused purely on one small task
(e.g. creating a Shell or a Widget and finding its proper parent for the
constructor). That's it.

http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/src/org/javabuilders/swt/SWTBuilder.java
http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/src/org/javabuilders/swt/SWTBuilderConfig .java
http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/src/org/javabuilders/swt/SWTBuilderUtils. java
http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/src/org/javabuilders/swt/handler/binding/ JFaceDatabindingHandler.java
http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/src/org/javabuilders/swt/handler/event/Me nuItemSelectionListenerHandler.java
http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/src/org/javabuilders/swt/handler/property /NameHandler.java
http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/src/org/javabuilders/swt/handler/property /SashBoundsHandler.java
http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/src/org/javabuilders/swt/handler/property /SashFormWeightHandler.java
http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/src/org/javabuilders/swt/handler/type/Ima geAsValueHandler.java
http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/src/org/javabuilders/swt/handler/type/Men uItemTypeHandler.java
http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/src/org/javabuilders/swt/handler/type/She llHandler.java
http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/src/org/javabuilders/swt/handler/type/Wid getTypeHandler.java
http://code.google.com/p/javabuilders/source/browse/trunk/or g.javabuilders.swt/src/org/javabuilders/swt/handler/type/lay out/MigSWTLayoutHandler.java
Previous Topic:merging generic text editor preferences into custom editor preferences
Next Topic:Re: Moving from Europa to Ganymede
Goto Forum:
  


Current Time: Sun Dec 22 06:19:51 GMT 2024

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

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

Back to the top