diff options
| author | Stephan Schwaer | 2015-07-07 18:41:13 +0200 |
|---|---|---|
| committer | Stephan Schwaer | 2015-07-07 18:41:13 +0200 |
| commit | 6cdab2d80d7f614345a93f429a8c337fcd161f96 (patch) | |
| tree | cbe9f7929df0363ab744399ee99bcc52fa06bd0a /dozentenmodul/src/main/java/wizards | |
| parent | [client] Adapt to changes in master-sync-shared/ThriftManager (diff) | |
| download | tutor-module-6cdab2d80d7f614345a93f429a8c337fcd161f96.tar.gz tutor-module-6cdab2d80d7f614345a93f429a8c337fcd161f96.tar.xz tutor-module-6cdab2d80d7f614345a93f429a8c337fcd161f96.zip | |
[client] Added imageWindowComposite and early stage of wizard for creating/editing images.
Diffstat (limited to 'dozentenmodul/src/main/java/wizards')
3 files changed, 243 insertions, 0 deletions
diff --git a/dozentenmodul/src/main/java/wizards/ImageMetaDataPage.java b/dozentenmodul/src/main/java/wizards/ImageMetaDataPage.java new file mode 100644 index 00000000..4f267dda --- /dev/null +++ b/dozentenmodul/src/main/java/wizards/ImageMetaDataPage.java @@ -0,0 +1,109 @@ +package wizards; + + +import org.eclipse.jface.wizard.WizardPage; +import org.eclipse.swt.SWT; +import org.eclipse.swt.events.KeyEvent; +import org.eclipse.swt.events.KeyListener; +import org.eclipse.swt.layout.GridData; +import org.eclipse.swt.layout.GridLayout; +import org.eclipse.swt.widgets.Button; +import org.eclipse.swt.widgets.Combo; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Group; +import org.eclipse.swt.widgets.Label; +import org.eclipse.swt.widgets.Text; + + + +public class ImageMetaDataPage extends WizardPage { + + protected Composite container; + + protected Combo osCombo; + protected Text descriptionText; + protected Button licencedSoftwareCheck; + protected Button licenceServerButton; + + // permissions checks + protected Button readPermissionsCheck; + protected Button writePermissionsCheck; + protected Button linkPermissionsCheck; + protected Button adminPermissionsCheck; + + + + /** + * wizard page for entering image data at creating or editing an image + */ + public ImageMetaDataPage() { + super("Eingabe Ihrer Daten"); + setTitle("Eingabe Ihrer Daten"); + setDescription("Geben Sie bitte einen aussagekräftigen Namen für das neue Image ein."); + } + + + + @Override + public void createControl(Composite parent) { + container = new Composite(parent, SWT.NONE); + GridLayout layout = new GridLayout(); + container.setLayout(layout); + layout.numColumns = 2; + + GridData gd = new GridData(GridData.FILL_HORIZONTAL); + + + + Label osCaption = new Label(container, SWT.NONE); + osCaption.setText("Betriebssystem:"); + osCombo = new Combo(container, SWT.DROP_DOWN | SWT.READ_ONLY); + + Label descriptionCation = new Label(container, SWT.NONE); + descriptionCation.setText("Beschreibung:"); + descriptionText = new Text(container, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL); + gd = new GridData(GridData.FILL_HORIZONTAL); + gd.heightHint = 80; + descriptionText.setLayoutData(gd); + + Label licencedSoftwareCaption = new Label(container, SWT.NONE); + licencedSoftwareCaption.setText("Image enthält lizensierte Software:"); + licencedSoftwareCheck = new Button(container, SWT.CHECK); + + + Label licenceServerCaption = new Label(container, SWT.NONE); + licenceServerCaption.setText("Lizenzserver:"); + licenceServerButton = new Button(container, SWT.PUSH); + licenceServerButton.setText("Server-Adresse"); + + + Group permissionsGroup = new Group(container, SWT.BORDER); + gd = new GridData(); + gd.horizontalSpan = 2; + permissionsGroup.setLayoutData(gd); + + + permissionsGroup.setText("Standart Berechtigungen"); + permissionsGroup.setLayout(new GridLayout(4, true)); + + readPermissionsCheck = new Button(permissionsGroup, SWT.CHECK); + readPermissionsCheck.setText("Lesen"); + writePermissionsCheck = new Button(permissionsGroup, SWT.CHECK); + writePermissionsCheck.setText("Schreiben"); + linkPermissionsCheck = new Button(permissionsGroup, SWT.CHECK); + linkPermissionsCheck.setText("Verlinken"); + adminPermissionsCheck = new Button(permissionsGroup, SWT.CHECK); + adminPermissionsCheck.setText("Admin"); + + + // required to avoid an error in the system + setControl(container); + setPageComplete(true); + } + + + public String getImageDescription() { + return descriptionText.getText(); + } + +} diff --git a/dozentenmodul/src/main/java/wizards/ImageUploadPage.java b/dozentenmodul/src/main/java/wizards/ImageUploadPage.java new file mode 100644 index 00000000..b4f36589 --- /dev/null +++ b/dozentenmodul/src/main/java/wizards/ImageUploadPage.java @@ -0,0 +1,87 @@ +package wizards; + + +import org.eclipse.jface.wizard.WizardPage; +import org.eclipse.swt.SWT; +import org.eclipse.swt.events.KeyEvent; +import org.eclipse.swt.events.KeyListener; +import org.eclipse.swt.layout.GridData; +import org.eclipse.swt.layout.GridLayout; +import org.eclipse.swt.widgets.Button; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Label; +import org.eclipse.swt.widgets.Text; + + + +public class ImageUploadPage extends WizardPage { + + protected Text imageName; + protected Composite container; + protected boolean editExistingImage; + protected Button imageFileBrowseButton; + + + + /** + * Page for uploading an imagefile + * @param editExistingImage wether to edit existing image file or create new one + */ + public ImageUploadPage(boolean editExistingImage) { + super("Eingabe Ihrer Daten"); + setTitle("Eingabe Ihrer Daten"); + setDescription("Geben Sie bitte einen aussagekräftigen Namen für das neue Image ein."); + this.editExistingImage = editExistingImage; + } + + + + @Override + public void createControl(Composite parent) { + container = new Composite(parent, SWT.NONE); + GridLayout layout = new GridLayout(); + container.setLayout(layout); + layout.numColumns = 2; + Label imageNameCaption= new Label(container, SWT.NONE); + imageNameCaption.setText("Name des Images"); + + + imageName = new Text(container, SWT.BORDER | SWT.SINGLE); + imageName.setText(""); + GridData gd = new GridData(GridData.FILL_HORIZONTAL); + imageName.setLayoutData(gd); + imageName.setEnabled(!editExistingImage); + System.out.println(editExistingImage); + + imageName.addKeyListener(new KeyListener() { + @Override + public void keyPressed(KeyEvent e) { + } + + @Override + public void keyReleased(KeyEvent e) { + if (!imageName.getText().isEmpty()) { + setPageComplete(true); + } else { + setPageComplete(false); + } + } + }); + + Label imageFileCaption = new Label(container, SWT.NONE); + imageFileCaption.setText("Imagefile:"); + imageFileBrowseButton = new Button(container, SWT.PUSH); + imageFileBrowseButton.setText("Browse"); + + + // required to avoid an error in the system + setControl(container); + setPageComplete(editExistingImage); + } + + + public String getText1() { + return imageName.getText(); + } + +} diff --git a/dozentenmodul/src/main/java/wizards/ImageWizard.java b/dozentenmodul/src/main/java/wizards/ImageWizard.java new file mode 100644 index 00000000..1723a2d2 --- /dev/null +++ b/dozentenmodul/src/main/java/wizards/ImageWizard.java @@ -0,0 +1,47 @@ +package wizards; + +import org.eclipse.jface.wizard.Wizard; + +public class ImageWizard extends Wizard{ + + protected ImageUploadPage imageUploadPage; + protected ImageMetaDataPage imageMetaDataPage; + protected boolean editExistingImage; + + + + + /** + * Wizard for creating or editing an image + * @param editExistingImage wether to create new or edit existing image + */ + public ImageWizard(boolean editExistingImage) { + super(); + setNeedsProgressMonitor(true); + this.editExistingImage = editExistingImage; + } + + + @Override + public String getWindowTitle() { + return "Neues Image erzeugen"; + } + + + @Override + public void addPages() { + imageUploadPage = new ImageUploadPage(editExistingImage); + imageMetaDataPage = new ImageMetaDataPage(); + addPage(imageUploadPage); + addPage(imageMetaDataPage); + } + + + @Override + public boolean performFinish() { + // Print the result to the console + System.out.println(imageUploadPage.getText1()); + System.out.println(imageMetaDataPage.getImageDescription()); + return true; + } +} |
