package com.dasatti.uhtml;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.text.*;
import javax.swing.text.html.*;
public class UMasterPreviewDocument extends UMasterAbstractDocument
{
JTextPane m_previewDocument;
DefaultStyledDocument m_styledDoc;
JScrollPane m_sPane;
java.net.URL testURL;
UMasterPreviewDocument()
{
setLayout(new BorderLayout());
//m_previewStyledDocument=new DefaultStyledDocument();
m_styledDoc=new DefaultStyledDocument();
m_previewDocument=new JTextPane(m_styledDoc);
m_previewDocument.setContentType("text/html");
//_setPage("test.html");
m_previewDocument.setEditable(false);
/*
FocusListener fl=new FocusListener()
{
public void focusGained(FocusEvent fe)
{
_updateLocalDoc();
}
public void focusLost(FocusEvent fe)
{
_updateCurrentDoc();
}
};
m_previewDocument.addFocusListener(fl);
*/
m_previewDocument. addHyperlinkListener(
new HyperlinkListener()
{
public void hyperlinkUpdate(HyperlinkEvent e)
{
if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED)
{
JEditorPane pane = (JEditorPane) e.getSource();
if (e instanceof HTMLFrameHyperlinkEvent)
{
HTMLFrameHyperlinkEvent evt = (HTMLFrameHyperlinkEvent)e;
HTMLDocument doc = (HTMLDocument)pane.getDocument();
doc.processHTMLFrameHyperlinkEvent(evt);
}
else
{
try
{
pane.setPage(e.getURL());
}
catch (Throwable t)
{
t.printStackTrace();
}
}
}
}
}
);
m_sPane=new JScrollPane(m_previewDocument);
add(m_sPane);
}
/***************************
PUBLIC METHODS
***************************/
public void _setPage(String _path)
{
java.net.URL testURL = UMasterPreviewDocument.class.getResource(_path);
try
{
m_previewDocument.setPage(testURL);
}
catch(Exception e)
{
JOptionPane.showMessageDialog(m_previewDocument,"File could not be opened", "File Open Error",JOptionPane.ERROR_MESSAGE);
}
}
public void _updateCurrentDoc()
{
}
public void _updateLocalDoc()
{
}
}
/*
class Hyperactive implements HyperlinkListener {
public void hyperlinkUpdate(HyperlinkEvent e) {
if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
JEditorPane pane = (JEditorPane) e.getSource();
if (e instanceof HTMLFrameHyperlinkEvent) {
HTMLFrameHyperlinkEvent evt = (HTMLFrameHyperlinkEvent)e;
HTMLDocument doc = (HTMLDocument)pane.getDocument();
doc.processHTMLFrameHyperlinkEvent(evt);
} else {
try {
pane.setPage(e.getURL());
} catch (Throwable t) {
t.printStackTrace();
}
}
}
}
}
*/