Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » Albireo » Size-Calculation of Embedded Swing Controls in Dialogs
Size-Calculation of Embedded Swing Controls in Dialogs [message #574909] Mon, 06 April 2009 07:29
Dominik Kaspar is currently offline Dominik Kaspar
Messages: 12
Registered: July 2009
Junior Member
Hi,

If I'm using a JFace dialog like the TitleAreaDialog and having a
SwingControl inside the dialog, the size of the main panel is not
correctly calculated after the shell of the dialog is created.

I tried all available Composites for the layoutDeferredAncestor, but no
one was working correctly. My workaround was to call pack() on the shell
in the afterComponentCreatedSWTThread() method but this works only
randomly.

Any ideas to solve this problem?

Thanks,
Dominik

TitleAreaDialog d = new TitleAreaDialog(topLevelShell) {
protected Control createDialogArea(Composite parent) {
final Composite comp = (Composite) super.createDialogArea(parent);
SwingControl control = new SwingControl(comp, SWT.NONE) {
protected JComponent createSwingComponent() {
JPanel p = new JPanel();
p.setLayout(new java.awt.GridLayout(10, 1));
for (int i = 0; i < 10; i++) {
p.add(new JTextField(String.valueOf(i)));
}
JScrollPane scroll = new JScrollPane(p);
scroll.setBorder(new EmptyBorder(0, 0, 0, 0));
return scroll;
}
public Composite getLayoutAncestor() {
return getShell();
}
};
control.setLayoutData(new GridData(GridData.FILL_BOTH));
return parent;
}
};
d.open();
Previous Topic:How to update a SwingControl
Next Topic:Re: Drag and drop and cut, copy, paste between awt / swing and swt.
Goto Forum:
  


Current Time: Sun Apr 20 15:58:02 EDT 2014

Powered by FUDForum. Page generated in 0.12678 seconds