Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package fr.xenos5077.launcher;
- import fr.theshark34.openauth.AuthenticationException;
- import fr.theshark34.openlauncherlib.launcher.util.UsernameSaver;
- 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 javax.swing.*;
- import java.awt.*;
- import java.io.IOException;
- @SuppressWarnings("serial")
- public class LauncherPanel extends JPanel implements SwingerEventListener {
- private Image image = Swinger.getResource("Launcher.png");
- private UsernameSaver usernameSaver = new UsernameSaver(Main.FV_INFOS);
- private JTextField usernameField = new JTextField(usernameSaver.getUsername(""));
- private JPasswordField passwordField = new JPasswordField();
- private STexturedButton playButton = new STexturedButton(Swinger.getResource("connexion.png"));
- private STexturedButton reduceButton = new STexturedButton(Swinger.getResource("-.png"));
- private STexturedButton closeButton = new STexturedButton(Swinger.getResource("x.png"));
- private SColoredBar progressbar = new SColoredBar(Swinger.getTransparentWhite(100), Swinger.getTransparentWhite(175));
- private JLabel jLabel = new JLabel("Venez jouer! Cliquez sur Connexion");
- public LauncherPanel(){
- this.setLayout(null);
- //Username field
- usernameField.setCaretColor(Color.GRAY);
- usernameField.setForeground(Color.DARK_GRAY);
- usernameField.setFont(usernameField.getFont().deriveFont(20F));
- usernameField.setOpaque(false);
- usernameField.setBorder(null);
- usernameField.setBounds(438, 330, 370, 27);
- this.add(usernameField);
- //Password field
- passwordField.setForeground(Color.DARK_GRAY);
- passwordField.setFont(usernameField.getFont());
- passwordField.setCaretColor(Color.GRAY);
- passwordField.setOpaque(false);
- passwordField.setBorder(null);
- passwordField.setBounds(438, 455, 400, 27);
- this.add(passwordField);
- playButton.setBounds(808, 545);
- playButton.addEventListener(this);
- this.add(playButton);
- reduceButton.setBounds(900, 9);
- reduceButton.addEventListener(this);
- this.add(reduceButton);
- closeButton.setBounds(925, 9);
- closeButton.addEventListener(this);
- this.add(closeButton);
- progressbar.setBounds(0, 598, 350, 27);
- this.add(progressbar);
- jLabel.setForeground(Color.LIGHT_GRAY);
- jLabel.setFont(usernameField.getFont());
- jLabel.setBounds(0, 576, 350, 25);
- this.add(jLabel);
- }
- @Override
- public void onEvent(SwingerEvent event){
- if(event.getSource() == playButton){
- setFieldOn(false);
- if(usernameField.getText().replaceAll(" ", "").length() == 0 || passwordField.getText().length() == 0){
- JOptionPane.showMessageDialog(this, "Veuillez rentrer de correct informations", "Erreur", JOptionPane.ERROR_MESSAGE);
- setFieldOn(true);
- return;
- }
- Thread thread = new Thread(){
- @Override
- public void run(){
- try{
- Main.auth(usernameField.getText(), passwordField.getText());
- }catch (AuthenticationException exception){
- JOptionPane.showMessageDialog(LauncherPanel.this, "Impossible de se conneceter " + exception.getErrorModel().getErrorMessage(), "Erreur", JOptionPane.ERROR_MESSAGE);
- setFieldOn(true);
- return;
- }
- try{
- Main.update();
- }catch(Exception exc){
- Main.interupthread();
- JOptionPane.showMessageDialog(LauncherPanel.this, "Impossible de mettre le jeux à jour " + exc, "Erreur", JOptionPane.ERROR_MESSAGE);
- setFieldOn(true);
- return;
- }
- try{
- Main.Launch();
- }catch(IOException exc){
- JOptionPane.showMessageDialog(LauncherPanel.this, "Impossible de lancer le jeu" + exc, "Erreur", JOptionPane.ERROR_MESSAGE);
- setFieldOn(true);
- }
- }
- };
- thread.start();
- }else if(event.getSource() == closeButton)
- System.exit(0);
- else if(event.getSource() == reduceButton)
- LauncherFrame.getInstance().setState(JFrame.ICONIFIED);
- }
- @Override
- public void paintComponent(Graphics graphics){
- super.paintComponent(graphics);
- graphics.drawImage(image, 0, 0, this.getWidth(), this.getHeight(), this);
- }
- public void setFieldOn(boolean enabled){
- usernameField.setEnabled(enabled);
- passwordField.setEnabled(enabled);
- playButton.setEnabled(enabled);
- }
- public SColoredBar getProgressbar() {
- return progressbar;
- }
- public void setInfo(String text){
- jLabel.setText(text);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement