/*
* Created on Jan 14, 2006
*
*/
package net.atlanticbb.tantlinger.ui.text.dialogs;
import java.awt.Dialog;
import java.awt.Frame;
import java.util.Iterator;
import java.util.Map;
import javax.swing.BorderFactory;
import javax.swing.Icon;
import net.atlanticbb.tantlinger.i18n.I18n;
import net.atlanticbb.tantlinger.ui.UIUtils;
public class HyperlinkDialog extends HTMLOptionDialog
{
/**
*
*/
private static final long serialVersionUID = 1L;
private static final I18n i18n = I18n.getInstance("net.atlanticbb.tantlinger.ui.text.dialogs");
private static Icon icon = UIUtils.getIcon(UIUtils.X48, "link.png"); //$NON-NLS-1$
private static String title = i18n.str("hyperlink"); //$NON-NLS-1$
private static String desc = i18n.str("hyperlink_desc"); //$NON-NLS-1$
private LinkPanel linkPanel;
public HyperlinkDialog(Frame parent)
{
this(parent, title, desc, icon, true);
}
public HyperlinkDialog(Dialog parent)
{
this(parent, title, desc, icon, true);
}
public HyperlinkDialog(Dialog parent, String title, String desc, Icon ico, boolean urlFieldEnabled)
{
super(parent, title, desc, ico);
init(urlFieldEnabled);
}
public HyperlinkDialog(Frame parent, String title, String desc, Icon ico, boolean urlFieldEnabled)
{
super(parent, title, desc, ico);
init(urlFieldEnabled);
}
private void init(boolean urlFieldEnabled)
{
linkPanel = new LinkPanel(urlFieldEnabled);
linkPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
setContentPane(linkPanel);
setSize(315, 370);
setResizable(false);
}
public Map getAttributes()
{
return linkPanel.getAttributes();
}
public void setAttributes(Map attribs)
{
linkPanel.setAttributes(attribs);
}
public void setLinkText(String text)
{
linkPanel.setLinkText(text);
}
public String getLinkText()
{
return linkPanel.getLinkText();
}
public String getHTML()
{
String html = "<a"; //$NON-NLS-1$
Map ht = getAttributes();
for(Iterator e = ht.keySet().iterator(); e.hasNext();)
{
Object k = e.next();
html += " " + k + "=" + "\"" + ht.get(k) + "\""; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
}
html += ">" + getLinkText() + "</a>"; //$NON-NLS-1$ //$NON-NLS-2$
return html;
}
}