From 807fa5583eafa546e6e1260fa93a2b50ba0827e6 Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Mon, 17 Aug 2015 16:07:51 +0200 Subject: [client] do save checkboxes in upload wizard --- .../gui/wizard/layout/ImageMetaDataPageLayout.java | 6 +++--- .../dozmod/gui/wizard/page/ImageMetaDataPage.java | 18 ++++++++++-------- 2 files changed, 13 insertions(+), 11 deletions(-) (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui') diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/ImageMetaDataPageLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/ImageMetaDataPageLayout.java index e479085b..7926ac11 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/ImageMetaDataPageLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/layout/ImageMetaDataPageLayout.java @@ -25,7 +25,7 @@ public abstract class ImageMetaDataPageLayout extends WizardPage { protected JTextArea descriptionText; protected JCheckBox licencedSoftwareCheck; protected JCheckBox setActiveCheck; - protected JCheckBox isTemplate; + protected JCheckBox isTemplateCheck; // permissions checks protected JCheckBox readPermissionsCheck; @@ -94,8 +94,8 @@ public abstract class ImageMetaDataPageLayout extends WizardPage { grid.add(permissionsGroup, 2, 1).fill(true, false).expand(true, false); grid.nextRow(); // -- end permissions group -- - isTemplate = new JCheckBox("Vorlage erstellen"); - grid.add(isTemplate); + isTemplateCheck = new JCheckBox("Vorlage erstellen"); + grid.add(isTemplateCheck); grid.nextRow(); grid.finish(true); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java index c61b2764..5c4473b7 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java @@ -31,7 +31,6 @@ public class ImageMetaDataPage extends ImageMetaDataPageLayout { this.state = uploadWizardState; setPageComplete(false); // HACK set fixed uploadWizardState to test functions - uploadWizardState.isTemplate = false; uploadWizardState.shareMode = ShareMode.LOCAL; // fetch the OS list @@ -77,18 +76,20 @@ public class ImageMetaDataPage extends ImageMetaDataPageLayout { reactToUserInput(); } }); - - setActiveCheck.setSelected(state.isEnabled); - } @Override protected void onPageEnter() { LOGGER.debug("Entering page..."); // Preselect OS if possible - if (state.selectedOs == null && state.detectedOs != null) { + if (state.detectedOs != null) { osCombo.setSelectedItem(state.detectedOs); + } else if (state.selectedOs == null) { + osCombo.setSelectedItem(null); } + setActiveCheck.setSelected(state.isEnabled); + isTemplateCheck.setSelected(state.isTemplate); + licencedSoftwareCheck.setSelected(state.isRestricted); } @Override @@ -98,6 +99,9 @@ public class ImageMetaDataPage extends ImageMetaDataPageLayout { adminPermissionsCheck.isSelected()); state.selectedOs = (OperatingSystem)osCombo.getSelectedItem(); LOGGER.info("Selected OS is " + state.selectedOs); + state.isEnabled = setActiveCheck.isSelected(); + state.isTemplate = isTemplateCheck.isSelected(); + state.isRestricted = licencedSoftwareCheck.isSelected(); return state.selectedOs != null && state.description != null; } @@ -108,7 +112,6 @@ public class ImageMetaDataPage extends ImageMetaDataPageLayout { for (OperatingSystem os : osList) { osCombo.addItem(os); } - // TODO: Select no OS by default } /** @@ -117,14 +120,13 @@ public class ImageMetaDataPage extends ImageMetaDataPageLayout { * and call setPageComplete(bool) accordingly. */ private void reactToUserInput() { - if (osCombo.getSelectedIndex() == -1) { // OS empty, description input present setWarningMessage("Wählen Sie das Betriebssystem aus."); setPageComplete(false); return; } - + // evaluate description field state.description = descriptionText.getText(); if (state.description == null || state.description.isEmpty()) { // OS set, no description -- cgit v1.2.3-55-g7522