The uiDesigner is nice but confusing as heck :)

Here are some comments that I have for the uiDesigner to make it more useful/useable.

1) Create the stub class for the UI or add the components to the specified UI bean class as they are added

2) Create some stub code for showing the form as that is a non-obvious process. If I have to find a FAQ to figure out how to get the forms displayed, there needs to be a bridge between the creation of the interface and its display that would ideally be created by Idea.

0
7 comments
Avatar
Permanently deleted user

Very true. I tried it and did very simple UI (label, editbox and button). Then how to attach code on onClick events, lostFocus and so on...

Current state is not what I expected to find from UIDesigner so left it alone. I still keep JBuilder 4Pro running in my machine.

0
Avatar
Permanently deleted user

Whome wrote:

how to attach code on onClick events, lostFocus and so on...


bind component to some field and operate with this field.

With best regards,
Vladimir Kondratyev
_____________________
JetBrains

0

Vladimir I don't want to come off the wrong way but what you said makes absolutely no sense for someone who hasn't used/written the tool :)

0
Avatar
Permanently deleted user

In the begining I was having the same impression, but after playing with it I feel its pretty neat.

I guess first of all we should come out of the feeling that UI designer should support event code.
Just think that it is just a tool to layout your components quickly.
A typical UI class looks like this


Now the IDEA UI Designer helps us to fill layoutComponents() (Not with the same name, it has 2 options, either injecting bytecode directly or generating instance initializer)

You can totally ignore layoutComponents(). Events are pretty simple and pressing Ctrl + Shift + space after typing new will do all for you

Don't you think this is pretty neat than having some hidden stuff and losing the FREEDOM of coding.
******++__

0
Avatar
Permanently deleted user

Forgot to mention --- Bind the variable names to appropriate UI components in the designer.

mainPanel is a convention that after clicking "Layout in Grid" button UI Designer puts all your components into a new JPanel. just bind this to mainPanel :)

0
Avatar
Permanently deleted user

I guess first of all we should come out of the feeling that UI designer should support event code.


Completely agree. It's a matter of separation UI and logic. But to make
it right, it must be possible to create components using factories. See
example:

private final JButton deleteButton;

... constructor ...
deleteButton = ButtonFactory.createPushButton(deleteAction);
...

Tom

0
Avatar
Permanently deleted user

:)) May be IDEA5.0 will be having more options on generated code.

Personally I don't like the generated code, but somewhere we have to compromise, if not, we do have ultimate solution; guess what? Do it ourself ;)

0

Please sign in to leave a comment.