package org.bbssh.ui.components;
import net.rim.blackberry.api.browser.Browser;
import net.rim.device.api.ui.Color;
import net.rim.device.api.ui.ContextMenu;
import net.rim.device.api.ui.Graphics;
import net.rim.device.api.ui.MenuItem;
import net.rim.device.api.ui.component.LabelField;
import org.bbssh.i18n.BBSSHResource;
import org.bbssh.util.Tools;
/**
* Simple class for displaying hyperlink fields.
* @author marc
*
*/
public class HyperlinkField extends LabelField {
private String url;
private MenuItem itemLink;
public HyperlinkField(int labelId, long style, int urlId) {
super(Tools.getStringResource(labelId), style | FOCUSABLE);
// setFont(Font.getDefault().getFontFamily().getFont(FontFamily.SCALABLE_FONT, 10));
url = Tools.getStringResource(urlId);
itemLink = new MenuItem(Tools.getStringResource(BBSSHResource.URLLIST_MENU_OPEN_BROWSER), 0x100000, 0) {
public void run() {
// invoke browser with URL
Browser.getDefaultSession().displayPage(url);
}
};
}
protected void paint(Graphics graphics) {
graphics.setColor(Color.BLUE);
super.paint(graphics);
}
protected void makeContextMenu(ContextMenu menu) {
super.makeContextMenu(menu);
if (menu != null) {
menu.addItem(itemLink);
menu.setDefaultItem(itemLink);
}
}
}