blob: 8300bb20ddf226c3ef50b48f4048964c885af950 [file] [log] [blame]
//------------------------------------------------------------------------------
// Copyright (c) 2005, 2007 IBM Corporation and others.
// All rights reserved. This program and the accompanying materials
// are made available under the terms of the Eclipse Public License v1.0
// which accompanies this distribution, and is available at
// http://www.eclipse.org/legal/epl-v10.html
//
// Contributors:
// IBM Corporation - initial implementation
//------------------------------------------------------------------------------
package org.eclipse.epf.authoring.ui.editors;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.epf.authoring.ui.richtext.IMethodRichText;
import org.eclipse.epf.authoring.ui.richtext.RichTextContentValidator;
import org.eclipse.epf.library.util.ResourceHelper;
import org.eclipse.epf.richtext.RichText;
import org.eclipse.epf.uma.MethodElement;
import org.eclipse.swt.widgets.Composite;
/**
* A Method Editor Rich Text control.
*
* @author Kelvin Low
* @author Jeff Hardy
* @since 1.0
*/
public class MethodRichText extends RichText implements IMethodRichText {
// The method element associated with this rich text control.
private MethodElement methodElement;
// The modal object associated with this rich text control.
private EObject modalObject;
// The modal object feature associated with this rich text control.
private EStructuralFeature modalObjectFeature;
/**
* Creates a new instance.
*
* @param parent
* The parent control.
* @param style
* The initial style for the editor.
* @param basePath
* The base path used for resolving hrefs.
*/
public MethodRichText(Composite parent, int style, String basePath,
MethodElement methodElement) {
super(parent, style, basePath);
this.methodElement = methodElement;
}
/**
* Updates the presentation names of all element links.
*
* @param text
* Rich text encoded in HTML format.
*/
protected String tidyText(String text) {
return ResourceHelper.validateRichTextContent(methodElement, text,
new RichTextContentValidator());
}
/**
* Sets the method element associated with this rich text control.
*
* @param methodElement
*/
public void setMethodElement(MethodElement methodElement) {
this.methodElement = methodElement;
}
/**
* Returns the method element associated with this rich text control.
*/
public MethodElement getMethodElement() {
return methodElement;
}
/**
* Returns the modal object associated with this rich text control.
*/
public EObject getModalObject() {
return modalObject;
}
/**
* Sets the modal object associated with this rich text control.
*/
public void setModalObject(EObject modalObject) {
this.modalObject = modalObject;
}
/**
* Returns modal object feature associated with this rich text control.
*/
public EStructuralFeature getModalObjectFeature() {
return modalObjectFeature;
}
/**
* Sets the modal object feature associated with this rich text control.
*/
public void setModalObjectFeature(EStructuralFeature modalObjectFeature) {
this.modalObjectFeature = modalObjectFeature;
}
}