summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard
diff options
context:
space:
mode:
authorSimon Rettberg2015-08-12 19:24:49 +0200
committerSimon Rettberg2015-08-12 19:24:49 +0200
commit8074f567ae86b026fc27d657cebccef6cbcedc17 (patch)
tree03a3b63322a5856d4f48f466e0cc4b61c21d2fc2 /dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard
parent[server] Update lecture/latestversionid links when image versions are created... (diff)
downloadtutor-module-8074f567ae86b026fc27d657cebccef6cbcedc17.tar.gz
tutor-module-8074f567ae86b026fc27d657cebccef6cbcedc17.tar.xz
tutor-module-8074f567ae86b026fc27d657cebccef6cbcedc17.zip
[client] Fix positioning of Wizard
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/Wizard.java28
1 files changed, 15 insertions, 13 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/Wizard.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/Wizard.java
index d2c5019c..75aefae2 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/Wizard.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/Wizard.java
@@ -35,6 +35,7 @@ public abstract class Wizard extends JDialog {
private final List<WizardPage> pages = new ArrayList<>();
private final JPanel contentPanel;
private int currentPage = -1;
+ private boolean needsLayout = true;
private final JButton btnPrev;
private final JButton btnNext;
@@ -89,22 +90,9 @@ public abstract class Wizard extends JDialog {
//
setPreferredSize(new Dimension(550, 420));
setResizable(false);
- // TODO this seems broken: it only center the (still) empty frame
- // later when the page is shown, it won't be centered correctly.
- // Centered is the top left corner of this frame, not the actual
- // center of the pages!
- MainWindow.centerShell(this);
// Window events
addWindowListener(new WindowAdapter() {
@Override
- public void windowOpened(WindowEvent e) {
- e.getWindow().pack();
- if (!pages.isEmpty()) {
- showPage(0);
- }
- }
-
- @Override
public void windowClosing(WindowEvent we) {
doCancel();
}
@@ -136,6 +124,20 @@ public abstract class Wizard extends JDialog {
});
}
+ @SuppressWarnings("deprecation")
+ @Override
+ public void show() {
+ if (needsLayout) {
+ needsLayout = false;
+ pack();
+ if (!pages.isEmpty()) {
+ showPage(0);
+ }
+ MainWindow.centerShell(this);
+ }
+ super.show();
+ }
+
private void showPage(int index) {
if (currentPage != -1) {
WizardPage old = pages.get(currentPage);