[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