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 | |
| 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
3 files changed, 35 insertions, 18 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; 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 90bd1829..92c02cc6 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 @@ -122,7 +122,7 @@ public abstract class ImageDetailsWindowLayout extends JDialog { grid.nextRow(); // os - cboOperatingSystem = new ComboBox<>(Comparators.operatingSystem, + cboOperatingSystem = new ComboBox<OperatingSystem>(Comparators.operatingSystem, new ComboBoxRenderer<OperatingSystem>() { @Override public String renderItem(OperatingSystem item) { @@ -152,7 +152,15 @@ public abstract class ImageDetailsWindowLayout extends JDialog { */ // share mode - cboShareMode = new JComboBox<>(); + cboShareMode = new ComboBox<ShareMode>(Comparators.sharemode, + new ComboBoxRenderer<ShareMode>() { + @Override + public String renderItem(ShareMode item) { + if (item == null) + return null; + return item.name(); + } + }); grid.add(new QLabel("Freigabemodus")); grid.add(cboShareMode, 2).expand(true, false).fill(true, false); grid.nextRow(); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/thrift/ThriftActions.java b/dozentenmodul/src/main/java/org/openslx/dozmod/thrift/ThriftActions.java index 80a86a41..dc1ce2df 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/thrift/ThriftActions.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/thrift/ThriftActions.java @@ -90,7 +90,7 @@ public class ThriftActions { } else { // after login // TODO sat adress selection popup!! - address = "132.230.8.192"; + address = "132.230.8.113"; satToken = data.satelliteToken; masterToken = data.masterToken; } |
