summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org
diff options
context:
space:
mode:
authorStephan Schwaer2015-08-19 18:29:32 +0200
committerStephan Schwaer2015-08-19 18:29:32 +0200
commit07eeb6be03d6083ef513de58fb4216ea911dfe0c (patch)
tree1512c484cfecbeb49ec804b695df118312776a2f /dozentenmodul/src/main/java/org
parent[client] add missing file (diff)
downloadtutor-module-07eeb6be03d6083ef513de58fb4216ea911dfe0c.tar.gz
tutor-module-07eeb6be03d6083ef513de58fb4216ea911dfe0c.tar.xz
tutor-module-07eeb6be03d6083ef513de58fb4216ea911dfe0c.zip
[client] Added default permission options to imageDetailsWindow.
Diffstat (limited to 'dozentenmodul/src/main/java/org')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java38
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/ImageDetailsWindowLayout.java23
2 files changed, 53 insertions, 8 deletions
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 a870e300..8a765daf 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
@@ -289,7 +289,7 @@ public class ImageDetailsWindow extends ImageDetailsWindowLayout implements UiFe
((OperatingSystem)cboOperatingSystem.getSelectedItem()).osId,
image.virtId,
chkIsTemplate.isSelected(),
- image.defaultPermissions,
+ new ImagePermissions(chkCustomPermLink.isSelected(), chkCustomPermDownload.isSelected(), chkCustomPermEdit.isSelected(), chkCustomPermAdmin.isSelected()),
image.shareMode);
QuickTimer.scheduleOnce(new Task() {
@@ -445,14 +445,25 @@ public class ImageDetailsWindow extends ImageDetailsWindowLayout implements UiFe
};
cboOperatingSystem.addItemListener(comboItemListener);
cboShareMode.addItemListener(comboItemListener);
- chkIsTemplate.addActionListener(new ActionListener() {
-
+
+ // Listener to detect changes in checkboxes
+ final ActionListener checkBoxListener = new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
- reactToChange();
-
+ reactToChange();
}
- });
+ };
+ chkCustomPermAdmin.setSelected(image.defaultPermissions.admin);
+ chkCustomPermEdit.setSelected(image.defaultPermissions.edit);
+ chkCustomPermDownload.setSelected(image.defaultPermissions.download);
+ chkCustomPermLink.setSelected(image.defaultPermissions.link);
+
+ chkIsTemplate.addActionListener(checkBoxListener);
+ chkCustomPermAdmin.addActionListener(checkBoxListener);
+ chkCustomPermEdit.addActionListener(checkBoxListener);
+ chkCustomPermDownload.addActionListener(checkBoxListener);
+ chkCustomPermLink.addActionListener(checkBoxListener);
+
// make fields editable is allowed
makeEditable(true);
// finally do show it all
@@ -467,13 +478,18 @@ public class ImageDetailsWindow extends ImageDetailsWindowLayout implements UiFe
*/
private void makeEditable(boolean editable) {
editable = editable && ImagePerms.canEdit(image);
+ boolean adminEdit = editable && ImagePerms.canAdmin(image);
txtTitle.setEditable(editable);
txtDescription.setEditable(editable);
txtTags.setEditable(editable);
cboOperatingSystem.setEnabled(editable);
cboShareMode.setEnabled(editable);
btnCustomPermissions.setEnabled(editable);
- btnChangeOwner.setEnabled(editable && ImagePerms.canAdmin(image));
+ btnChangeOwner.setEnabled(adminEdit);
+ chkCustomPermAdmin.setEnabled(adminEdit);
+ chkCustomPermEdit.setEnabled(adminEdit);
+ chkCustomPermDownload.setEnabled(adminEdit);
+ chkCustomPermLink.setEnabled(adminEdit);
}
/**
@@ -495,6 +511,14 @@ public class ImageDetailsWindow extends ImageDetailsWindowLayout implements UiFe
changed = true;
} else if (chkIsTemplate.isSelected() != image.isTemplate) {
changed = true;
+ } else if (chkCustomPermAdmin.isSelected() != image.defaultPermissions.admin) {
+ changed = true;
+ } else if (chkCustomPermEdit.isSelected() != image.defaultPermissions.edit) {
+ changed = true;
+ } else if (chkCustomPermDownload.isSelected() != image.defaultPermissions.download) {
+ changed = true;
+ } else if (chkCustomPermLink.isSelected() != image.defaultPermissions.link) {
+ changed = true;
}
// TODO TAGS
btnSaveChanges.setEnabled(changed);
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 54c478e3..19df002e 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
@@ -50,6 +50,11 @@ public abstract class ImageDetailsWindowLayout extends JDialog {
protected final JTextField txtId;
protected final JTextField txtVersion;
+ protected final JCheckBox chkCustomPermAdmin;
+ protected final JCheckBox chkCustomPermEdit;
+ protected final JCheckBox chkCustomPermDownload;
+ protected final JCheckBox chkCustomPermLink;
+
protected final JButton btnCustomPermissions;
protected final JButton btnSaveChanges;
protected final JButton btnUpdateImage;
@@ -172,7 +177,23 @@ public abstract class ImageDetailsWindowLayout extends JDialog {
grid.add(new JLabel("Image-UUID"));
grid.add(txtId, 2).expand(true, false).fill(true, false);
grid.nextRow();
- btnCustomPermissions = new JButton("Benutzerdefinierte Berechtigungen");
+
+ JPanel defaultPermissionPane = new JPanel();
+ defaultPermissionPane.setBorder(BorderFactory.createTitledBorder( "Default Berechtigungen"));
+ chkCustomPermAdmin = new JCheckBox("Admin");
+ chkCustomPermDownload = new JCheckBox("Download");
+ chkCustomPermEdit = new JCheckBox("Bearbeiten");
+ chkCustomPermLink = new JCheckBox("Link");
+ defaultPermissionPane.add(chkCustomPermLink);
+ defaultPermissionPane.add(chkCustomPermDownload);
+ defaultPermissionPane.add(chkCustomPermEdit);
+ defaultPermissionPane.add(chkCustomPermAdmin);
+
+ grid.add(defaultPermissionPane, 3);
+ grid.nextRow();
+
+
+ btnCustomPermissions = new JButton("Standart Berechtigungen");
grid.add(btnCustomPermissions);
grid.skip(2);
grid.nextRow();