diff options
author | Jonathan Bauer | 2015-09-02 14:40:28 +0200 |
---|---|---|
committer | Jonathan Bauer | 2015-09-02 14:40:28 +0200 |
commit | 5b6bb1c7f996be2a53c5c555c9e49550d5cc1ba0 (patch) | |
tree | 0fef08db8df2f18d2543192881c2a71c9ac3172a /dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java | |
parent | [client] typos (diff) | |
download | tutor-module-5b6bb1c7f996be2a53c5c555c9e49550d5cc1ba0.tar.gz tutor-module-5b6bb1c7f996be2a53c5c555c9e49550d5cc1ba0.tar.xz tutor-module-5b6bb1c7f996be2a53c5c555c9e49550d5cc1ba0.zip |
[client] added ShareMode combo in ImageWindow (warning changing the mode and saving will lead to errors)
ImageDetails: fix combos getting refilled even if they were already filled
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java')
-rw-r--r-- | dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java | 39 |
1 files changed, 24 insertions, 15 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 2f3640ab..2858050c 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 @@ -179,7 +179,6 @@ public class ImageDetailsWindow extends ImageDetailsWindowLayout implements UiFe pop.addMenuItem(popupItemDownload); pop.addSeparator(); pop.addMenuItem(popupItemDelete); - // TODO check permissions and disable them if needed /** * Mouse adapter for the version table @@ -280,21 +279,20 @@ public class ImageDetailsWindow extends ImageDetailsWindowLayout implements UiFe final ImageBaseWrite ibw = new ImageBaseWrite( txtTitle.getText(), txtDescription.getText(), - ((OperatingSystem)cboOperatingSystem.getSelectedItem()).osId, + cboOperatingSystem.getItemAt(cboOperatingSystem.getSelectedIndex()).osId, image.virtId, chkIsTemplate.isSelected(), new ImagePermissions(image.defaultPermissions.link, image.defaultPermissions.download, image.defaultPermissions.edit, image.defaultPermissions.admin), - image.shareMode); + cboShareMode.getItemAt(cboShareMode.getSelectedIndex())); // now trigger the actual action if (!ThriftActions.updateImageBase(JOptionPane.getFrameForComponent(me), image.getImageBaseId(), ibw)) return; - if(permissionsChanged){ + if (permissionsChanged){ try { - ThriftManager.getSatClient().writeImagePermissions(Session.getSatelliteToken(), image.imageBaseId, permissionMap); permissionsChanged = false; } catch (TException e) { - LOGGER.error("Fehler beim Übertragen der benutzerdefinierten Berechtigungen: ", e); + LOGGER.error("Fehler beim Übertragen der benutzerspezifischen Berechtigungen: ", e); } } // success @@ -366,22 +364,33 @@ public class ImageDetailsWindow extends ImageDetailsWindowLayout implements UiFe txtId.setText(image.getImageBaseId()); setTitle(image.getImageName()); - List<OperatingSystem> osList = MetaDataCache.getOperatingSystems(); - // all fine, lets sort it - Collections.sort(osList, new Comparator<OperatingSystem>() { - public int compare(OperatingSystem o1, OperatingSystem o2) { - return o1.getOsName().compareTo(o2.getOsName()); + // fill os combo, but only once :) + if (cboOperatingSystem.getItemCount() == 0) { + List<OperatingSystem> osList = MetaDataCache.getOperatingSystems(); + // all fine, lets sort it + Collections.sort(osList, new Comparator<OperatingSystem>() { + public int compare(OperatingSystem o1, OperatingSystem o2) { + return o1.getOsName().compareTo(o2.getOsName()); + } + }); + for (OperatingSystem os : osList) { + cboOperatingSystem.addItem(os); } - }); - for (OperatingSystem os : osList) { - cboOperatingSystem.addItem(os); + cboOperatingSystem.setSelectedItem(new OperatingSystem(image.getOsId(), null, null, null)); } - cboOperatingSystem.setSelectedItem(new OperatingSystem(image.getOsId(), null, null, null)); Virtualizer virt = MetaDataCache.getVirtualizerById(image.getVirtId()); if (virt != null) lblVirtualizer.setText(virt.getVirtName()); + // fill share mode combo, if not already done + if (cboShareMode.getItemCount() == 0) { + for (ShareMode mode : ShareMode.values()) { + cboShareMode.addItem(mode); + } + cboShareMode.setSelectedItem(image.getShareMode()); + } + String tagsString = ""; for (String tag : image.getTags()) { tagsString = tagsString + ", " + tag; |