//
// Created by Grishul Eugeny
//
// Copyright © Grishul Eugeny 2008
//

import javax.swing.JOptionPane;
import javax.swing.UIManager;

public class LoginForm extends javax.swing.JDialog {
	public DbLayer DbLayerInstance;
	
	public LoginForm( DbLayer dblayerInstance, java.awt.Frame parent ) {
		super( parent, ModalityType.DOCUMENT_MODAL );
		DbLayerInstance = dblayerInstance;
		initComponents();
		
		setLocationRelativeTo( parent );
	}

	@SuppressWarnings( "unchecked" )
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        _loginLabel = new javax.swing.JLabel();
        _passwordLabel = new javax.swing.JLabel();
        _password = new javax.swing.JPasswordField();
        _login = new javax.swing.JTextField();

        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
        setTitle("Umbrella Corporation");
        setResizable(false);
        addWindowListener(new java.awt.event.WindowAdapter() {
            public void windowClosing(java.awt.event.WindowEvent evt) {
                formWindowClosing(evt);
            }
        });

        _loginLabel.setText("Login:");

        _passwordLabel.setText("Password:");

        _password.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                _passwordActionPerformed(evt);
            }
        });

        _login.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                _loginActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(_passwordLabel)
                    .addComponent(_loginLabel))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(_login, javax.swing.GroupLayout.DEFAULT_SIZE, 168, Short.MAX_VALUE)
                    .addComponent(_password, javax.swing.GroupLayout.DEFAULT_SIZE, 168, Short.MAX_VALUE))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(_loginLabel)
                    .addComponent(_login, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(_passwordLabel)
                    .addComponent(_password, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

private void _loginActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event__loginActionPerformed
	try {
		if( !DbLayerInstance.tryToLogin( _login.getText(), _password.getText() ) ) {
			JOptionPane.showMessageDialog( this, "Неверные учетные данные" );
			dispose();
			System.exit( 0 );
		}

		dispose();

		new MainForm( DbLayerInstance, this ).setVisible( true );
		
		System.exit( 0 );
	} catch( Throwable excpt ) {
		JOptionPane.showMessageDialog( this, excpt.getMessage() );
	}

}//GEN-LAST:event__loginActionPerformed

private void _passwordActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event__passwordActionPerformed
	_loginActionPerformed( evt );
}//GEN-LAST:event__passwordActionPerformed

private void formWindowClosing(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_formWindowClosing
	System.exit( 0 );
}//GEN-LAST:event_formWindowClosing

    public static void main( String args[] ) throws Throwable {
		UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() );

		new LoginForm( new DbLayer(), new javax.swing.JFrame() ).setVisible( true );
    }

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JTextField _login;
    private javax.swing.JLabel _loginLabel;
    private javax.swing.JPasswordField _password;
    private javax.swing.JLabel _passwordLabel;
    // End of variables declaration//GEN-END:variables

}
Соседние файлы в папке src