Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package fr.wirexy.draconis;
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Image;
- import java.io.File;
- import java.io.IOException;
- import javax.naming.AuthenticationException;
- import javax.swing.JFrame;
- import javax.swing.JLabel;
- import javax.swing.JOptionPane;
- import javax.swing.JPanel;
- import javax.swing.JPasswordField;
- import javax.swing.JTextField;
- import javax.swing.SwingConstants;
- import fr.northenflo.auth.exception.DataEmptyException;
- import fr.northenflo.auth.exception.DataWrongException;
- import fr.theshark34.openlauncherlib.LaunchException;
- import fr.theshark34.openlauncherlib.util.Saver;
- import fr.theshark34.openlauncherlib.util.ramselector.RamSelector;
- import fr.theshark34.swinger.Swinger;
- import fr.theshark34.swinger.colored.SColoredBar;
- import fr.theshark34.swinger.event.SwingerEvent;
- import fr.theshark34.swinger.event.SwingerEventListener;
- import fr.theshark34.swinger.textured.STexturedButton;
- import fr.wirexy.draconis.Frame.LauncherFrame;
- @SuppressWarnings("serial")
- public class Panel extends JPanel implements SwingerEventListener{
- private Image background = Swinger.getResource("background.png");
- private Saver saver = new Saver(new File(Launcher.DU_DIR, "launcher.properties"));
- private JTextField username = new JTextField(saver.get("username"));
- private JPasswordField password = new JPasswordField();
- private STexturedButton playButton = new STexturedButton(Swinger.getResource("playbouton.png"));
- private STexturedButton quitButton = new STexturedButton(Swinger.getResource("closebouton.png"));
- private STexturedButton hideButton = new STexturedButton(Swinger.getResource("reducebouton.png"));
- private STexturedButton ramButton = new STexturedButton(Swinger.getResource("option.png"));
- private SColoredBar progressBar = new SColoredBar(new Color(170, 112, 179, 50).darker());
- private JLabel infoLabel = new JLabel("Clique sur JOUER !", SwingConstants.CENTER);
- private RamSelector ramSelector = new RamSelector(new File(Launcher.DU_DIR, "ram.txt"));
- public Panel() {
- this.setLayout(null);
- username.setBorder(null);
- username.setOpaque(false);
- username.setFont(username.getFont().deriveFont(18F));
- username.setBounds(719, 300, 231, 25);
- this.add(username);
- password.setBorder(null);
- password.setOpaque(false);
- password.setFont(username.getFont());
- password.setBounds(719, 368, 231, 25);
- this.add(password);
- playButton.setBounds(729, 410);
- playButton.addEventListener(this);
- this.add(playButton);
- quitButton.setBounds(930, 10);
- quitButton.addEventListener(this);
- this.add(quitButton);
- hideButton.setBounds(890, 13);
- hideButton.addEventListener(this);
- this.add(hideButton);
- progressBar.setBounds(699, 585, 272, 35);
- this.add(progressBar);
- infoLabel.setForeground(Color.PINK);
- infoLabel.setFont(username.getFont());
- infoLabel.setBounds(660, 560, 354, 25);
- this.add(infoLabel);
- this.ramButton.addEventListener(this);
- this.ramButton.setBounds(729, 490);
- this.add(ramButton);
- }
- @Override
- public void onEvent(SwingerEvent e) {
- if(e.getSource() == playButton) {
- setFieldsEnabled(false);
- if(username.getText().replaceAll(" ", "").length() == 0 || password.getText().length() == 0) {
- JOptionPane.showMessageDialog(this, "Veuillez remplir votre utilisateur et votre mot de passe.", "Erreur", JOptionPane.ERROR_MESSAGE);
- setFieldsEnabled(true);
- return;
- }
- Thread t = new Thread() {
- @Override
- public void run() {
- try {
- Launcher.auth(username.getText(), password.getText());
- } catch (DataEmptyException e) {
- JOptionPane.showMessageDialog(Panel.this, "Connexion impossible : ", "Erreur", JOptionPane.ERROR_MESSAGE);
- setFieldsEnabled(true);
- return;
- }
- saver.set("username", username.getText());
- ramSelector.save();
- try {
- Launcher.update();
- } catch (Exception e) {
- Launcher.interruptThread();
- JOptionPane.showMessageDialog(Panel.this, "Impossible de mettre à jour le launcher ", "Erreur", JOptionPane.ERROR_MESSAGE);
- setFieldsEnabled(true);
- return;
- }
- try {
- Launcher.launch();
- } catch (LaunchException e) {
- Launcher.interruptThread();
- JOptionPane.showMessageDialog(Panel.this, "Impossible de lancer le launcher ", "Erreur", JOptionPane.ERROR_MESSAGE);
- setFieldsEnabled(true);
- }
- }
- };
- t.start();
- } else if(e.getSource() == quitButton)
- System.exit(0);
- else if(e.getSource() == hideButton)
- LauncherFrame.getInstance().setState(JFrame.ICONIFIED);
- else if(e.getSource() == this.ramButton)
- ramSelector.display();
- }
- @Override
- public void paintComponent(Graphics g) {
- super.paintComponents(g);
- g.drawImage(background, 0, 0, this.getWidth(), this.getHeight(), this);
- }
- private void setFieldsEnabled(boolean enabled) {
- username.setEnabled(enabled);
- password.setEnabled(enabled);
- playButton.setEnabled(enabled);
- }
- public SColoredBar getProgressBar() {
- return progressBar;
- }
- public void setInfoText(String text) {
- infoLabel.setText(text);
- }
- public RamSelector getRamSelector() {
- return ramSelector;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement