diff options
author | Jonathan Bauer | 2015-08-31 17:45:49 +0200 |
---|---|---|
committer | Jonathan Bauer | 2015-08-31 17:45:49 +0200 |
commit | a0a043b8df40d21c03f6d75ac0064e82fe537d7f (patch) | |
tree | 669748fae07dfd8f58f891f03aff36d813a962e2 /dozentenmodul | |
parent | [client] MainMenu -> Einstellungen (diff) | |
parent | [client] several layout fixes, added some comments. (diff) | |
download | tutor-module-a0a043b8df40d21c03f6d75ac0064e82fe537d7f.tar.gz tutor-module-a0a043b8df40d21c03f6d75ac0064e82fe537d7f.tar.xz tutor-module-a0a043b8df40d21c03f6d75ac0064e82fe537d7f.zip |
Merge branch 'v1.1' of git.openslx.org:openslx-ng/tutor-module into v1.1
Diffstat (limited to 'dozentenmodul')
21 files changed, 178 insertions, 120 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/DisclaimerWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/DisclaimerWindow.java index 70598f43..b3aaa973 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/DisclaimerWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/DisclaimerWindow.java @@ -6,8 +6,13 @@ import java.awt.event.ActionListener; import org.apache.log4j.Logger; import org.openslx.dozmod.Config; +import org.openslx.dozmod.gui.MainWindow; import org.openslx.dozmod.gui.window.layout.DisclaimerWindowLayout; +/** + * Window for showing the disclaimer. + */ +@SuppressWarnings("serial") public class DisclaimerWindow extends DisclaimerWindowLayout { /** diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageCustomPermissionWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageCustomPermissionWindow.java index 22833d28..2daca6f4 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageCustomPermissionWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageCustomPermissionWindow.java @@ -19,11 +19,9 @@ public class ImageCustomPermissionWindow extends ImageCustomPermissionWindowLayo private static final Logger LOGGER = Logger.getLogger(ImageCustomPermissionWindow.class); private boolean okUsed = false; - private Window parentWindow; protected ImageCustomPermissionWindow(final Window modalParent, final Map<String, ImagePermissions> permissionMap, final ImagePermissions defaultPermissions) { super(modalParent); - this.parentWindow = modalParent; imagePermissionManager.initPanel(permissionMap, defaultPermissions); btnOk.addActionListener(new ActionListener() { diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java index 34984bdf..e6ee32ae 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java @@ -48,6 +48,9 @@ import org.openslx.dozmod.thrift.cache.UserCache; import org.openslx.dozmod.util.FormatHelper; import org.openslx.thrifthelper.ThriftManager; +/** + * Window for displaying and editing the details of an image. + */ @SuppressWarnings("serial") public class ImageDetailsWindow extends ImageDetailsWindowLayout implements UiFeedback { @@ -95,7 +98,7 @@ public class ImageDetailsWindow extends ImageDetailsWindowLayout implements UiFe * Constructor * * @param modalParent parent of this popup window - * @param callback callback to be called when the image details changed + * @param callback callback to be called when the image details have changed */ public ImageDetailsWindow(Frame modalParent, ImageUpdatedCallback callback) { super(modalParent); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageListWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageListWindow.java index e4c97eac..08dc9279 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageListWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageListWindow.java @@ -30,8 +30,10 @@ import org.openslx.dozmod.thrift.ThriftActions; import org.openslx.dozmod.thrift.ThriftActions.DeleteCallback; import org.openslx.dozmod.thrift.ThriftActions.DownloadCallback; + /** - * + * Window with the list of available images. + * Has filters for the images and buttons to create, edit and delete buttons. */ @SuppressWarnings("serial") public class ImageListWindow extends ImageListWindowLayout implements DownloadCallback, DeleteCallback { @@ -254,10 +256,10 @@ public class ImageListWindow extends ImageListWindowLayout implements DownloadCa return; ImageDetailsWindow.open((JFrame) SwingUtilities.getWindowAncestor(me), image.getImageBaseId(), new ImageUpdatedCallback() { - public void updated() { - imageListViewer.refreshList(true, 100); - } - }); + public void updated() { + imageListViewer.refreshList(true, 100); + } + }); } /** diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java index 6919c3cd..9a9dfc20 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java @@ -50,6 +50,9 @@ import org.openslx.thrifthelper.ThriftManager; import org.openslx.util.QuickTimer; import org.openslx.util.QuickTimer.Task; +/** + * Window to display and edit the details of a lecture + */ @SuppressWarnings("serial") public class LectureDetailsWindow extends LectureDetailsWindowLayout implements UiFeedback { diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java index 31395897..c2edc99f 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java @@ -40,6 +40,10 @@ import org.openslx.dozmod.thrift.cache.LectureCache; import org.openslx.util.QuickTimer; import org.openslx.util.QuickTimer.Task; +/** + * Window for displaying a table with the available lectures. + * Lectures can be created and deleted here. + */ @SuppressWarnings("serial") public class LectureListWindow extends LectureListWindowLayout { @@ -226,11 +230,11 @@ public class LectureListWindow extends LectureListWindowLayout { return; ThriftActions.deleteLecture(JOptionPane.getFrameForComponent(me), lecture.getLectureId(), new DeleteLectureCallback() { - @Override - public void deleted(boolean success) { - refreshList(success); - } - }); + @Override + public void deleted(boolean success) { + refreshList(success); + } + }); } /** * Applies the filter entered in the search field to the table diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/MainMenuWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/MainMenuWindow.java index 2cd29a8d..ba6db888 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/MainMenuWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/MainMenuWindow.java @@ -38,5 +38,4 @@ public class MainMenuWindow extends MainMenuWindowLayout { public void requestShow() { vmButton.setEnabled(Session.canListImages()); } - } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/VirtualizerNoticeWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/VirtualizerNoticeWindow.java index caf0ccba..d410ec93 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/VirtualizerNoticeWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/VirtualizerNoticeWindow.java @@ -13,6 +13,7 @@ import org.openslx.dozmod.Config; import org.openslx.dozmod.gui.MainWindow; import org.openslx.dozmod.gui.window.layout.VirtualizerNoticeWindowLayout; +@SuppressWarnings("serial") public class VirtualizerNoticeWindow extends VirtualizerNoticeWindowLayout { private final static Logger LOGGER = Logger.getLogger(VirtualizerNoticeWindow.class); @@ -59,9 +60,6 @@ public class VirtualizerNoticeWindow extends VirtualizerNoticeWindowLayout { } public static void open(Frame modalParent) { - VirtualizerNoticeWindow win = new VirtualizerNoticeWindow(modalParent); - MainWindow.centerShell(win); - win.setVisible(true); + new VirtualizerNoticeWindow(modalParent).setVisible(true); } - } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/DisclaimerWindowLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/DisclaimerWindowLayout.java index 94928b4a..8f905b55 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/DisclaimerWindowLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/DisclaimerWindowLayout.java @@ -2,7 +2,6 @@ package org.openslx.dozmod.gui.window.layout; import java.awt.BorderLayout; import java.awt.Frame; - import javax.swing.BorderFactory; import javax.swing.Box; import javax.swing.JButton; @@ -11,9 +10,11 @@ import javax.swing.JDialog; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextArea; - import org.openslx.dozmod.gui.control.QLabel; +import org.openslx.dozmod.gui.helper.GridManager; + +@SuppressWarnings("serial") public abstract class DisclaimerWindowLayout extends JDialog { protected String notice = "Bitte lesen und bestätigen Sie folgende rechtliche Hinweise"; @@ -43,12 +44,15 @@ public abstract class DisclaimerWindowLayout extends JDialog { super(modalParent, title, modalParent != null ? ModalityType.APPLICATION_MODAL : ModalityType.MODELESS); this.setLayout(new BorderLayout()); + // Panel used for creating border. We'll add everything into this. + JPanel borderPanel = new JPanel(); + borderPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5)); + add(borderPanel); + // information before the disclaimer - // the group QLabel noticePanel = new QLabel(); noticePanel.setBorder(BorderFactory.createTitledBorder(noticeLabel)); noticePanel.setText(notice); - add(noticePanel, BorderLayout.NORTH); // the disclaimer text box with scrolling functionality JTextArea disclaimerText = new JTextArea(disclaimer, 30, 20); @@ -56,7 +60,6 @@ public abstract class DisclaimerWindowLayout extends JDialog { disclaimerText.setWrapStyleWord(true); JScrollPane disclaimerPanel = new JScrollPane(disclaimerText, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); - add(disclaimerPanel, BorderLayout.CENTER); // checkbox for acknowledging the disclaimer JPanel buttonPanel = new JPanel(); @@ -68,7 +71,19 @@ public abstract class DisclaimerWindowLayout extends JDialog { continueButton = new JButton(continueButtonLabel); continueButton.setEnabled(false); buttonPanel.add(continueButton); - add(buttonPanel, BorderLayout.SOUTH); + + // put everything together + GridManager grid = new GridManager(borderPanel, 1); + grid.add(noticePanel).fill(true, false).expand(true,false); + grid.nextRow(); + + grid.add(disclaimerPanel).fill(true, true).expand(true, true); + grid.nextRow(); + + grid.add(buttonPanel).fill(true, false).expand(true,false); + grid.finish(false); + pack(); + setLocationRelativeTo(modalParent); } } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/ImageCustomPermissionWindowLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/ImageCustomPermissionWindowLayout.java index 08ab5c32..3ab9bfdb 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/ImageCustomPermissionWindowLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/ImageCustomPermissionWindowLayout.java @@ -47,8 +47,6 @@ public class ImageCustomPermissionWindowLayout extends JDialog { contentPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5)); add(contentPanel); - GridManager grid = new GridManager(contentPanel, 1); - imagePermissionManager = new ImageCustomPermissionManager(); // Panel for the buttons at the bottom @@ -73,6 +71,7 @@ public class ImageCustomPermissionWindowLayout extends JDialog { defaultPermissionPane.add(chkCustomPermAdmin); // Put everything into the grid + GridManager grid = new GridManager(contentPanel, 1); grid.add(imagePermissionManager).fill(true, true).expand(true, true); grid.nextRow(); grid.add(defaultPermissionPane).fill(true, false).expand(true, false); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/ImageDetailsWindowLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/ImageDetailsWindowLayout.java index 1ac18ba9..90bd1829 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/ImageDetailsWindowLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/ImageDetailsWindowLayout.java @@ -72,7 +72,7 @@ public abstract class ImageDetailsWindowLayout extends JDialog { // them to split pane // use panel to put every info related widget in it - // then we will set the panel in BorderLayout.CENTER + // then we we'll set the panel with BorderLayout.CENTER JPanel infoPanel = new JPanel(); GridManager grid = new GridManager(infoPanel, 3); infoPanel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10)); @@ -177,8 +177,6 @@ public abstract class ImageDetailsWindowLayout extends JDialog { grid.nextRow(); - - btnPermissions = new JButton("Berechtigungen"); grid.add(btnPermissions); grid.skip(2); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/ImageListWindowLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/ImageListWindowLayout.java index f97cec5f..378a11a7 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/ImageListWindowLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/ImageListWindowLayout.java @@ -14,8 +14,10 @@ import org.apache.log4j.Logger; import org.openslx.dozmod.gui.control.ImageListViewer; import org.openslx.dozmod.gui.control.QLabel; import org.openslx.dozmod.gui.helper.CompositePage; +import org.openslx.dozmod.gui.helper.GridManager; +@SuppressWarnings("serial") public abstract class ImageListWindowLayout extends CompositePage { private final static Logger LOGGER = Logger.getLogger(ImageListWindowLayout.class); @@ -51,10 +53,8 @@ public abstract class ImageListWindowLayout extends CompositePage { QLabel infoText = new QLabel(infoTextString); infoPanel.add(infoTitle, BorderLayout.NORTH); infoPanel.add(infoText, BorderLayout.CENTER); - add(infoPanel, BorderLayout.NORTH); - + imageListViewer = new ImageListViewer(); - add(imageListViewer, BorderLayout.CENTER); // -------------------------------------- // the buttons at the bottom @@ -76,7 +76,16 @@ public abstract class ImageListWindowLayout extends CompositePage { buttonPanel.add(deleteButton); buttonPanel.add(Box.createHorizontalGlue()); buttonPanel.add(switchViewButton); - add(buttonPanel, BorderLayout.PAGE_END); + + // put everything together + GridManager grid = new GridManager(this, 1); + grid.add(infoPanel).fill(true, false).expand(true, false); + grid.nextRow(); + grid.add(imageListViewer).fill(true, true).expand(true, true); + grid.nextRow(); + grid.add(buttonPanel).fill(true, false).expand(true, false); + grid.nextRow(); + grid.finish(false); } } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/LectureListWindowLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/LectureListWindowLayout.java index b7104ece..0d9be1c4 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/LectureListWindowLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/LectureListWindowLayout.java @@ -1,5 +1,7 @@ package org.openslx.dozmod.gui.window.layout; +import java.awt.BorderLayout; +import java.awt.Dimension; import java.awt.Font; import java.awt.GridBagLayout; @@ -16,8 +18,9 @@ import javax.swing.border.TitledBorder; import org.openslx.dozmod.gui.control.QLabel; import org.openslx.dozmod.gui.control.table.LectureTable; import org.openslx.dozmod.gui.helper.CompositePage; -import org.openslx.dozmod.gui.helper.GridPos; +import org.openslx.dozmod.gui.helper.GridManager; +@SuppressWarnings("serial") public abstract class LectureListWindowLayout extends CompositePage { private static final String infoTitleString = "Übersicht Veranstaltungen"; @@ -56,22 +59,22 @@ public abstract class LectureListWindowLayout extends CompositePage { super(new GridBagLayout()); setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5)); - // -- info group with title and text -- - JPanel infoComposite = new JPanel(); - infoComposite.setLayout(new BoxLayout(infoComposite, BoxLayout.PAGE_AXIS)); - // title of the info group in bold + GridManager grid = new GridManager(this, 1); + + // --------- info group with title and text ------------------------- + JPanel infoPanel = new JPanel(new BorderLayout()); QLabel infoTitle = new QLabel(infoTitleString); infoTitle.setFont(infoTitle.getFont().deriveFont(Font.BOLD)); - // the infotext QLabel infoText = new QLabel(infoTextString); - infoComposite.add(infoTitle); - infoComposite.add(infoText); - // -- end group of title -- - - // -- group for the table -- + infoPanel.add(infoTitle, BorderLayout.NORTH); + infoPanel.add(infoText, BorderLayout.CENTER); + // ---------------- end group of title ------------------------------ + + + // ------------ panel for the table and filter ----------------------- JPanel tablePanel = new JPanel(); - tablePanel.setLayout(new GridBagLayout()); - tablePanel.setPreferredSize(tablePanel.getMinimumSize()); + GridManager tableGrid = new GridManager(tablePanel, 1); + // filterPanel with filter text field and filter combo JPanel filterPanel = new JPanel(); filterPanel.setBorder(new TitledBorder(filterPanelLabel)); @@ -83,40 +86,43 @@ public abstract class LectureListWindowLayout extends CompositePage { } filterPanel.add(searchTextField); filterPanel.add(filterCbo); - tablePanel.add(filterPanel, GridPos.get(0, 0, true, false)); - // table + + // the actual table lectureTable = new LectureTable(); - tablePanel.add(new JScrollPane(lectureTable), GridPos.get(0, 1, true, true)); - - // create, modify and delete buttons - JPanel buttonComposite = new JPanel(); - buttonComposite.setLayout(new BoxLayout(buttonComposite, BoxLayout.LINE_AXIS)); - buttonComposite.setBorder(BorderFactory.createEmptyBorder(5, 0, 0, 0)); - tablePanel.add(buttonComposite, GridPos.get(0, 2, true, false)); + + tableGrid.add(filterPanel).fill(true, false).expand(true, false); + tableGrid.nextRow(); + tableGrid.add(new JScrollPane(lectureTable)).fill(true, true).expand(true, true); + tableGrid.nextRow(); + tableGrid.finish(false); + // ---------- end for table group ----------------------------- + + // ---------- button panel -------------------------------------- + JPanel buttonPanel = new JPanel(); + buttonPanel.setLayout(new BoxLayout(buttonPanel, BoxLayout.LINE_AXIS)); + buttonPanel.setBorder(BorderFactory.createEmptyBorder(5, 0, 0, 0)); newButton = new JButton(newButtonLabel); - buttonComposite.add(newButton); + buttonPanel.add(newButton); + buttonPanel.add(Box.createRigidArea(new Dimension(5, 0))); editButton = new JButton(editButtonLabel); - buttonComposite.add(editButton); + buttonPanel.add(editButton); + buttonPanel.add(Box.createRigidArea(new Dimension(5, 0))); deleteButton = new JButton(deleteButtonLabel); - buttonComposite.add(deleteButton); - buttonComposite.add(Box.createHorizontalGlue()); + buttonPanel.add(deleteButton); + buttonPanel.add(Box.createHorizontalGlue()); switchViewButton = new JButton(switchViewButtonLabel); - buttonComposite.add(switchViewButton); - // -- end group for table -- - - add(infoComposite, GridPos.get(0, 0, 2, 1, true, false)); - add(tablePanel, GridPos.get(0, 1, true, true)); - } - - public JTextField createCaptionAndTextfield(String captionString, JPanel group, int row) { - QLabel caption = new QLabel(captionString); - JTextField textField = new JTextField(); - textField.setEditable(false); - caption.setText(captionString); - group.add(caption, GridPos.get(0, row)); - group.add(textField, GridPos.get(1, row, true, false)); - return textField; + buttonPanel.add(switchViewButton); + // ----------------- end group for table ------------------------- + + grid.add(infoPanel).fill(true, false).expand(true, false); + grid.nextRow(); + grid.add(tablePanel).fill(true, true).expand(true, true); + grid.nextRow(); + grid.add(buttonPanel).fill(true, false).expand(true, false); + grid.nextRow(); + + grid.finish(false); } } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/UserListWindowLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/UserListWindowLayout.java index e9b6b529..20864992 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/UserListWindowLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/UserListWindowLayout.java @@ -1,9 +1,6 @@ package org.openslx.dozmod.gui.window.layout; -import java.awt.BorderLayout; -import java.awt.Container; import java.awt.Dimension; -import java.awt.GridBagLayout; import java.awt.Window; import javax.swing.BorderFactory; @@ -18,15 +15,7 @@ import javax.swing.JTextField; import org.apache.log4j.Logger; import org.openslx.dozmod.gui.control.QLabel; import org.openslx.dozmod.gui.control.table.UserTable; -import org.openslx.dozmod.gui.helper.GridPos; - -/** - * Credits for the first steps: - * https://docs.oracle.com/javase/tutorial/uiswing/examples/components/ - * ListDialogRunnerProject/src/components/ListDialog.java - * - * Adapted to use our UserInfo class - */ +import org.openslx.dozmod.gui.helper.GridManager; @SuppressWarnings("serial") public class UserListWindowLayout extends JDialog { @@ -45,37 +34,46 @@ public class UserListWindowLayout extends JDialog { super(modalParent, title, modalParent != null ? ModalityType.APPLICATION_MODAL : ModalityType.MODELESS); - cancelButton = new JButton("Schließen"); - setButton = new JButton(actionCaption); + GridManager grid = new GridManager(this, 1); - userTable = new UserTable(); + // --------------- filter field -------------------------------------- + JPanel filterPanel = new JPanel(); + filterPanel.setLayout(new BoxLayout(filterPanel, BoxLayout.LINE_AXIS)); + filterPanel.setBorder(BorderFactory.createEmptyBorder(10, 10, 0, 10)); + filterPanel.add(new QLabel("Suchen: ")); + searchUserField = new JTextField(); + filterPanel.add(searchUserField); + // --------------- end filter field -------------------------------- + // --------------- user table -------------------------------------- JPanel listPane = new JPanel(); listPane.setLayout(new BoxLayout(listPane, BoxLayout.PAGE_AXIS)); listPane.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10)); + userTable = new UserTable(); listPane.add(new JScrollPane(userTable)); + // --------------- end user table ------------------------------------ - // spaced buttons + // --------------- button panel -------------------------------------- JPanel buttonPane = new JPanel(); buttonPane.setLayout(new BoxLayout(buttonPane, BoxLayout.LINE_AXIS)); buttonPane.setBorder(BorderFactory.createEmptyBorder(0, 10, 10, 10)); buttonPane.add(Box.createHorizontalGlue()); + cancelButton = new JButton("Schließen"); buttonPane.add(cancelButton); buttonPane.add(Box.createRigidArea(new Dimension(10, 0))); + setButton = new JButton(actionCaption); buttonPane.add(setButton); - - // filter stuff - JPanel filterPanel = new JPanel(new GridBagLayout()); - searchUserField = new JTextField(); - filterPanel.setBorder(BorderFactory.createEmptyBorder(10, 10, 0, 10)); - filterPanel.add(new QLabel("Suchen: "), GridPos.get(0, 0, false, false)); - filterPanel.add(searchUserField, GridPos.get(1, 0, true, true)); + // --------------- end button panel ---------------------------------- // pack it all - Container contentPane = getContentPane(); - contentPane.add(filterPanel, BorderLayout.NORTH); - contentPane.add(listPane, BorderLayout.CENTER); - contentPane.add(buttonPane, BorderLayout.PAGE_END); + grid.add(filterPanel).fill(true, false).expand(true, false); + grid.nextRow(); + grid.add(listPane).fill(true, true).expand(true, true); + grid.nextRow(); + grid.add(buttonPane).fill(true, false).expand(true, false); + grid.nextRow(); + grid.finish(false); + setPreferredSize(new Dimension(300, 350)); pack(); } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/VirtualizerNoticeWindowLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/VirtualizerNoticeWindowLayout.java index 7e4abcd0..6e1574e1 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/VirtualizerNoticeWindowLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/VirtualizerNoticeWindowLayout.java @@ -1,29 +1,28 @@ package org.openslx.dozmod.gui.window.layout; -import java.awt.BorderLayout; -import java.awt.Container; import java.awt.Dimension; -import java.awt.Font; import java.awt.Frame; +import javax.swing.BorderFactory; import javax.swing.Box; import javax.swing.BoxLayout; import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JDialog; +import javax.swing.JLabel; import javax.swing.JPanel; -import org.openslx.dozmod.gui.control.QLabel; +import org.openslx.dozmod.gui.helper.GridManager; +@SuppressWarnings("serial") public abstract class VirtualizerNoticeWindowLayout extends JDialog { private static final String title = "Hinweis VMWare Player"; private static final String infoText = "<html><body style='width:100%'>" + "Für die Arbeit mit der bwLehrpool Suite wird zwingend der <b>VMWare Player</b> benötigt. " - + "Diesen können Sie sich unter folgendem Link kostenfrei downloaden. " + + "Diesen können Sie sich unter folgendem Link kostenfrei herunterladen. " + "Wenn Sie bereits den VMWare Player oder die VMWare Workstation installiert haben, können Sie diesen Hinweis ignorieren." + "</body></html>"; - private final static String infoTitle = "bwLehrpool Suite"; protected JButton windowsDLButton; protected JButton linuxDLButton; @@ -33,17 +32,18 @@ public abstract class VirtualizerNoticeWindowLayout extends JDialog { public VirtualizerNoticeWindowLayout(Frame modalParent) { super(modalParent, title, modalParent != null ? ModalityType.APPLICATION_MODAL : ModalityType.MODELESS); + JPanel contentPanel = new JPanel(); + contentPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5)); + add(contentPanel); + + GridManager grid = new GridManager(contentPanel, 1); + JPanel infoPane = new JPanel(); infoPane.setLayout(new BoxLayout(infoPane, BoxLayout.PAGE_AXIS)); - // bold title at start. - QLabel titleLabel = new QLabel(infoTitle); - final Font font = titleLabel.getFont().deriveFont(Font.BOLD); - titleLabel.setFont(font); - infoPane.add(titleLabel); - // infotext - QLabel infoLabel = new QLabel(infoText); + JLabel infoLabel = new JLabel(infoText); + infoLabel.setBorder(BorderFactory.createTitledBorder("Hinweis")); infoPane.add(infoLabel); // Spacing @@ -67,11 +67,17 @@ public abstract class VirtualizerNoticeWindowLayout extends JDialog { continueButton = new JButton("Schließen"); bottomPane.add(continueButton); - final Container content = getContentPane(); - content.add(infoPane, BorderLayout.CENTER); - content.add(bottomPane, BorderLayout.PAGE_END); + grid.add(infoPane).fill(true, true).expand(true, true); + grid.nextRow(); + grid.skip().fill(true, true).expand(true, true); + grid.nextRow(); + grid.add(bottomPane).fill(true, false).expand(true, false); + grid.nextRow(); + grid.finish(false); + - setSize(new Dimension(600, 700)); + setSize(new Dimension(600, 250)); + setLocationRelativeTo(modalParent); validate(); } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/ImageUploadPageLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/ImageUploadPageLayout.java index 96daa3fd..00f4590c 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/ImageUploadPageLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/ImageUploadPageLayout.java @@ -54,6 +54,7 @@ public abstract class ImageUploadPageLayout extends WizardPage { grid.add(softwareLicenseBox, 2, 1).fill(false, false).expand(true, false); grid.nextRow(); + // -- info text field -- JTextArea infoText = new JTextArea(); infoText.setBorder(BorderFactory.createTitledBorder("Info")); infoText.setLineWrap(true); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java index 169bade3..ba3513eb 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java @@ -20,6 +20,9 @@ import org.openslx.dozmod.thrift.cache.MetaDataCache; import org.openslx.util.QuickTimer; import org.openslx.util.QuickTimer.Task; +/** + * Page for setting the details of an image. + */ @SuppressWarnings("serial") public class ImageMetaDataPage extends ImageMetaDataPageLayout { diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageUploadPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageUploadPage.java index 47c5b8d1..50a8ffad 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageUploadPage.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageUploadPage.java @@ -29,6 +29,9 @@ import org.openslx.dozmod.thrift.cache.MetaDataCache; import org.openslx.util.vm.VmMetaData.HardDisk; import org.openslx.util.vm.VmwareMetaData; +/** + * Page for uploading a new image. + */ @SuppressWarnings("serial") public class ImageUploadPage extends ImageUploadPageLayout { diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCreationPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCreationPage.java index 617279a0..f3744db3 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCreationPage.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCreationPage.java @@ -17,6 +17,10 @@ import org.openslx.dozmod.state.LectureWizardState; import org.openslx.dozmod.thrift.Session; import org.openslx.dozmod.util.FormatHelper; +/** + * First page for creating a new lecture. + * Used to set name, description and start- and endtime + */ @SuppressWarnings("serial") public class LectureCreationPage extends LectureCreationPageLayout { diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCustomPermissionPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCustomPermissionPage.java index 328981ef..d99b0952 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCustomPermissionPage.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCustomPermissionPage.java @@ -8,6 +8,9 @@ import org.openslx.dozmod.gui.wizard.Wizard; import org.openslx.dozmod.gui.wizard.layout.LectureCustomPermissionPageLayout; import org.openslx.dozmod.state.LectureWizardState; +/** + * Wizard page for setting custom permissions for the lecture to be created + */ @SuppressWarnings("serial") public class LectureCustomPermissionPage extends LectureCustomPermissionPageLayout { diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureImageListPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureImageListPage.java index af131ec1..a532d9d5 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureImageListPage.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureImageListPage.java @@ -12,13 +12,14 @@ import org.openslx.dozmod.gui.wizard.Wizard; import org.openslx.dozmod.gui.wizard.layout.LectureImageListPageLayout; import org.openslx.dozmod.state.LectureWizardState; +/** + * Page for choosing the linked image for the lecture to be created + */ @SuppressWarnings("serial") public class LectureImageListPage extends LectureImageListPageLayout { private final static Logger LOGGER = Logger.getLogger(LectureImageListPage.class); - private boolean initDone = false; - private LectureWizardState state = null; private Dimension startDim = null; private Wizard wizard = null; |