package org.droiddraw.gui;
import java.awt.Color;
import java.awt.Cursor;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;
import javax.swing.JPanel;
import org.droiddraw.AndroidEditor;
public class DonatePanel extends JPanel {
private static final long serialVersionUID = 1L;
Image donate;
Dimension d;
public DonatePanel() {
donate = ImageResources.instance().getImage("paypal");
d = new Dimension(200,200);
this.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
String url = null;
int y = e.getY();
if (y >= 60 && y < 90)
url = "https://www.paypal.com/us/cgi-bin/webscr?cmd=_xclick&business=brendan.d.burns@gmail.com&item_name=Support%20DroidDraw¤cy_code=USD";
else if (y >= 110 && y < 130)
url = "http://www.droiddraw.org/tutorial.html";
else if (y >= 160 && y < 180)
url = "http://code.google.com/p/droiddraw/issues/list";
if (url != null)
AndroidEditor.instance().getURLOpener().openURL(url);
}
});
this.addMouseMotionListener(new MouseMotionAdapter() {
@Override
public void mouseMoved(MouseEvent e) {
if (e.getX() >= 20 && e.getX() < 80 && e.getY() >= 60 && e.getY() < 90 ||
e.getX() >= 20 && e.getX() < 300 &&
((e.getY() >= 110 && e.getY() < 130) || (e.getY() >= 160 && e.getY() < 180))) {
setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
}
else {
setCursor(Cursor.getDefaultCursor());
}
}
});
}
@Override
public Dimension getPreferredSize() {
return d;
}
@Override
public Dimension getMinimumSize() {
return d;
}
@Override
public void paint(Graphics g) {
g.setColor(Color.white);
g.fillRect(0, 0, getWidth(), getHeight());
g.setColor(Color.black);
g.drawString("DroidDraw is dependent on user donations to fund development.", 20, 20);
g.drawString("If you find DroidDraw useful, please consider supporting us.", 20, 40);
g.drawImage(donate, 20, 60, null);
g.drawString("Tutorials are also available at:", 20, 110);
//Font f = g.getFont();
//Map<TextAttribute, Object> map = new Hashtable<TextAttribute, Object>();
//map.put(TextAttribute.UNDERLINE, TextAttribute.UNDERLINE_ON);
//Font u = f.deriveFont(map);
//g.setFont(u);
g.drawString("http://www.droiddraw.org/tutorial.html", 20, 130);
g.drawString("Please submit bugs/feature requests to:", 20, 160);
g.drawString("http://code.google.com/p/droiddraw/issues/list", 20, 180);
}
}