1 19 20 package com.izforge.izpack.panels; 21 22 import java.net.URL ; 23 24 import javax.swing.JEditorPane ; 25 import javax.swing.JScrollPane ; 26 import javax.swing.event.HyperlinkEvent ; 27 import javax.swing.event.HyperlinkListener ; 28 29 import com.izforge.izpack.gui.IzPanelLayout; 30 import com.izforge.izpack.gui.LabelFactory; 31 import com.izforge.izpack.installer.InstallData; 32 import com.izforge.izpack.installer.InstallerFrame; 33 import com.izforge.izpack.installer.IzPanel; 34 import com.izforge.izpack.installer.ResourceManager; 35 36 41 public class HTMLInfoPanel extends IzPanel implements HyperlinkListener 42 { 43 44 private static final long serialVersionUID = 3257008769514025270L; 45 46 47 private JEditorPane textArea; 48 49 55 public HTMLInfoPanel(InstallerFrame parent, InstallData idata) 56 { 57 super(parent, idata,new IzPanelLayout()); 58 60 add(LabelFactory.create(parent.langpack.getString("InfoPanel.info"), parent.icons 61 .getImageIcon("edit"), LEADING), NEXT_LINE); 62 try 63 { 64 textArea = new JEditorPane (); 65 textArea.setEditable(false); 66 textArea.addHyperlinkListener(this); 67 JScrollPane scroller = new JScrollPane (textArea); 68 textArea.setPage(loadInfo()); 69 add(scroller, NEXT_LINE); 70 } 71 catch (Exception err) 72 { 73 err.printStackTrace(); 74 } 75 getLayoutHelper().completeLayout(); 76 } 77 78 83 private URL loadInfo() 84 { 85 String resNamePrifix = "HTMLInfoPanel.info"; 86 try 87 { 88 return ResourceManager.getInstance().getURL(resNamePrifix); 89 } 90 catch (Exception ex) 91 { 92 ex.printStackTrace(); 93 } 94 return null; 95 } 96 97 102 public boolean isValidated() 103 { 104 return true; 105 } 106 107 112 public void hyperlinkUpdate(HyperlinkEvent e) 113 { 114 try 115 { 116 if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) 117 textArea.setPage(e.getURL()); 118 } 119 catch (Exception err) 120 { 121 } 123 } 124 } 125 | Popular Tags |