/* * 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.Icon; import net.atlanticbb.tantlinger.i18n.I18n; import net.atlanticbb.tantlinger.ui.UIUtils; public class ImageDialog 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, "image.png"); //$NON-NLS-1$ private static String title = i18n.str("image"); //$NON-NLS-1$ private static String desc = i18n.str("image_desc"); //$NON-NLS-1$ private ImagePanel imagePanel; public ImageDialog(Frame parent) { super(parent, title, desc, icon); init(); } public ImageDialog(Dialog parent) { super(parent, title, desc, icon); init(); } private void init() { imagePanel = new ImagePanel(); setContentPane(imagePanel); setSize(300, 345); setResizable(false); } public void setImageAttributes(Map attr) { imagePanel.setAttributes(attr); } public Map getImageAttributes() { return imagePanel.getAttributes(); } private String createImgAttributes(Map ht) { String html = ""; //$NON-NLS-1$ for(Iterator e = ht.keySet().iterator(); e.hasNext();) { Object k = e.next(); if(k.toString().equals("a") || k.toString().equals("name")) //$NON-NLS-1$ //$NON-NLS-2$ continue; html += " " + k + "=" + "\"" + ht.get(k) + "\""; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ } return html; } public String getHTML() { Map imgAttr = imagePanel.getAttributes(); boolean hasLink = imgAttr.containsKey("a"); //$NON-NLS-1$ String html = ""; //$NON-NLS-1$ if(hasLink) { html = "<a " + imgAttr.get("a") + ">"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ } html += "<img" + createImgAttributes(imgAttr) + ">"; //$NON-NLS-1$ //$NON-NLS-2$ if(hasLink) html += "</a>"; //$NON-NLS-1$ return html; } }