Package flow.netbeans.markdown.preview

Source Code of flow.netbeans.markdown.preview.AbstractHtmlView

package flow.netbeans.markdown.preview;

import java.beans.PropertyChangeListener;
import java.beans.PropertyChangeSupport;
import java.net.MalformedURLException;
import java.net.URL;
import javax.swing.event.SwingPropertyChangeSupport;
import org.netbeans.api.annotations.common.CheckForNull;
import org.openide.awt.HtmlBrowser;

/**
*
* @author Holger Stenger
*/
public abstract class AbstractHtmlView implements HtmlView {
    private final PropertyChangeSupport pcs;

    private String statusMessage;

    public AbstractHtmlView() {
        pcs = new SwingPropertyChangeSupport(this, true);
        statusMessage = null;
    }

    public void addPropertyChangeListener(PropertyChangeListener listener) {
        pcs.addPropertyChangeListener(listener);
    }

    public void removePropertyChangeListener(PropertyChangeListener listener) {
        pcs.removePropertyChangeListener(listener);
    }

    @Override
    @CheckForNull
    public String getStatusMessage() {
        return statusMessage;
    }

    protected void setStatusMessage(final String newValue) {
        final String oldValue = statusMessage;
        statusMessage = newValue;
        firePropertyChange(PROP_STATUS_MESSAGE, oldValue, newValue);
    }

    protected void firePropertyChange(final String propertyName, final Object oldValue, final Object newValue) {
        pcs.firePropertyChange(propertyName, oldValue, newValue);
    }

    protected void showURLExternal(final URL url) {
        HtmlBrowser.URLDisplayer.getDefault().showURLExternal(url);
    }

    protected void showURLExternal(final String url) {
        try {
            showURLExternal(new URL(url));
        }
        catch (MalformedURLException ex) {
            //Exceptions.printStackTrace(ex);
        }
    }
}
TOP

Related Classes of flow.netbeans.markdown.preview.AbstractHtmlView

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.