package com.dedupeer.gui;
import java.awt.Image;
import java.awt.Toolkit;
import java.io.IOException;
import java.net.URL;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;
import org.pushingpixels.substance.api.SubstanceLookAndFeel;
import org.pushingpixels.substance.api.skin.OfficeSilver2007Skin;
import com.dedupeer.gui.component.panel.MainPanel;
/**
* @author Paulo Fernando (pf@paulofernando.net.br)
*/
public class MainGUI extends JFrame {
private static final long serialVersionUID = -1169498996174977654L;
private final int width = 500;
private final int height = 500;
public MainGUI() {
this.setTitle("Dedupeer File Storage");
Toolkit kit = Toolkit.getDefaultToolkit();
URL resource = getClass().getResource("/images/logo.png");
Image img = kit.createImage(resource);
this.setIconImage(img);
setup();
add(new MainPanel(this));
pack();
this.setVisible(true);
}
private void setup() {
lookAndFeel();
this.setSize(width, height);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
setLocation((Toolkit.getDefaultToolkit().getScreenSize().width - this.getSize().width)>>1,
(Toolkit.getDefaultToolkit().getScreenSize().height - this.getSize().height)>>1);
}
/** Sets up the look and feel to the application */
private void lookAndFeel() {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
try {
JFrame.setDefaultLookAndFeelDecorated(true);
//UIManager.setLookAndFeel("org.pushingpixels.substance.api.skin.SubstanceGraphiteLookAndFeel");
SubstanceLookAndFeel.setSkin(new OfficeSilver2007Skin());
SwingUtilities.updateComponentTreeUI(getRootPane());
} catch (Exception e) {
System.out.println("Substance failed to initialize");
}
}
});
}
}