[jboss-svn-commits] JBL Code SVN: r9636 - labs/jbossrules/trunk/drools-testing-plugin/src/org/drools/testing/plugin/editors.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Feb 20 07:35:19 EST 2007


Author: mshaw
Date: 2007-02-20 07:35:19 -0500 (Tue, 20 Feb 2007)
New Revision: 9636

Removed:
   labs/jbossrules/trunk/drools-testing-plugin/src/org/drools/testing/plugin/editors/RTLEditor.java
Modified:
   labs/jbossrules/trunk/drools-testing-plugin/src/org/drools/testing/plugin/editors/RtlFormEditor.java
Log:


Deleted: labs/jbossrules/trunk/drools-testing-plugin/src/org/drools/testing/plugin/editors/RTLEditor.java
===================================================================
--- labs/jbossrules/trunk/drools-testing-plugin/src/org/drools/testing/plugin/editors/RTLEditor.java	2007-02-20 12:08:23 UTC (rev 9635)
+++ labs/jbossrules/trunk/drools-testing-plugin/src/org/drools/testing/plugin/editors/RTLEditor.java	2007-02-20 12:35:19 UTC (rev 9636)
@@ -1,244 +0,0 @@
-package org.drools.testing.plugin.editors;
-
-
-import java.io.StringWriter;
-import java.text.Collator;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.layout.FillLayout;
-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.Display;
-import org.eclipse.swt.widgets.FontDialog;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.editors.text.TextEditor;
-import org.eclipse.ui.ide.IDE;
-import org.eclipse.ui.part.FileEditorInput;
-import org.eclipse.ui.part.MultiPageEditorPart;
-
-/**
- * An example showing how to create a multi-page editor.
- * This example has 3 pages:
- * <ul>
- * <li>page 0 contains a nested text editor.
- * <li>page 1 allows you to change the font used in page 2
- * <li>page 2 shows the words in page 0 in sorted order
- * </ul>
- */
-public class RTLEditor extends MultiPageEditorPart implements IResourceChangeListener{
-
-	/** The text editor used in page 0. */
-	private TextEditor editor;
-
-	/** The font chosen in page 1. */
-	private Font font;
-
-	/** The text widget used in page 2. */
-	private StyledText text;
-	/**
-	 * Creates a multi-page editor example.
-	 */
-	public RTLEditor() {
-		super();
-		ResourcesPlugin.getWorkspace().addResourceChangeListener(this);
-	}
-	/**
-	 * Creates page 0 of the multi-page editor,
-	 * which contains a text editor.
-	 */
-	void createPage0() {
-		try {
-			editor = new TextEditor();
-			int index = addPage(editor, getEditorInput());
-		} catch (PartInitException e) {
-			ErrorDialog.openError(
-				getSite().getShell(),
-				"Error creating nested text editor",
-				null,
-				e.getStatus());
-		}
-	}
-	/**
-	 * Creates page 1 of the multi-page editor,
-	 * which allows you to change the font used in page 2.
-	 */
-	void createPage1() {
-		
-		Composite composite = new Composite(getContainer(), SWT.NONE);
-		GridLayout layout = new GridLayout();
-		composite.setLayout(layout);
-		layout.numColumns = 2;
-		
-		Button fontButton = new Button(composite, SWT.NONE);
-		GridData gd = new GridData(GridData.BEGINNING);
-		gd.horizontalSpan = 2;
-		fontButton.setLayoutData(gd);
-		fontButton.setText("Change Font...");
-		
-		fontButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent event) {
-				setFont();
-			}
-		});
-
-		int index = addPage(composite);
-		setPageText(index, "Properties");
-	}
-	/**
-	 * Creates page 2 of the multi-page editor,
-	 * which shows the sorted text.
-	 */
-	void createPage2() {
-		Composite composite = new Composite(getContainer(), SWT.NONE);
-		FillLayout layout = new FillLayout();
-		composite.setLayout(layout);
-		text = new StyledText(composite, SWT.H_SCROLL | SWT.V_SCROLL);
-		text.setEditable(false);
-
-		int index = addPage(composite);
-		setPageText(index, "Preview");
-	}
-	/**
-	 * Creates the pages of the multi-page editor.
-	 */
-	protected void createPages() {
-		createPage0();
-		createPage1();
-		createPage2();
-	}
-	/**
-	 * The <code>MultiPageEditorPart</code> implementation of this 
-	 * <code>IWorkbenchPart</code> method disposes all nested editors.
-	 * Subclasses may extend.
-	 */
-	public void dispose() {
-		ResourcesPlugin.getWorkspace().removeResourceChangeListener(this);
-		super.dispose();
-	}
-	/**
-	 * Saves the multi-page editor's document.
-	 */
-	public void doSave(IProgressMonitor monitor) {
-		getEditor(0).doSave(monitor);
-	}
-	/**
-	 * Saves the multi-page editor's document as another file.
-	 * Also updates the text for page 0's tab, and updates this multi-page editor's input
-	 * to correspond to the nested editor's.
-	 */
-	public void doSaveAs() {
-		IEditorPart editor = getEditor(0);
-		editor.doSaveAs();
-		setPageText(0, editor.getTitle());
-		setInput(editor.getEditorInput());
-	}
-	/* (non-Javadoc)
-	 * Method declared on IEditorPart
-	 */
-	public void gotoMarker(IMarker marker) {
-		setActivePage(0);
-		IDE.gotoMarker(getEditor(0), marker);
-	}
-	/**
-	 * The <code>MultiPageEditorExample</code> implementation of this method
-	 * checks that the input is an instance of <code>IFileEditorInput</code>.
-	 */
-	public void init(IEditorSite site, IEditorInput editorInput)
-		throws PartInitException {
-		if (!(editorInput instanceof IFileEditorInput))
-			throw new PartInitException("Invalid Input: Must be IFileEditorInput");
-		super.init(site, editorInput);
-	}
-	/* (non-Javadoc)
-	 * Method declared on IEditorPart.
-	 */
-	public boolean isSaveAsAllowed() {
-		return true;
-	}
-	/**
-	 * Calculates the contents of page 2 when the it is activated.
-	 */
-	protected void pageChange(int newPageIndex) {
-		super.pageChange(newPageIndex);
-		if (newPageIndex == 2) {
-			sortWords();
-		}
-	}
-	/**
-	 * Closes all project files on project close.
-	 */
-	public void resourceChanged(final IResourceChangeEvent event){
-		if(event.getType() == IResourceChangeEvent.PRE_CLOSE){
-			Display.getDefault().asyncExec(new Runnable(){
-				public void run(){
-					IWorkbenchPage[] pages = getSite().getWorkbenchWindow().getPages();
-					for (int i = 0; i<pages.length; i++){
-						if(((FileEditorInput)editor.getEditorInput()).getFile().getProject().equals(event.getResource())){
-							IEditorPart editorPart = pages[i].findEditor(editor.getEditorInput());
-							pages[i].closeEditor(editorPart,true);
-						}
-					}
-				}            
-			});
-		}
-	}
-	/**
-	 * Sets the font related data to be applied to the text in page 2.
-	 */
-	void setFont() {
-		FontDialog fontDialog = new FontDialog(getSite().getShell());
-		fontDialog.setFontList(text.getFont().getFontData());
-		FontData fontData = fontDialog.open();
-		if (fontData != null) {
-			if (font != null)
-				font.dispose();
-			font = new Font(text.getDisplay(), fontData);
-			text.setFont(font);
-		}
-	}
-	/**
-	 * Sorts the words in page 0, and shows them in page 2.
-	 */
-	void sortWords() {
-
-		String editorText =
-			editor.getDocumentProvider().getDocument(editor.getEditorInput()).get();
-
-		StringTokenizer tokenizer =
-			new StringTokenizer(editorText, " \t\n\r\f!@#\u0024%^&*()-_=+`~[]{};:'\",.<>/?|\\");
-		ArrayList editorWords = new ArrayList();
-		while (tokenizer.hasMoreTokens()) {
-			editorWords.add(tokenizer.nextToken());
-		}
-
-		Collections.sort(editorWords, Collator.getInstance());
-		StringWriter displayText = new StringWriter();
-		for (int i = 0; i < editorWords.size(); i++) {
-			displayText.write(((String) editorWords.get(i)));
-			displayText.write(System.getProperty("line.separator"));
-		}
-		text.setText(displayText.toString());
-	}
-	
-}

Modified: labs/jbossrules/trunk/drools-testing-plugin/src/org/drools/testing/plugin/editors/RtlFormEditor.java
===================================================================
--- labs/jbossrules/trunk/drools-testing-plugin/src/org/drools/testing/plugin/editors/RtlFormEditor.java	2007-02-20 12:08:23 UTC (rev 9635)
+++ labs/jbossrules/trunk/drools-testing-plugin/src/org/drools/testing/plugin/editors/RtlFormEditor.java	2007-02-20 12:35:19 UTC (rev 9636)
@@ -1,11 +1,9 @@
 package org.drools.testing.plugin.editors;
 
-import java.io.BufferedReader;
-import java.io.FileReader;
-
 import org.drools.testing.core.beans.TestSuite;
 import org.drools.testing.plugin.forms.InputForm;
 import org.drools.testing.plugin.forms.MasterDetailsPage;
+import org.drools.testing.plugin.utils.LoadModel;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.jface.dialogs.MessageDialog;
 import org.eclipse.swt.widgets.Display;
@@ -15,11 +13,11 @@
 import org.eclipse.ui.forms.editor.FormEditor;
 import org.eclipse.ui.forms.widgets.FormToolkit;
 import org.eclipse.ui.part.FileEditorInput;
-import org.exolab.castor.xml.Unmarshaller;
 
 public class RtlFormEditor extends FormEditor {
 
 	private TestSuite testSuite;
+	private TextEditor textEditor;
 	
 	public RtlFormEditor() {
 		
@@ -33,8 +31,8 @@
 	protected void addPages() {
 		initialiseModel();
 		try {
-			TextEditor editor = new TextEditor();
-			int index = addPage(editor, getEditorInput());
+			textEditor = new TextEditor();
+			int index = addPage(textEditor, getEditorInput());
 			setPageText(index, EditorConstants.EditorPageTitles.TITLE_FREE_FORM);
 			addPage(new MasterDetailsPage(this));
 			addPage(new InputForm(this));
@@ -60,10 +58,7 @@
 	
 	private void initialiseModel () {
 		try {
-			FileEditorInput fileEditorInput = ((FileEditorInput)getEditorInput());
-			BufferedReader br = new BufferedReader(new FileReader(fileEditorInput.getFile().getName()));
-			Unmarshaller unmarshaller = new Unmarshaller(TestSuite.class);
-			testSuite = (TestSuite) unmarshaller.unmarshal(br);
+			LoadModel.loadTestSuite((FileEditorInput)getEditorInput());
 		}catch (Exception e) {	
 			MessageDialog.openError(this.getSite().getShell(), "Error", e.getMessage());
 		}
@@ -76,5 +71,13 @@
 	public void setTestSuite(TestSuite testSuite) {
 		this.testSuite = testSuite;
 	}
+
+	public TextEditor getTextEditor() {
+		return textEditor;
+	}
+
+	public void setTextEditor(TextEditor textEditor) {
+		this.textEditor = textEditor;
+	}
 	
 }




More information about the jboss-svn-commits mailing list