Package NISO

Source Code of NISO.Panel$ML

package NISO;

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.font.TextAttribute;
import java.text.AttributedString;
import javax.swing.BorderFactory;
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JComponent;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import javax.swing.Timer;


public class Panel extends JPanel implements ActionListener {
  JLabel mode, username, password, adv;
  String[] modes = {"Owner", "Manager", "Bookkeeper"};
  JComboBox box;
  JButton ok, cancel;
  JTextField usernme;
  JPasswordField pass;
  Link advanced = new Link(100, 210, 92, 110, 100, 102, 310, 185);
  String user, passw, selmode;//->>>the input of the users is stored here:)
 
  public Panel(){
    setFocusable(true);
    this.addKeyListener(new ML());
    this.addMouseListener(new ML());
    setLayout(new BoxLayout(this, BoxLayout.PAGE_AXIS));
   
    this.setBorder(BorderFactory.createEmptyBorder(8, 10, 10, 10));//creates a space before the mode selection :)
   
    JPanel modePanel = new JPanel();
    modePanel.setLayout(new BoxLayout(modePanel, BoxLayout.LINE_AXIS));
    JPanel userPanel = new JPanel();
    userPanel.setLayout(new BoxLayout(userPanel, BoxLayout.LINE_AXIS));
    JPanel passPanel = new JPanel();
    passPanel.setLayout(new BoxLayout(passPanel, BoxLayout.LINE_AXIS));
    JPanel advPanel = new JPanel();
    advPanel.setLayout(new BoxLayout(advPanel, BoxLayout.LINE_AXIS));
    JPanel okPanel = new JPanel();
    okPanel.setLayout(new BoxLayout(okPanel, BoxLayout.LINE_AXIS));
    
    mode     = new JLabel("         Mode:              ");
    username = new JLabel("       Username:     ");
    password = new JLabel("         Password:     ");
    adv    = new JLabel(" ");
    box      = new JComboBox(modes);
    ok       = new JButton("Login");
    cancel   = new JButton("Cancel");
    usernme  = new JTextField();
    pass     = new JPasswordField();
   
    box.addActionListener(
         new ActionListener(){
           
            public void actionPerformed(ActionEvent event){
              int index = box.getSelectedIndex();
              selmode=modes[index];
            }
          }   
       
    );
    usernme.addActionListener(
       
         new ActionListener(){
           
            public void actionPerformed(ActionEvent event){
            user=usernme.getText();
            }
          }   
       
    );
   
    pass.addActionListener(
         new ActionListener(){
           
            @SuppressWarnings("deprecation")
            public void actionPerformed(ActionEvent event){
            passw=pass.getText();
            }
          }   
       
    );
    cancel.addActionListener(
       
         new ActionListener(){
           
            public void actionPerformed(ActionEvent event){
              if(cancel.isEnabled())
                System.exit(0);
            }
          }   
   
    );
   
    mode.setAlignmentX(JComponent.LEFT_ALIGNMENT);
    username.setAlignmentX(JComponent.LEFT_ALIGNMENT);
    password.setAlignmentX(JComponent.LEFT_ALIGNMENT);
    box.setAlignmentX(JComponent.LEFT_ALIGNMENT);
    ok.setAlignmentX(JComponent.LEFT_ALIGNMENT);
    usernme.setAlignmentX(JComponent.LEFT_ALIGNMENT);
    pass.setAlignmentX(JComponent.LEFT_ALIGNMENT);
    cancel.setAlignmentX(JComponent.LEFT_ALIGNMENT);
    
    modePanel.add(mode);
    modePanel.add(box);
    this.add(modePanel);
    userPanel.setBorder(BorderFactory.createEmptyBorder(6, 6, 6, 7));//creates a space before the username :)
    userPanel.add(username);
    userPanel.add(usernme);
    this.add(userPanel);
    passPanel.add(password);
    passPanel.add(pass);
    this.add(passPanel);
      advPanel.setBorder(BorderFactory.createEmptyBorder(4, 5, 5, 5));//creates a space before the adv :)
    advPanel.add(adv);
    this.add(advPanel);
    okPanel.add(ok);
    okPanel.add(Box.createRigidArea(new Dimension(50, 0)));
          
    okPanel.add(cancel);
    this.add(okPanel);
    Timer time = new Timer(5, this);
    time.start();
   
  }
 
  @Override
  public void actionPerformed(ActionEvent e) {
    repaint();
   
  }
  public void paint (Graphics g){
   
    super.paint(g);
    Graphics2D g2D = (Graphics2D) g;
    
    String adv = "Advanced Settings";
    g2D.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
        RenderingHints.VALUE_ANTIALIAS_ON);
        g2D.setColor(Color.BLUE);
      Font plainFont = new Font(null, Font.ITALIC, 13);

        AttributedString as = new AttributedString(adv);
      
      as.addAttribute(TextAttribute.UNDERLINE, TextAttribute.UNDERLINE_ON, 0, adv.length());
        
        if(advanced.linkClicked)
       as.addAttribute(TextAttribute.FONT, plainFont);
        
         
        g2D.drawString(as.getIterator(), 100, 102);
    
  }
 
  public class ML implements MouseListener, KeyListener{

    @Override
    public void keyPressed(KeyEvent e) {
      // TODO Auto-generated method stub
      if(e.getKeyCode() == e.VK_ESCAPE)
       System.exit(0);
    }

    @Override
    public void keyReleased(KeyEvent e) {
      // TODO Auto-generated method stub
      
    }

    @Override
    public void keyTyped(KeyEvent e) {
      // TODO Auto-generated method stub
      if(e.getKeyCode() == e.VK_ESCAPE)
         System.exit(0);
    }

    @Override
    public void mouseClicked(MouseEvent e) {
      // TODO Auto-generated method stub
      if(advanced.checkBounds(e.getX(), e.getY())){
        advanced.linkClicked = true;
        new LogFrame();
      }
     
    }

    @Override
    public void mouseEntered(MouseEvent e) {
      // TODO Auto-generated method stub
      
     
    }

    @Override
    public void mouseExited(MouseEvent e) {
      // TODO Auto-generated method stub
      
    }

    @Override
    public void mousePressed(MouseEvent e) {
      // TODO Auto-generated method stub
      if(advanced.checkBounds(e.getX(), e.getY())){
        advanced.linkClicked = true;
        //new LogFrame();
      }
     
    }

    @Override
    public void mouseReleased(MouseEvent e) {
      // TODO Auto-generated method stub
     
    }
  }
 
}
TOP

Related Classes of NISO.Panel$ML

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.