diff options
author | Stephan Schwaer | 2015-09-25 16:20:18 +0200 |
---|---|---|
committer | Stephan Schwaer | 2015-09-25 16:20:18 +0200 |
commit | 69047bc1e4ae2102e6b94e4d718425a561b8e679 (patch) | |
tree | f2baf76a46262269be77e87caa8e259d12670b6d /dozentenmodul/src/main/java/org/openslx/dozmod | |
parent | [client] Moved default permissions onto same page as custom permissions for i... (diff) | |
download | tutor-module-69047bc1e4ae2102e6b94e4d718425a561b8e679.tar.gz tutor-module-69047bc1e4ae2102e6b94e4d718425a561b8e679.tar.xz tutor-module-69047bc1e4ae2102e6b94e4d718425a561b8e679.zip |
[client] More user window fixes; Moved default permissions to custom permissionpage of lecture wizard.
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod')
11 files changed, 70 insertions, 44 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/activity/TransferPanel.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/activity/TransferPanel.java index f48d7ee9..8dbd4ae0 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/activity/TransferPanel.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/activity/TransferPanel.java @@ -130,7 +130,7 @@ public abstract class TransferPanel extends ActivityPanel implements TransferEve status = "Inaktiv"; break; case WORKING: - status = "Überträgt"; + status = "Übertragung läuft"; break; default: status = event.state.toString(); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/UserListWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/UserListWindow.java index 1a257e7e..0b99f842 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/UserListWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/UserListWindow.java @@ -58,16 +58,15 @@ public class UserListWindow extends UserListWindowLayout implements UiFeedback { userList.add(user); } - // Scale the window after getting the list of users. - int calcHeight = 150 + userList.size() * 20; - calcHeight = calcHeight > 350 ? calcHeight : 350; - me.setPreferredSize(Gui.getScaledDimension(450, (calcHeight < 600) ? calcHeight : 600)); - me.pack(); - Gui.asyncExec(new Runnable() { @Override public void run() { userTable.setData(userList, true); + // Scale the window after getting the list of users. + int calcHeight = 150 + userList.size() * 20; + calcHeight = calcHeight > 350 ? calcHeight : 350; + me.setPreferredSize(Gui.getScaledDimension(450, (calcHeight < 600) ? calcHeight : 600)); + me.pack(); userTable.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS); } }); 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 ff73a20c..8d7e6aef 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 @@ -27,7 +27,7 @@ import org.openslx.dozmod.gui.window.LectureListWindow.FilterType; public abstract class LectureListWindowLayout extends CompositePage { private static final String infoTitleString = "Übersicht Veranstaltungen"; - private static final String newButtonLabel = "Neu"; + private static final String newButtonLabel = "Neue Veranstaltung"; private static final String editButtonLabel = "Bearbeiten"; private static final String deleteButtonLabel = "Löschen"; private static final String switchViewButtonLabel = "Zu 'Images' wechseln"; diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/ImageCreationWizard.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/ImageCreationWizard.java index 772f69af..6df1b7c0 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/ImageCreationWizard.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/ImageCreationWizard.java @@ -7,6 +7,7 @@ import javax.swing.JOptionPane; import org.apache.log4j.Logger; import org.apache.thrift.TException; import org.openslx.bwlp.thrift.iface.ImageBaseWrite; +import org.openslx.bwlp.thrift.iface.ImagePermissions; import org.openslx.bwlp.thrift.iface.ImageVersionWrite; import org.openslx.dozmod.gui.Gui; import org.openslx.dozmod.gui.helper.MessageType; @@ -38,6 +39,8 @@ public class ImageCreationWizard extends Wizard implements UiFeedback { */ public ImageCreationWizard(Window parent) { super(parent); + // TODO get default from server? + uploadWizardState.defaultPermissions = new ImagePermissions(true, true, false, false); imageUploadPage = new ImageUploadPage(this, uploadWizardState, null); imageMetaDataPage = new ImageMetaDataPage(this, uploadWizardState); imageCustomPermissionPage = new ImageCustomPermissionPage(this, uploadWizardState); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/LectureWizard.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/LectureWizard.java index e730c5b7..b914e5b3 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/LectureWizard.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/LectureWizard.java @@ -6,6 +6,7 @@ import javax.swing.JOptionPane; import org.apache.log4j.Logger; import org.openslx.bwlp.thrift.iface.ImageSummaryRead; +import org.openslx.bwlp.thrift.iface.LecturePermissions; import org.openslx.bwlp.thrift.iface.LectureWrite; import org.openslx.dozmod.gui.Gui; import org.openslx.dozmod.gui.MainWindow; @@ -42,7 +43,10 @@ public class LectureWizard extends Wizard implements UiFeedback { state.image = image; state.imageVersionId = imageVersionId; } - + + //TODO get default from server? + state.defaultPermissions = new LecturePermissions(false, false); + // create the shared object for all pages of the wizard addPage(new LectureCreationPage(this, state)); if (image == null && imageVersionId == null) diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/ImageCustomPermissionPageLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/ImageCustomPermissionPageLayout.java index b33dee32..da73323e 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/ImageCustomPermissionPageLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/ImageCustomPermissionPageLayout.java @@ -30,7 +30,7 @@ public class ImageCustomPermissionPageLayout extends WizardPage { * @param wizard */ public ImageCustomPermissionPageLayout(Wizard wizard) { - super(wizard, "Benutzerspezifische Rechte festlegen"); + super(wizard, "Berechtigungen festlegen"); setDescription("Legen Sie hier die gewünschten Berechtigungen fest."); GridManager grid = new GridManager(this, 1, false); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/LectureCustomPermissionPageLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/LectureCustomPermissionPageLayout.java index 29812803..0e51b1aa 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/LectureCustomPermissionPageLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/LectureCustomPermissionPageLayout.java @@ -1,5 +1,13 @@ package org.openslx.dozmod.gui.wizard.layout; +import java.awt.Font; + +import javax.swing.BorderFactory; +import javax.swing.BoxLayout; +import javax.swing.JCheckBox; +import javax.swing.JLabel; +import javax.swing.JPanel; + import org.openslx.dozmod.gui.control.LectureCustomPermissionManager; import org.openslx.dozmod.gui.helper.GridManager; import org.openslx.dozmod.gui.wizard.Wizard; @@ -7,21 +15,48 @@ import org.openslx.dozmod.gui.wizard.WizardPage; @SuppressWarnings("serial") public abstract class LectureCustomPermissionPageLayout extends WizardPage { - + protected LectureCustomPermissionManager lectureCustomPermissionManager; + // permissions checks + protected JCheckBox editPermissionsCheck; + protected JCheckBox adminPermissionsCheck; + /** * Page for setting custom permissions of a lecture */ public LectureCustomPermissionPageLayout(Wizard wizard) { - super(wizard, "Benutzerspezifische Rechte festlegen"); - setDescription("Legen Sie hier benutzerspezifische Berechtigungen fest, falls gewünscht."); + super(wizard, "Berechtigungen festlegen"); + setDescription("Legen Sie hier die gewünschten Berechtigungen fest."); GridManager grid = new GridManager(this, 1, false); lectureCustomPermissionManager = new LectureCustomPermissionManager(); grid.add(lectureCustomPermissionManager).fill(true, true).expand(true, true); grid.nextRow(); - - grid.finish(true); + + // -- default permissions -- + JLabel defaultPermLabel = new JLabel("Standardberechtigungen"); + defaultPermLabel.setBorder(BorderFactory.createEmptyBorder(10, 5, 0, 0)); + defaultPermLabel.setFont(defaultPermLabel.getFont().deriveFont(Font.BOLD)); + grid.add(defaultPermLabel); + + JLabel defaultDescriptionLabel = new JLabel("<html><body style ='width:100%'> " + + "Legen Sie hier die Berechtigungen für alle anderen (nicht in der Liste " + + "angezeigten) Benutzer fest.</body></html>"); + defaultDescriptionLabel.setBorder(BorderFactory.createEmptyBorder(0, 10, 0, 0)); + grid.add(defaultDescriptionLabel).fill(true, false).expand(true, false); + + JPanel permissionsPanel = new JPanel(); + permissionsPanel.setLayout(new BoxLayout(permissionsPanel, BoxLayout.LINE_AXIS)); + editPermissionsCheck = new JCheckBox("Bearbeiten"); + adminPermissionsCheck = new JCheckBox("Administrieren"); + permissionsPanel.add(editPermissionsCheck); + permissionsPanel.add(adminPermissionsCheck); + + permissionsPanel.setBorder(BorderFactory.createEmptyBorder(5, 10, 5, 0)); + grid.add(permissionsPanel).fill(true, false).expand(true, false); + + + grid.finish(false); } } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/LectureOptionsPageLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/LectureOptionsPageLayout.java index 9b928808..b7f5657c 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/LectureOptionsPageLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/LectureOptionsPageLayout.java @@ -1,9 +1,6 @@ package org.openslx.dozmod.gui.wizard.layout; -import javax.swing.Box; import javax.swing.JCheckBox; -import javax.swing.JPanel; -import javax.swing.border.TitledBorder; import org.openslx.dozmod.gui.helper.GridManager; import org.openslx.dozmod.gui.wizard.Wizard; @@ -19,9 +16,7 @@ public abstract class LectureOptionsPageLayout extends WizardPage { protected JCheckBox examCheck; protected JCheckBox autoUpdate; protected JCheckBox enabledCheck; - // permissions checks - protected JCheckBox editPermissionsCheck; - protected JCheckBox adminPermissionsCheck; + /** @@ -30,39 +25,25 @@ public abstract class LectureOptionsPageLayout extends WizardPage { public LectureOptionsPageLayout(Wizard wizard) { super(wizard, title); setDescription("Bitte wählen Sie aus folgenden Optionen aus:"); - GridManager grid = new GridManager(this, 3, false); + GridManager grid = new GridManager(this, 1); // Options related to exams examCheck = new JCheckBox("Veranstaltung ist eine Prüfung"); - grid.add(examCheck, 3, 1); + grid.add(examCheck); grid.nextRow(); networkAccessCheck = new JCheckBox("Internet verfügbar", true); - grid.add(networkAccessCheck, 3, 1); + grid.add(networkAccessCheck); grid.nextRow(); autoUpdate = new JCheckBox("Aktuellste Imageversion verwenden", true); - grid.add(autoUpdate, 3, 1); + grid.add(autoUpdate); grid.nextRow(); enabledCheck = new JCheckBox("Vorlesung ist aktiv", true); - grid.add(enabledCheck, 3, 1); + grid.add(enabledCheck); grid.nextRow(); - grid.add(Box.createVerticalStrut(10), 3, 1); - - // -- default permissions group -- - JPanel permissionsGroup = new JPanel(); - permissionsGroup.setBorder(new TitledBorder("Standardberechtigungen")); - editPermissionsCheck = new JCheckBox("Bearbeiten"); - adminPermissionsCheck = new JCheckBox("Administrieren"); - permissionsGroup.add(editPermissionsCheck); - permissionsGroup.add(adminPermissionsCheck); - grid.add(permissionsGroup, 3, 1).fill(true, true); - grid.nextRow(); - - grid.add(Box.createVerticalGlue(), 3, 1).fill(true, true); - grid.finish(true); } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageCustomPermissionPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageCustomPermissionPage.java index f0e586d0..f27af40c 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageCustomPermissionPage.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageCustomPermissionPage.java @@ -27,6 +27,10 @@ public class ImageCustomPermissionPage extends ImageCustomPermissionPageLayout { super(wizard); setPageComplete(true); this.state = uploadWizardState; + linkPermissionsCheck.setSelected(state.defaultPermissions.link); + readPermissionsCheck.setSelected(state.defaultPermissions.download); + writePermissionsCheck.setSelected(state.defaultPermissions.edit); + adminPermissionsCheck.setSelected(state.defaultPermissions.admin); } @Override 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 268baae7..37356b08 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 @@ -27,6 +27,8 @@ public class LectureCustomPermissionPage extends LectureCustomPermissionPageLayo public LectureCustomPermissionPage(Wizard wizard, LectureWizardState state) { super(wizard); this.state = state; + editPermissionsCheck.setSelected(state.defaultPermissions.edit); + adminPermissionsCheck.setSelected(state.defaultPermissions.admin); setPageComplete(true); } @@ -42,6 +44,8 @@ public class LectureCustomPermissionPage extends LectureCustomPermissionPageLayo protected boolean wantNextOrFinish() { LOGGER.debug("Saving permissions to state ..."); // save the table stuff to our upload wizard state + state.defaultPermissions.edit = editPermissionsCheck.isSelected(); + state.defaultPermissions.admin = adminPermissionsCheck.isSelected(); Map<String, LecturePermissions> newPermissionMap = lectureCustomPermissionManager.updatePermissionReferences(); if (newPermissionMap == null || newPermissionMap.isEmpty()){ return true; diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureOptionsPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureOptionsPage.java index 32689ff0..1db1478e 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureOptionsPage.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureOptionsPage.java @@ -18,8 +18,6 @@ public class LectureOptionsPage extends LectureOptionsPageLayout { public LectureOptionsPage(Wizard wizard, LectureWizardState state) { super(wizard); this.state = state; - editPermissionsCheck.setSelected(state.defaultPermissions.edit); - adminPermissionsCheck.setSelected(state.defaultPermissions.admin); setPageComplete(true); } @@ -37,8 +35,6 @@ public class LectureOptionsPage extends LectureOptionsPageLayout { state.internetAccess = networkAccessCheck.isSelected(); state.isEnabled = enabledCheck.isSelected(); - state.defaultPermissions.edit = editPermissionsCheck.isSelected(); - state.defaultPermissions.admin = adminPermissionsCheck.isSelected(); setDescription("Klicken Sie auf 'Weiter' für Berechtigungen oder 'Fertigstellen'."); return true; } |