+++ /dev/null
-package com.xaraya.wizard;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.swt.SWT;
-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.Event;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.Text;
-
-public class XarayaModuleFilePage extends WizardPage implements Listener
-{
-
- IStructuredSelection selection;
-
- //Xaraya stuff
- private Text modversionid;
- private Text modversionversion;
- private Text modversiondescription;
- private Text modversionofficial;
- private Text modversionauthor;
- private Text modversioncontact;
- private Text modversionsecurityschema;
- private Text modversionclass;
- private Text modversioncategory;
-
- private Button officialButton;
- private Button xarUserApi;
- private Button xarUserGui;
- private Button xarAdminApi;
- private Button xarAdminGui;
-
- public XarayaModuleFilePage(String argument) {
- super(argument);
- setTitle(XarayaModuleMessages.getString("Xaraya.label.module"));
- setDescription(XarayaModuleMessages.getString("Xaraya.label.details"));
- setPageComplete(false);
- }
-
- public void createControl(Composite parent) {
- // create the composite to hold the widgets
- GridData gd;
- Composite composite = new Composite(parent, SWT.NULL);
- // create the desired layout for this wizard page
- GridLayout gl = new GridLayout();
- int ncol = 4;
- gl.numColumns = ncol;
- composite.setLayout(gl);
- Group detailsgrp = new Group(composite, SWT.NULL);
- detailsgrp.setText(XarayaModuleMessages.getString("Xaraya.label.detailsgrp")/*"Module details"*/);
- detailsgrp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- detailsgrp.setLayout(new GridLayout());
-
- new Label (detailsgrp, SWT.NONE).setText(XarayaModuleMessages.getString("Xaraya.label.modversionid")/*"modversionid"*/);
- modversionid = new Text(detailsgrp, SWT.BORDER);
- modversionid.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- modversionid.addListener(SWT.KeyUp, this);
- modversionid.setFocus();
- new Label (detailsgrp, SWT.NONE).setText(XarayaModuleMessages.getString("Xaraya.label.modversionversion")/*"modversionversion"*/);
- modversionversion = new Text(detailsgrp, SWT.BORDER);
- modversionversion.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- modversionversion.addListener(SWT.KeyUp, this);
- new Label (detailsgrp, SWT.NONE).setText(XarayaModuleMessages.getString("Xaraya.label.modversionDescription")/*"modversionDescription"*/);
- modversiondescription = new Text(detailsgrp, SWT.BORDER);
- modversiondescription.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- modversiondescription.addListener(SWT.KeyUp, this);
- // new Label (detailsgrp, SWT.NONE).setText(XarayaModuleMessages.getString("Xaraya.label.modversionofficial")/*"modversionofficial"*/);
- // modversionofficial = new Text(detailsgrp, SWT.BORDER);
- // modversionofficial.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- // modversionofficial.addListener(SWT.KeyUp, this);
- new Label (detailsgrp, SWT.NONE).setText(XarayaModuleMessages.getString("Xaraya.label.modversionauthor")/*"modversionauthor"*/);
- modversionauthor = new Text(detailsgrp, SWT.BORDER);
- modversionauthor.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- modversionauthor.addListener(SWT.KeyUp, this);
- new Label (detailsgrp, SWT.NONE).setText(XarayaModuleMessages.getString("Xaraya.label.modversioncontact")/*"modversioncontact"*/);
- modversioncontact = new Text(detailsgrp, SWT.BORDER);
- modversioncontact.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- modversioncontact.addListener(SWT.KeyUp, this);
- new Label (detailsgrp, SWT.NONE).setText(XarayaModuleMessages.getString("Xaraya.label.modversionsecurityschema")/*"modversionsecurityschema"*/);
- modversionsecurityschema = new Text(detailsgrp, SWT.BORDER);
- modversionsecurityschema.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- modversionsecurityschema.addListener(SWT.KeyUp, this);
- new Label (detailsgrp, SWT.NONE).setText(XarayaModuleMessages.getString("Xaraya.label.modversionclass")/*"modversionclass"*/);
- modversionclass = new Text(detailsgrp, SWT.BORDER);
- modversionclass.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- modversionclass.addListener(SWT.KeyUp, this);
- new Label (detailsgrp, SWT.NONE).setText(XarayaModuleMessages.getString("Xaraya.label.modversioncategory")/*"modversioncategory"*/);
- modversioncategory = new Text(detailsgrp, SWT.BORDER);
- modversioncategory.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- modversioncategory.addListener(SWT.KeyUp, this);
-
- Composite compo = new Composite(composite, SWT.NONE);
- gl = new GridLayout();
- ncol = 1;
- gl.numColumns = ncol;
- compo.setLayout(gl);
-
- //Group officialgrp = new Group(composite, SWT.NONE);
- Group officialgrp = new Group(compo, SWT.NONE);
- officialgrp.setText(XarayaModuleMessages.getString("Xaraya.label.officialgrp")/*"Module details"*/);
- officialgrp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- officialgrp.setLayout(new GridLayout());
-
- officialButton = new Button(officialgrp, SWT.CHECK);
- officialButton.setText(XarayaModuleMessages.getString("Xaraya.label.official"));
- gd = new GridData(GridData.FILL_HORIZONTAL);
- //gd.horizontalSpan = ncol;
- officialButton.setLayoutData(gd);
- officialButton.setSelection(false);
-
- //Group autoGensgrp = new Group(composite, SWT.NONE);
- Group autoGensgrp = new Group(compo, SWT.NONE);
- autoGensgrp.setText(XarayaModuleMessages.getString("Xaraya.label.autoGensgrp"));
- autoGensgrp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- autoGensgrp.setLayout(new GridLayout());
-
- xarUserApi = new Button(autoGensgrp, SWT.CHECK);
- xarUserApi.setText(XarayaModuleMessages.getString("Xaraya.label.xarUserApi"));
- gd = new GridData(GridData.FILL_HORIZONTAL);
- gd.horizontalSpan = ncol;
- xarUserApi.setLayoutData(gd);
- xarUserApi.setSelection(false);
- xarUserGui = new Button(autoGensgrp, SWT.CHECK);
- xarUserGui.setText(XarayaModuleMessages.getString("Xaraya.label.xarUserGui"));
- gd = new GridData(GridData.FILL_HORIZONTAL);
- gd.horizontalSpan = ncol;
- xarUserGui.setLayoutData(gd);
- xarUserGui.setSelection(false);
- xarAdminApi = new Button(autoGensgrp, SWT.CHECK);
- xarAdminApi.setText(XarayaModuleMessages.getString("Xaraya.label.xarAdminApi"));
- gd = new GridData(GridData.FILL_HORIZONTAL);
- gd.horizontalSpan = ncol;
- xarAdminApi.setLayoutData(gd);
- xarAdminApi.setSelection(false);
- xarAdminGui = new Button(autoGensgrp, SWT.CHECK);
- xarAdminGui.setText(XarayaModuleMessages.getString("Xaraya.label.xarAdminGui"));
- gd = new GridData(GridData.FILL_HORIZONTAL);
- gd.horizontalSpan = ncol;
- xarAdminGui.setLayoutData(gd);
- xarAdminGui.setSelection(false);
-
- // set the composite as the control for this page
- setControl(composite);
- addListeners();
- }
-
- private void addListeners()
- {
- officialButton.addListener(SWT.Selection, this);
- xarUserApi.addListener(SWT.Selection, this);
- xarUserGui.addListener(SWT.Selection, this);
- xarAdminApi.addListener(SWT.Selection, this);
- xarAdminGui.addListener(SWT.Selection, this);
- }
-
- public void handleEvent(Event event) {
- setPageComplete(validatePage());
- }
-
-// public boolean canFlipToNextPage()
-// {
-// if (getErrorMessage() != null) return false;
-// if (isPageComplete() && validatePage()) {
-// saveDataToModel();
-// return true;
-// }
-// return false;
-// }
- public boolean canFinish(){
- if (isPageComplete() /*&& validatePage()*/) {
- saveDataToModel();
- return true;
- }
- return false;
- }
-
-
-
- private boolean validateText(Text input){
- String buf = input.getText();
- if ((buf!=null)
- && (buf.trim().length() >0)) return true;
- else return false;
- }
- public boolean isNumeric(Text input) {
- //there is something in the field to check..
- StringBuffer buf = new StringBuffer(input.getText());
- for (int i=0; i < buf.length(); i++){
- if (!( Character.isDigit(buf.charAt(i)) //is it a number
- || (buf.charAt(i) == '.') //is it a decimal point
- || (buf.charAt(i) == '_'))) //is it an under_score (incase of 1_2)
- return false;
- }
- return true;
- }
-
- private boolean validatePage() {
- StringBuffer buf = new StringBuffer();
- if (!validateText(modversionid)) buf.append("Id field incomplete");
- else if (!isNumeric(modversionid)) buf.append("Id field must be numeric");
- else if (!validateText(modversionversion)) buf.append("Version field incomplete");
- else if (!isNumeric(modversionversion)) buf.append("Version must be numeric");
- else if (!validateText(modversiondescription)) buf.append("Description field incomplete");
- else if (!validateText(modversionauthor)) buf.append("Author field incomplete");
- else if (!validateText(modversioncontact)) buf.append("Contact field incomplete");
- else if (!validateText(modversionsecurityschema)) buf.append("Security schema field incomplete");
- else if (!validateText(modversionclass)) buf.append("Class field incomplete");
- else if (!validateText(modversioncategory)) buf.append("Category field incomplete");
- if (buf.length() == 0) {
- //setErrorMessage("Module ready for creation");
- setErrorMessage(null);
- return true;
- }
- setErrorMessage(buf.toString());
- return false;
- }
-
- public void saveDataToModel()
- {
- XarayaVersionModel.setModversionid(modversionid.getText());
- XarayaVersionModel.setModversionversion(modversionversion.getText());
- XarayaVersionModel.setModversiondescription(modversiondescription.getText());
- XarayaVersionModel.setModversionauthor(modversionauthor.getText());
- XarayaVersionModel.setModversioncontact(modversioncontact.getText());
- XarayaVersionModel.setModversionsecurityschema(modversionsecurityschema.getText());
- XarayaVersionModel.setModversionclass(modversionclass.getText());
- XarayaVersionModel.setModversioncategory(modversioncategory.getText());
- XarayaVersionModel.setUserApi(xarUserApi.getSelection());
- XarayaVersionModel.setUserGui(xarUserGui.getSelection());
- XarayaVersionModel.setAdminApi(xarAdminApi.getSelection());
- XarayaVersionModel.setAdminGui(xarAdminGui.getSelection());
- XarayaVersionModel.setModversionofficial(
- (officialButton.getSelection()) ? "1" : "0");
- XarayaVersionModel.setModversionadmin(
- (xarAdminGui.getSelection()) ? "1" : "0" );
- XarayaVersionModel.setModversionuser(
- (xarUserGui.getSelection()) ? "1" : "0" );
- }
-}
-