diff options
| author | Stephan Schwaer | 2015-08-10 15:36:55 +0200 |
|---|---|---|
| committer | Stephan Schwaer | 2015-08-10 15:36:55 +0200 |
| commit | 6d0319d80f6f30451cea80631997d6118eefbba3 (patch) | |
| tree | 7671c3323905e49cc88604170c7104e7a8bc0ad5 | |
| parent | [client] remove "New" button from image list context menu as it doesn't make ... (diff) | |
| download | tutor-module-6d0319d80f6f30451cea80631997d6118eefbba3.tar.gz tutor-module-6d0319d80f6f30451cea80631997d6118eefbba3.tar.xz tutor-module-6d0319d80f6f30451cea80631997d6118eefbba3.zip | |
[cient] improved lecture creation page and sorted versions list for combo in lecture details.
2 files changed, 45 insertions, 13 deletions
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 9b304df1..5d06f5b6 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 @@ -7,6 +7,8 @@ import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.util.Calendar; +import java.util.Collections; +import java.util.Comparator; import java.util.Date; import java.util.List; @@ -18,6 +20,7 @@ import org.apache.log4j.Logger; import org.openslx.bwlp.thrift.iface.ImageDetailsRead; import org.openslx.bwlp.thrift.iface.ImageVersionDetails; import org.openslx.bwlp.thrift.iface.LectureRead; +import org.openslx.bwlp.thrift.iface.Organization; import org.openslx.dozmod.gui.Gui; import org.openslx.dozmod.gui.MainWindow; import org.openslx.dozmod.gui.helper.MessageType; @@ -142,6 +145,14 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout { // version combo List<ImageVersionDetails> versions = image.getVersions(); + + // sort versions with createtime + Collections.sort(versions, new Comparator<ImageVersionDetails>() { + public int compare(ImageVersionDetails o1, ImageVersionDetails o2) { + return - Long.compare(o1.getCreateTime(), o2.getCreateTime()); + } + }); + cboVersions.setModel(new DefaultComboBoxModel<ImageVersionDetails>(versions.toArray(new ImageVersionDetails[versions.size()]))); cboVersions.setRenderer(new DefaultListCellRenderer() { @Override @@ -169,7 +180,7 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout { // TODO grey out non editable components, lecture image has no permissions yet - makeEditable(LecturePerms.canEdit(lecture)); + //makeEditable(LecturePerms.canEdit(lecture)); pack(); MainWindow.centerShell(this); setVisible(true); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/LectureCreationPageLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/LectureCreationPageLayout.java index 2531d392..13b71011 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/LectureCreationPageLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/LectureCreationPageLayout.java @@ -1,5 +1,6 @@ package org.openslx.dozmod.gui.wizard.layout; +import java.awt.Dimension; import java.awt.GridBagLayout; import java.util.Calendar; import java.util.Date; @@ -8,7 +9,9 @@ import java.util.Properties; import javax.swing.Box; import javax.swing.JCheckBox; import javax.swing.JLabel; +import javax.swing.JScrollPane; import javax.swing.JSpinner; +import javax.swing.JTextArea; import javax.swing.JTextField; import javax.swing.SpinnerDateModel; import javax.swing.text.DateFormatter; @@ -25,12 +28,14 @@ import org.openslx.dozmod.util.DateLabelFormatter; public abstract class LectureCreationPageLayout extends WizardPage { protected JTextField lectureNameTextField; + protected JTextArea descriptionText; protected JDatePickerImpl startDate; protected JDatePickerImpl endDate; protected JSpinner startTime; protected JSpinner endTime; protected JCheckBox networkAccessCheck; protected JCheckBox examCheck; + protected JCheckBox autoUpdate; private static final Properties pickerStrings = new Properties(); @@ -52,38 +57,54 @@ public abstract class LectureCreationPageLayout extends WizardPage { setLayout(new GridBagLayout()); + // helper index + int row = 0; + // lecture name JLabel lectureNameLabel = new JLabel("Veranstaltungsname"); lectureNameTextField = new JTextField(); - add(lectureNameLabel, GridPos.get(0, 0)); - add(lectureNameTextField, GridPos.get(1, 0, 2, 1, true, false)); + add(lectureNameLabel, GridPos.get(0, row)); + add(lectureNameTextField, GridPos.get(1, row++, 2, 1, true, false)); + + JLabel descriptionCaption = new JLabel("Beschreibung"); + descriptionText = new JTextArea(); + descriptionText.setLineWrap(true); + descriptionText.setWrapStyleWord(true); + JScrollPane descPane = new JScrollPane(descriptionText, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, + JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); + add(descriptionCaption, GridPos.get(0, row)); + add(descPane, GridPos.get(1, row++, 2, 1, true, true)); // Start date/time JLabel startDateLabel = new JLabel("Startdatum"); startDate = new JDatePickerImpl(new JDatePanelImpl(new UtilDateModel(new Date()), pickerStrings), new DateLabelFormatter()); startTime = makeTimeSpinner(0, 0); - add(startDateLabel, GridPos.get(0, 1)); - add(startDate, GridPos.get(1, 1)); - add(startTime, GridPos.get(2, 1)); + add(startDateLabel, GridPos.get(0, row)); + add(startDate, GridPos.get(1, row, 2, 1, false, false)); + add(startTime, GridPos.get(2, row++, 1, 1, false, false)); JLabel endDateLabel = new JLabel("Enddatum"); endDate = new JDatePickerImpl(new JDatePanelImpl(new UtilDateModel(new Date()), pickerStrings), new DateLabelFormatter()); endTime = makeTimeSpinner(23, 59); - add(endDateLabel, GridPos.get(0, 2)); - add(endDate, GridPos.get(1, 2)); - add(endTime, GridPos.get(2, 2)); + add(endDateLabel, GridPos.get(0, row)); + add(endDate, GridPos.get(1, row)); + add(endTime, GridPos.get(2, row++)); - add(Box.createVerticalStrut(10), GridPos.get(0, 3)); + add(Box.createVerticalStrut(10), GridPos.get(0, row++)); // Options related to exams examCheck = new JCheckBox("Veranstaltung ist eine Prüfung"); + add(examCheck, GridPos.get(1, row++, 2, 1)); + networkAccessCheck = new JCheckBox("Internet verfügbar"); - add(examCheck, GridPos.get(1, 4, 2, 1)); - add(examCheck, GridPos.get(1, 5, 2, 1)); + add(networkAccessCheck, GridPos.get(1, row++, 2, 1)); + + autoUpdate = new JCheckBox("Aktuellste Imageversion verwenden"); + add(autoUpdate, GridPos.get(1, row++, 2, 1)); - add(Box.createVerticalGlue(), GridPos.get(0, 6, true, true)); + add(Box.createVerticalGlue(), GridPos.get(0, row++, true, true)); } private JSpinner makeTimeSpinner(int h, int m) { |
