HtmlEditor.java :  » Scripting » echo3ext20 » org » sgodden » echo » ext20 » Java Open Source

Java Open Source » Scripting » echo3ext20 
echo3ext20 » org » sgodden » echo » ext20 » HtmlEditor.java
/* =================================================================
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
#
# ================================================================= */
package org.sgodden.echo.ext20;


/**
 * A html editor field.
 * <p/>
 * TODO - listeners on value change
 * <p/>
 * NOTE - this ext component does not seem to work too well across browsers.  Look at
 * implementing a TinyMCE component instead.
 * 
 * @author simon
 *
 */
@SuppressWarnings({"serial"})
public class HtmlEditor 
        extends ExtComponent {
    
    public static final String PROPERTY_FIELD_LABEL = "fieldLabel";
    public static final String PROPERTY_TEXT_CHANGED = "text";
    
    /**
     * Creates a new empty html editor.
     */
    public HtmlEditor() {
        super();
    }
    
    /**
     * Creates a new html editor with the passed HTML.
     * @param text the html content for the editor.
     */
    public HtmlEditor(String text) {
        setText(text);
    }
    
    /**
     * Returns the field label.
     * @return the field label.
     */
    public String getFieldLabel() {
        return (String) get(PROPERTY_FIELD_LABEL);
    }

    /**
     * Sets the field label to be used in forms.
     * @param fieldLabel the field label to be used in forms.
     */
    public void setFieldLabel(String fieldLabel) {
        set(PROPERTY_FIELD_LABEL, fieldLabel);
    }
    
    /**
     * Sets the HTML content.
     * @param text the html content.
     */
    public void setText(String text) {
        set(PROPERTY_TEXT_CHANGED, text);
    }
    
    /**
     * Returns the HTML content.
     * @return the HTML content.
     */
    public String getText() {
        return (String) get(PROPERTY_TEXT_CHANGED);
    }

    @Override
    public void processInput(String inputName, Object inputValue) {
        if (PROPERTY_TEXT_CHANGED.equals(inputName)) {
            setText((String)inputValue);
        }
    }

}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.