package hueimmersive;
import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.Font;
import javax.swing.SwingConstants;
import javax.swing.JButton;
import java.awt.Desktop;
import java.awt.Toolkit;
import java.net.URI;
import javax.swing.JTextPane;
import javax.swing.event.HyperlinkListener;
import javax.swing.event.HyperlinkEvent;
import javax.swing.JScrollPane;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.Cursor;
import java.awt.Color;
public class AboutInterface
{
private JFrame frame;
public AboutInterface()
{
Main.ui.setEnabled(false);
initialize();
}
private void initialize()
{
frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.setTitle("about");
frame.setResizable(false);
frame.setBounds(100, 100, 504, 343);
frame.getContentPane().setLayout(null);
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent arg0)
{
Main.ui.setEnabled(true);
}
});
int screenWidth = Toolkit.getDefaultToolkit().getScreenSize().width;
int screenHeight = Toolkit.getDefaultToolkit().getScreenSize().height;
frame.setLocation(screenWidth / 2 - frame.getSize().width / 2, screenHeight / 2 - frame.getSize().height / 2);
JButton button_Close = new JButton("close");
button_Close.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0)
{
frame.dispatchEvent(new WindowEvent(frame, WindowEvent.WINDOW_CLOSING));
frame.dispose();
}
});
button_Close.setBounds(381, 281, 107, 24);
frame.getContentPane().add(button_Close);
JLabel lblHueimmersive = new JLabel("HueImmersive");
lblHueimmersive.setVerticalAlignment(SwingConstants.TOP);
lblHueimmersive.setHorizontalAlignment(SwingConstants.CENTER);
lblHueimmersive.setFont(new Font("Tahoma", Font.PLAIN, 26));
lblHueimmersive.setBounds(10, 9, 478, 32);
frame.getContentPane().add(lblHueimmersive);
JLabel label_Version = new JLabel("v" + String.valueOf(Main.version));
label_Version.setFont(new Font("Tahoma", Font.PLAIN, 12));
label_Version.setHorizontalAlignment(SwingConstants.CENTER);
label_Version.setBounds(10, 44, 478, 14);
frame.getContentPane().add(label_Version);
JScrollPane scrollpane_About = new JScrollPane();
scrollpane_About.setCursor(Cursor.getPredefinedCursor(Cursor.TEXT_CURSOR));
scrollpane_About.setBounds(10, 67, 478, 203);
frame.getContentPane().add(scrollpane_About);
JTextPane txtpnHueImmersiveIs = new JTextPane();
txtpnHueImmersiveIs.setFocusable(false);
scrollpane_About.setViewportView(txtpnHueImmersiveIs);
txtpnHueImmersiveIs.addHyperlinkListener(new HyperlinkListener() {
public void hyperlinkUpdate(HyperlinkEvent he)
{
if(he.getEventType() == HyperlinkEvent.EventType.ACTIVATED)
{
try
{
if (he.getDescription().indexOf("@") != -1)
{
Desktop.getDesktop().mail(new URI("mailto:" + he.getDescription()));
}
else
{
Desktop.getDesktop().browse(he.getURL().toURI());
}
} catch (Exception e)
{
Debug.exception(e);
}
}
}
});
txtpnHueImmersiveIs.setBackground(new Color(204, 204, 204));
txtpnHueImmersiveIs.setEditable(false);
txtpnHueImmersiveIs.setContentType("text/html");
txtpnHueImmersiveIs.setText("<font style=\"font-family: Tahoma; font-size:13\">\r\n\r\nHue Immersive is a program written and developed by Jannik Szwaczka (Blodjer).<br>\r\nIf you need support or have suggestions/feedback please send me an email or write it in the reddit comments. You can also create an issue on GitHub.<br>\r\n<p>\r\nGitHub: <a href='https://github.com/Blodjer/HueImmersive'>https://github.com/Blodjer/HueImmersive</a><br>\r\nReddit: <a href='http://redd.it/2e3vq9'>http://redd.it/2e3vq9</a><br>\r\nEmail: <a href='blodjer@live.de'>blodjer@live.de</a><br>\r\n</p><br>\r\n\r\n<b>\r\nIf you you want to support me with a donation: <a href='https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=BVVY8L9TTPQFJ'>Thank You!</a>\r\n</b>\r\n\r\n<p align=\"center\">\r\nCopyright (c) 2014 Jannik Szwaczka <br>\r\n<a href='https://github.com/Blodjer/HueImmersive/blob/master/LICENSE'>License</a>\r\n</p>\r\n\r\n</font>");
frame.setVisible(true);
}
}