Skip to main content

Best GUI builder

48 replies [Last post]
jako
Offline
Joined: 2005-05-23
Points: 0

So here we are.

Finally a site totally dedicated to desktop.

The question is: Which is the best ide for GUI building?

Here is my experience:

NetBeans : nice builder, good components event handling, the reaction of gui builder is little slow (my favorite), good code generation.

JBuilder : like NetBeans

V4all ,Eclipse plugins: Very nice, very fast gui (i had some problem, but that was my fault)

Anyone have ever seen a java gui builder like Delphi? ;)

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
dvdw
Offline
Joined: 2004-05-05
Points: 0

OK, if you want something for free, have a look at this one:

https://wiser.dev.java.net

you can download an early release there.
if you try it - please let me know what you think about my work. When running into trouble while testing the distributen contact me via mail.

dirk

karsten
Offline
Joined: 2003-06-11
Points: 0

Apple's InterfaceBuilder is an excellent tool for building
user interfaces that comply with the Mac Aqua UI guidelines.
Its understanding of these guidelines and the tool's support
for them are outstanding, for example the placement guides.
In addition developers get good design quickly and cheaply
- in my perspective an essential goal for every tool.

But when it comes to multiplatform design, the tool looses
much of its strengths. For example, if you design for OS X,
high-fidelty design means that you follow the Aqua guide;
but if you design for Windows flavors, you should follow
Microsoft's Layout Style Guide. And that is only poorly
supported by the InterfaceBuilder and the underlying
layout system.

If you design for OS X, you can assume a set of fixed
fonts and font sizes, as described in the Aqua guide.
In contrast if you design for Windows, fonts, font sizes
and the screen resolution can change. The Microsoft
layout guide and the Aqua guide differ significantly
in the recommended component minimum width, gap sizes,
borders, button order (OK Cancel vs. Cancel OK), etc.

Most layout systems cannot handle the many differences
of a single Windows flavor, let's say Windows XP.
And I'm only aware of a two layout systems that handle
differences between the Windows and Mac Aqua styles.
A visual builder that hooks into a single UI style
won't work well with multiplatform user interfaces.
And a builder that doesn't support even a single guide
will often lead to poor design. Consequently I'd say
that the InterfaceBuilder is great for OS X, and
is less usable for multiplatform Java apps.

There's a project that aims to turn InterfaceBuilder
.nib files into a form that can be converted into
well designed multiplatform layouts. Basically it'll
convert Aqua sizes into logical sizes so that can be
mapped to sizes of any platform. I'm not sure where
this will end, at least it is worth a look for all
developers that have an InterfaceBuilder at hand,
feel well with it, but aim to deploy on non-Aqua too.

Just for completeness: the two layout systems that
handle the many different Windows configurations
are SWT's layout managers plus layout system and
the JGoodies FormLayout plus Forms layout system.
Both follow the Microsoft approach of using a
layout unit that scales with the font, font size
and screen resolution (not screen size).
In many native MS apps these dialog units are a
(poor) workaround for the absence of layout management.
Combined with layout management it is a good way
to describe layouts in multiplatform user interfaces.

The JGoodies Forms layout system adds logical sizes
that describe in a abstract form what is defined in
a style guide. And Forms provides two mappings from
the logical sizes to concrete sizes: one for Aqua,
another for the Microsoft layout style guide.
There are already visual builders for Forms, among
others Jeanette Winzenburg's FormBuilder, the Abelle
Forms Designer; Karl Tauber's JFormDesigner is
in Beta state.

If you want to test the flexibility and quality
of a multiplatform design produced by a visual builder,
you may check the finished UI on Mac OS X, a Windows
with 96 dpi, a Windows with 120 dpi, and a Windows
with larger fonts. Also, you may check whether the
design supports a native look&feel implementation.

You can find more information about these issues
in the presentations and articles at my web pages.
In the "Layout and Panel Building" presentation
I try to come up with a bunch of goals for layout
systems, present some concepts, and *a* solution:
http://www.JGoodies.com/articles/

Hope this helps. Best regards,
Karsten

cld71
Offline
Joined: 2004-03-04
Points: 0

A change in IDE. I am currenty using jEdit @ http://jedit.org. I gave up on netbeans not able to wrap text.

ybgpatel
Offline
Joined: 2010-01-11
Points: 0

Hi,
I want to use JEasy for my projects UI part, currently I am trying to make a simplest program which will display a Label on my frame. I have seen the Example given in the JEasy Repository, and have followed the same steps, but when i execute my prg, a blank window is shown to me, it doesn't have any content in it.

If you have any small running application, then please share it with me, may be I am not getting how to initialize the contents on the frame.

Please reply soon.
Thanks in advance.

Anonymous

> Question though - we will be designing and using it
> for commercial apps. It isn't immediately clear to me
> from reading the Trolltech license, that the we can
> use the version of QtDesigner for this.

As I understand the licence you can create GPL software with the open edition. For use in comercial products you must buy a comercial copy.

But: You are not really using QT, You just use it as a tool to generate your .ui file. I am not really sure, but I have the same problem and sent a mail yesterday to Trolltech, but haven't received an answer so far.

robw
Offline
Joined: 2004-03-04
Points: 0

Thanks for the feedback - I'd be interested in any feedback that comes back from Trolltech. Seems like possibly a grey area to me, so nice to have an "official line" from them.

Also - quiz question - just looking at the examples and Javadoc api, I didn't see an obvious Tree control. Is there one?

-- Rob

vdkuil
Offline
Joined: 2006-02-17
Points: 0

> Also - quiz question - just looking at the examples
> and Javadoc api, I didn't see an obvious Tree
> control. Is there one?
We believe in implementing stuff we use.. and since we (so far) did not use JTree, we did not implement one yet. If you've got an example ui, we'll be glad to help you write a plugin for that.. Because that's actually all it takes. Write the appropriate plugin. :)

-Roy

robw
Offline
Joined: 2004-03-04
Points: 0

We use JTree's all over our various UI's - it's pretty much a fundamental navigation aid to component parts of the back-end applications our UI's connect to. Further than that, individual nodes in the trees have context sensitive, right click pop-up menus (similar to the kind you find in Explorer type apps.). We also use Tree-Table hybrids in a couple of places.

Wouldn't necessarily have to be a JTree - but a tree control with equivalent functionality is pretty much essential for the UI work we do.

vdkuil
Offline
Joined: 2006-02-17
Points: 0

> We use JTree's all over our various UI's - it's
> pretty much a fundamental navigation aid to component
> parts of the back-end applications our UI's connect
> to. Further than that, individual nodes in the trees
> have context sensitive, right click pop-up menus
> (similar to the kind you find in Explorer type
> apps.). We also use Tree-Table hybrids in a couple of
> places.
>
> Wouldn't necessarily have to be a JTree - but a tree
> control with equivalent functionality is pretty much
> essential for the UI work we do.

OK, maybe you misunderstood my remark about "write the appropriate plugin". I never ment for you to remove JTree usage in any way. It's just that anything supplied with the UICompiler has been tested (read: is used in production). So far we had no need for jtree..

So the plugin that needs to be written is a class that converts QtDesigner XML to java code. Not very hard to do, but just something that needs to be done... :(

If you want that support I could help you write the appropriate plugin for that. So that you have a good testcase and we know that all plugins supplied are actually working.

robw
Offline
Joined: 2004-03-04
Points: 0

Thanks - at present we're still looking at which UI designer route we may go, so wouldn't want to put you to that effort just yet. If it looks like QtDesigner meets what we need in other areas i'll certainly take you up on that offer tho.

- Rob

zander
Offline
Joined: 2003-06-13
Points: 0

> In leu of Emacs of Vi.. Any opions in regards to actually GUI builders in regards to rapid prototyping and having the ability to carry the code forward

I think that is the wrong question to ask; you don't want a code generator which will kickstart your GUI and which can/have to alter by hand afterwards. I think you want a GUI builder that can build your GUI so you can get on with your work, for example by adding controls to them.

Next to that you want to Jump into changed specs from your client fast. Altering your existing GUI with most tools means to start all over again, this only re-inforces the point of the previous paragraph. You simply want to keep it editable at all times.
There are currently two applications that provide this, and IMO any other is not worth your time (or more importantly; your developers time).
These two you can compare are:
- JVider
- UICompiler

Note that I am one of the main authors of UICompiler.

Anonymous

Zander,

It is obvious that you are a contributer to UICompiler. ;) I took a quick look at it and got confused by the fact that it used Qt. Was not sure how that fit in and I am not sure how UI makes two development possible. By two way I mean creating code, editing the code by hand, and then going back and creating more code. I could see how all this could be done if everything is done within the tool, but most of the UI tools fall apart when done outside the tool. How is this handle through UICompiler? I would love using a OSS tool, but I after 5 minutes with Jvrider I was annoyed with it and Qt confused me. LOL. Guess I am impatient. BX on the other hand seemed more intuitive on the outside.

Have you tried BX for Java? If so, what was your take on it besides that there is a cost associated with it.

As for wasting time. It will be my time since I am the developer. We need to create a proof concept in a couple weeks. I am ramping up on Swing and I need a tool that will create look and feel in a short period of time. Having this tool be able to be used to actually create code that can be used in a production environment would be nice, but from what I have heard from other people is that this goal is unreachable with current offerings. Do acheive this must one live in the tool?

Well I would appreciate opinions from people that used Netbeans, JBuilder etc. Is there UI bulders usable for rapid prototyping? From the tools I have looked at it did not seem apparent that they allowed full UI applications to be created using them. They all seemed to be used to design a single window within the application.

zander
Offline
Joined: 2003-06-13
Points: 0

> Zander,
>
> It is obvious that you are a contributer to
> UICompiler. ;) I took a quick look at it and got
> confused by the fact that it used Qt
There is no mature UI designer for Java, and since I hate to duplicate work, I used that one.

> Was not sure
> how that fit in and I am not sure how UIC makes two
> development possible. By two way I mean creating
> code, editing the code by hand, and then going back
> and creating more code.
...
> I could see how all this
> could be done if everything is done within the tool,
> but most of the UI tools fall apart when done outside
> the tool. How is this handle through UICompiler?

Like I said in my previous message; changing the gui-building code is not something you want, and the way UICompiler works, this is the first builder that actually makes it not useful to do so.
Adding actions and other gui tools and tweaks is done in the extending class you have to create yourself.
But, please follow tutorial 1 for all this, it even helps you through Designer :) Oh, and press F1 in Designer; the online documentation and tutorials are also quite good.

UIC (and about every other tool out there) believe in object orientation; each panel is an object and each panel can be placed upon another panel, since they are all objects.
I always say to my colleagues to create a separate UI file (and thus a separate class) for each tab on a tabbed-pane. This while I can happily put 20 tabs with full content in one designer file. But the resulting class becomes unmanageble.

> and Qt confused
> me.
I can imagine; but as with all tools you need to overcome some initial changes in your way of thinking; I promise it will be worth it!

> Guess I am impatient. BX on the other
> hand seemed more intuitive on the outside.
>
> Have you tried BX for Java? If so, what was your
> take on it besides that there is a cost associated
> with it.
I'm downloading it now; I'll tell you my findings later.

> As for wasting time. It will be my time since I am
> the developer. We need to create a proof concept in
> a couple weeks. I am ramping up on Swing and I need
> a tool that will create look and feel in a short
> period of time. Having this tool be able to be used
> to actually create code that can be used in a
> production environment would be nice, but from what I
> have heard from other people is that this goal is
> unreachable with current offerings. Do achieve this
> must one live in the tool?

The tool got written by me and some colleagues to make us meet our deadlines. We create full blown Swing clients for our clients and UICompiler has sped up the development quite a lot. I can tell you that sales was very pleased with this!

I must say that we have a way of coding that we thought was the normal way of writing code (MVC), but it seems many need to adjust to the fact that we generate a whole class they can't touch, only extend. We have had thank-you notes from people that were surprised that this new way of thinking actually got them more productive!

> They> Well I would appreciate opinions from people that
> used Netbeans, JBuilder etc. Is there UI bulders
> usable for rapid prototyping? From the tools I have
> looked at it did not seem apparent that they allowed
> full UI applications to be created using them. all seemed to be used to design a single window
> within the application.

That is true; but these limitations mean only that you have to do a

[code]
public class MyClass extends MyClassBase {
public MyClass () {
firstPanel.setLayout(new NaturalLayout(1,1));
firstPanel.add(new MyOtherClass());
}
}
[/code]

Since that is not a whole lot of code and you keep the 'linking' of the individual objects loose you gain a lot in doing this by hand.

Anyway; if you have a scetch of your application, I'll be happy to kick-start your development by giving you some developed code that you need!

Anonymous

Zander,

Thanks for the offer. I might take you up on it. I was wondering, do you know of anyone that has used UICompiler to produce a commercial product? Any feel as to how many people are playing around with it? I would be interested on getting your thoughs on BX. I don't have a lot of time to get a prototype together so I do need something with a short ramp up time. Products in the catagory of long learning curve but you are very productive afterwards would not be good for this project.

zander
Offline
Joined: 2003-06-13
Points: 0

> Zander,
>
> Thanks for the offer. I might take you up on it. I
> was wondering, do you know of anyone that has used
> UICompiler to produce a commercial product?

I know of 5 commercial products myself. But that might be waaay of the mark, see my next statement.

> Any feel
> as to how many people are playing around with it?

Very hard to say since this is open source; the only idea I have is the amount of traffice we see at download and at the mailing lists. Those indicate that quite a few people (at least in the hundreds) play around with it. But users never say they actually use it, right?

> I would be interested on getting your thoughs on BX.
Yes, I promised that.
Well, as you said that you found it immidiately obvious, then I must be stupid..
My first take at looking at the tutorials is that it (just like all other builders for java) bases its graphical builder on the layouters present, when placing a button and then thinking you need something next to it, SORRY! You should have added the correct layouter first! I failed at finding a remove for the component I just added and I kept placing components with the right mousebutton while I expected a popup menu.

The whole application looks very unfinished to me. Fonts are only partly visible in one widget while way to much space is reserved in others. Different dialogs have different background colors and it does not allow the user to make mistakes.
etc etc etc.

In short; I would not recomment BX to anyone, even if it were free.

> I
> don't have a lot of time to get a prototype together
> so I do need something with a short ramp up time.

You could have created 5 professional looking GUIs in UICompiler in the time we discussed this.

> Products in the catagory of long learning curve but
> you are very productive afterwards would not be good
> for this project.

Everything needs learning; and what can I say without sounding like a stuck-sales-pitch here...

robw
Offline
Joined: 2004-03-04
Points: 0

Very interesting reading these. At first our impression was that we wanted a GUI builder written in Java, but the UIBuilder stuff is interesting all the same and we'll look further.

Question though - we will be designing and using it for commercial apps. It isn't immediately clear to me from reading the Trolltech license, that the we can use the version of QtDesigner for this.

Anyone got a better analysis/understanding of the situation?

-- Rob

zander
Offline
Joined: 2003-06-13
Points: 0

For the same reason you can use Windows to write code you can use Qt Designer to do the same.
Its a tool to get the job done, you don't use any of its code in your end product; nor do you link to the code of Qt. Since thats C++ that last point should be obvious ;)

Be advised that IANAL.

vid
Offline
Joined: 2004-11-03
Points: 0

Hi!

I just happen to stumble upon this thread. I followed the link and learned about Qt designer and UIC tool. Its wonderful. Am a fresh developer and a bit new to java and I was wondering what's the best IDE I can use for creating standalone application as easy as we do in VS.net but in java.
Can u pls explain me with the downloading proc. as am new to all this. For example, in the getting started link, its said to download JDom and there are three parts downloads there.
by the way what Qt stands for?
Thanks

vdkuil
Offline
Joined: 2006-02-17
Points: 0

> Can u pls explain me with the downloading proc. as am
> new to all this.
I'll try ;)
> For example, in the getting started
> link, its said to download JDom and there are three
> parts downloads there.
on jdom you should download beta9 (www.jdom.org)
on the uic site (sf.net/uic) you should download which suits you best (probably uic.tgz, sine you probably do not want to compile it yourself).
> by the way what Qt stands for?
I have no idea.. but it should be pronounced like "cute"... Which probably says enough..

If you have anymore questions please mail them to the uic-mailing list (you can find it on the uic page).
That way you will get an answer a little sooner.

vid
Offline
Joined: 2004-11-03
Points: 0

hi!

thanks a lot for the info. I may get back with more questions sooner. thanks again.

Anonymous

> More info on UI builder issues are at the home page
> of UICompiler at http://uic.sf.net

Thanks for the link, that look interesting!!

tsinger
Offline
Joined: 2003-06-10
Points: 0

The best GUI designer I've seen so far, is [url=http://www.jformdesigner.com]JFormDesigner[/url]. Although it is still in beta state, it looks very nice and well-though.

--
Best regards,
Thomas Singer
_____________
smartcvs.com

hpl
Offline
Joined: 2003-06-29
Points: 0

With Java and its LayoutManagers the idea became reality to describe the GUI outside the source.
All GUI components and their relations are described in XML.
The coding only performs events from the Swing components.
Have a look at www.jeasy.de.

Harry

xptm
Offline
Joined: 2004-05-14
Points: 0

And the winner is...

Many of the ones mentioned are commercial, and i'll like to use something for free, as my paycheck is small enough...

JEasy is not free, FOAM too, UIC uses Qt that is not free, so that leaves us with DrJava, zBlueSoftware and what more?

Did somebody mention XUI or Luxor? I only know the XUI and looks good...

zander
Offline
Joined: 2003-06-13
Points: 0

> UIC uses Qt that is not free

Thats not true; the free version can still be found here:
http://uic.sourceforge.net/getdesigner.phtml

And, as always, the non-windows versions are Freely available from various places.

macewan
Offline
Joined: 2003-08-20
Points: 0

drjava gets my vote

http://www.drjava.org/

gdperks
Offline
Joined: 2003-12-20
Points: 0

The best UI design tool is called Foam. It takes away all the headache of layout management. There is no GridBagLayout. No rows & columns. No nested subpanels within subpanels. Foam is simple to use! The goal is for layout management to be the non-issue it should be.

You can see screenshots and movies at http://www.computersinmotion.com. Especially check out the intro and third movie.

(I may be biased :-)

zander
Offline
Joined: 2003-06-13
Points: 0

> The best UI design tool is called Foam.

Looking at the pages I fail to see anything that is not supplied by the (at least 3 mentioned in this thread) other GUI builders out there.

Take the http://uic.sf.net/ project; why is yours better, and why is it not an option to work together with the UICompiler project?

gdperks
Offline
Joined: 2003-12-20
Points: 0

UIC looks like it has some similarities... I haven't tried it. Great minds think alike :-)

Looking at the designer screenshots, one thing that stands out is all the controls - QDialog, QLabel, Grid, VBox. I've heard of none of these. Where are the Swing components? Are they custom beans? Does my dialog really look like it will in Swing? I don't think Qt Designer is Swing-based: Can I add custom beans to the palette? Why would I use a C++ application to design Java Swing interfaces?

Foam is a Swing-based designer for building Swing applications.

For commercial work (that is, you need to put dinner on your family's table), you need the commercial Qt Designer, which costs considerably more than Foam does. Qt Designer Pro license for one developer on one platform used to be $1550 (they are reviewing their pricing now). Foam will be around $250. A considerable saving!

There are bound to be other differences. You have choices!

Message was edited by: gdperks

zander
Offline
Joined: 2003-06-13
Points: 0

> Looking at the designer screenshots, one thing that
> stands out is all the controls - QDialog, QLabel,
> Grid, VBox. I've heard of none of these.

One of the design principles in UICompiler is that a graphics designer should be able to use the gui-designer. That means it has to be extremely usable. It also implies that the designer does not know how to program Swing, making your problem obsolete.
Besides; QLabel, JLabel, who's counting..

> Foam is a Swing-based designer for building Swing applications.
That gives you an advantage because?

> For commercial work (that is, you need to put dinner on your family's table), you need the commercial Qt Designer, which costs considerably more than Foam does.

Please don't make false statements that make others look worse. Since this is not true. Qt Designer is free and open source.

I asked you what is _better_ and all you give is "Its written in Java, so it must be better for Java applications".
I don't buy it.

What I asked you is why you chose to create a new application instead of looking at others and joining forces. So far I only got perceived problems in one example I presented.
If you want to make money from this product, then please take a long hard look at the industry. Notice for example that JGoodies has gone open source. I beg of you; don't compete with OpenSource applications. What price would you ask to compete with free?
I think you [b]will[/b] have a good change of making money doing consultancy work using an open source product.

Just because I'm giving stuff away for free, does not mean its worthless.

gdperks
Offline
Joined: 2003-12-20
Points: 0

I wasn't trying to make false statements. I went to TrollTech's site and where I found Qt Designer was as part of the whole Qt package. Their pricing page said that they are reviewing prices, so I pulled the old pricing information from Google's cache. If it's available separately, I didn't see it.

>> Foam is a Swing-based designer for building Swing applications.
>That gives you an advantage because?

I notice you ignored my question about custom beans. If you have your own custom Swing components (say, a graphing bean), will that plug into Qt? That, and a Swing app looking just like the Swing app you are trying to build, is an advantage.

Beyond that, since I have not used UICompiler I cannot give you a complete rundown of the pros and cons of each solution. I am sure for some people, UICompiler is the ideal solution. If you are used to Qt, I am sure it is wonderful. For many other people, Foam will be their tool of choice.

I don't want to get into an open source argument with you. Open source is great, commercial applications are great too. I will say that writing and designing Foam, I have given up many hours that I could have spent with my family, and they don't deserve me giving away that time for free.

zander
Offline
Joined: 2003-06-13
Points: 0

> I don't want to get into an open source argument with
> you. Open source is great, commercial applications
> are great too.

It was not my intention to get into a discussion about licencing. Thats completely besides the point.

> I will say that writing and designing
> Foam, I have given up many hours that I could have
> spent with my family, and they don't deserve me
> giving away that time for free.

I'm afraid that you actually have spend a lot of time for very little reward; I assume people will actually buy the product. But from experience that will not go very far in covering your expenses (time spent).

What I was pointing you to was that it is a fact that there are applications out there that are cheaper then yours, they always will be.

I really don't want to get into a fight over which app is the best; since there are many others like yours out there which will each have things they are better at then yours.

I guess its just like the internet-bubble days; technical people think they have a great idea nobody had before and want to make a buck. Only to go broke without ever making a real profit.

I guess history is bound to repeat itself.

ps. I made some suggestions in my previous post; please think them over.

nikster
Offline
Joined: 2006-02-17
Points: 0

have you guys ever looked at InterfaceBuilder?

IB comes with Mac OSX and i used it when trying to learn Cocoa and OS X programming.

It looked to me like the best, or, i should say, the only usable GUI designer i have ever seen.

two outstanding features that IB has that no other tool seems to have (wonder why...):

1) placement guides. i can place buttons and will receive little guide lines that pop up when i am near a good location for that widget. e.g. in a dialog, it will pop the guidelines for the OK (or whatever) button when i am exactly the Mac OS standard distance from the right corner.
or when i am in the center.
the net effect is that the GUI created _looks good_ with little or no effort from the programmer.

2) easy code integration. most java GUI designers i have seen use the approach that they will generate the layout for you, and then give you access to, say, the button object.
great. but what i want 99% of the time is to know when a button has been pressed. i don't really understand why i have to add action listeners ad nauseam just to get that behavior. i want it to call a method in a specified controller object, like buttonClicked(button)...

this seems like a small thing, but, again, the net effect is that model-view-controller is implemented properly and effortlessly.

on a general note, i also prefer open source GUI builders. mostly because the last thing i need is dependency on a 3rd party product. i am already dependent on MS to fix their OS, and on Sun to fix their Java, and i certainly don't want to depend on company X to fix or provide a bug-free version of their GUI builder/XML-GUI-interpreter.

that, more than anything else, is the benefit of open source.

side-note: zander, how does UI Compiler handle custom GUI classes? or - does it at all? it sounds cool, i just wish it was based on IB :) but then, IB isn't open source. oh, well...

zander
Offline
Joined: 2003-06-13
Points: 0

> have you guys ever looked at InterfaceBuilder?

Only screenshots; I don't know anyone who has a Mac (that is capable of running MacOsX)
> 1) placement guides. i can place buttons and will
> receive little guide lines that pop up when i am near
> a good location for that widget. e.g. in a dialog, it
> will pop the guidelines for the OK (or whatever)
> button when i am exactly the Mac OS standard distance
> from the right corner.
> or when i am in the center.
> the net effect is that the GUI created _looks good_
> with little or no effort from the programmer.

I choose not to do that since standard buttons should not be placed. I will simply us a 'Dialog' class and tell it which buttons I want. I really don't want to place them myself.
See: http://uic.sf.net/api/uic/widgets/StandardDialog.html

>
> 2) easy code integration. most java GUI designers i
> have seen use the approach that they will generate
> the layout for you, and then give you access to, say,
> the button object.
> great. but what i want 99% of the time is to know
> when a button has been pressed. i don't really
> understand why i have to add action listeners ad
> nauseam just to get that behavior. i want it to call
> a method in a specified controller object, like
> buttonClicked(button)...

In UICompiler we ask the user to extend the generated class and implement a method like: "button1ClickedSlot"
In effect the thing you ask is done automatically in UICompiler.

> this seems like a small thing, but, again, the net
> effect is that model-view-controller is implemented
> properly and effortlessly.

That is indeed the goal of the UIC project.

> on a general note, i also prefer open source GUI
> builders. mostly because the last thing i need is
> dependency on a 3rd party product.

If you say that you will probably have little problem with using Linux. The QtDesigner tool is open source and you can fix things. I personally have fixed various issues in the tool and those items are part of the standard distribution now.

> side-note: zander, how does UI Compiler handle custom
> GUI classes? or - does it at all? it sounds cool, i
> just wish it was based on IB :) but then, IB isn't
> open source. oh, well...

If you mean by custom classes something like your favorite datepicker, then its not really a problem. You just need to describe the generated code somewhere.
If you mean a very custom widget you plan to use internally only then it _can_ be done, but you might just want to place the widget on a panel you place in the designer GUI.

Cheers!

acechase
Offline
Joined: 2003-12-02
Points: 0

Hows about "VE" for eclipse? It's a new plugin (version .5rc2) for eclipse that allows for GUI building within eclipse. I've stayed away from GUI Builders up to this point, but after watching the demo video on the VE site I've decided to give it a shot. It follows the typical bean gui paradigm, using lots of getters and setters, however the implementation looks flexible and seems to allow a lot of back and force interaction between the tool and the code (ie, no comments saying "DO NOT EDIT THIS CODE").

Comments? Anyone else using VE?

cld71
Offline
Joined: 2004-03-04
Points: 0

I am currently using NetBeans, but sometimes I use Vim.

A good way to make NetBeans faster is to edit the $NETBEANS_HOME/bin/ide.cfg file, and increase the memory.

Hey, does anyone know how to turn on text wrapping in the editor for NetBeans?

jacek
Offline
Joined: 2003-08-22
Points: 0

I have to admit that since I discovered JGoodies Forms my need for GUI builders has diminished greatly (especially once I discovered all the factories for prebuilt components that it has).

JGoodies Forms has allowed me to ditch Netbeans (which has a pretty good GUI builder) and go back to coding by hand in Eclipse without having my productivity thrown out of the window.

Thanks Karsten! :-)

hpl
Offline
Joined: 2003-06-29
Points: 0

Thanks to the SWING designer.
Components and using LayoutManager can bring a nice GUI on screen without having a line of code in your source.
In JEasy we separated the GUI in a XML file. At runtime it is build and only the events are managed in code.
So the GUI-Builder is just a tool to create and arrange SWING-Components and than to write a XML-file.
Have a look at www.jeasy.de and see the JEasyRepository.

For us, JEasy is the best GUI Builder.
The experiences of our projects are very good and Jasy will become nicer with every new idea (example: Buttons with GradientPaint, Tables with colored rows and a sum line, ...).

Harry

rf360m
Offline
Joined: 2003-09-09
Points: 0

It seems to me that there are tons of gui builders and IDEs out there. Each one appeals to different people based upon its functions.

One of the best for model building (ie TableModels, TreeModels, etc) as well as having a pretty good UI building interface is zBlueStudio. It's available at http://www.zbluesoftware.com/zbluestudio

We use it all the time and have had really like it. I especially like the code it generates - well formatted, and completely commented, making it easy to modify afterwards.

The url for it is: http://www.zbluesoftware.com/zbluestudio

-Russ

Anonymous

<<< Posted this in the wrong thread so moved it over to this discussion >>>

In leu of Emacs of Vi.. Any opions in regards to actually GUI builders in regards to rapid prototyping and having the ability to carry the code forward.

Anybody got any opinions on GUI builders. We are looking for a GUI Builder for prototyping and it would be nice to be able to use it for actual production code if possible. I know most GUI builders produce ugly code so having one that produces maintanable code would be nice.

I am looking at the following ones.

BX for Java
Jvider
Net Beans

Any opinions on these or other tools?

srotman
Offline
Joined: 2003-06-16
Points: 0

> Anybody got any opinions on GUI builders. We are
> looking for a GUI Builder for prototyping and it
> would be nice to be able to use it for actual
> production code if possible. I know most GUI builders
> produce ugly code so having one that produces
> maintanable code would be nice.

Try the UICompiler (http://uic.sf.net, like zander mentioned earlier this thread)
It's very suitable for both prototyping and actual production, plus it generates very readable code.

hpl
Offline
Joined: 2003-06-29
Points: 0

Have a look at JEasy (www.jeasy.de).
An application called JeasyRepository helps you to define all Swing components you need and to build complex GUI out of it. You are able to preview the result directly.
The output is an XML-file that contains all you need for buildung the GUI.
The jeasy.jar is able to reed this xml-file as a part of your program.
So, the result of prototyping if the half way of building the application.

Regards
Harry

javalori
Offline
Joined: 2003-06-10
Points: 0

I'm rather fond of JBuilder. I've been using it since version 2.

Of course one could argue that I'm prejudiced, since I'm a member of TeamB for JBuilder (http://www.teamb.com).

The quality of those newsgroups is one of the things that has kept me interested in JBuilder.

zander
Offline
Joined: 2003-06-13
Points: 0

More info on UI builder issues are at the home page of UICompiler at http://uic.sf.net

augusto
Offline
Joined: 2003-06-11
Points: 0

vi

brinkley
Offline
Joined: 2003-06-06
Points: 0

[b]> vi[/b]

nah emacs. We must be old school.

You know the difference between a vi user and an emacs user? The vi user doesn't have any hair on his head! Scientifically proven at the now defunct Sun Rocky Mountian Technical Center.

Binky

davetron5000
Offline
Joined: 2003-06-10
Points: 0

Can't just use vi. Need your brain as well.

And GridBagLayout.

And a lot of patience.

BUT, you can edit the code once it's done, so that's a nice bonus.

Anonymous

I like NetBean's GUI builder.

I tried JBuilder but I had sometimes problems with the code generation and the designer :/

http://www.oop-reserch.com/cross_swing.html offers an XML based GUI tool, but this is really expensive.

Last I know is JEasy (http://www.jeasy.de/), but I haven't tried it so far.

I gues you will not find a tool like Delphi, just for the reason that the Delphi GUI handling is totaly different to Java, except you are using an AbsoluteLayout.