package com.lgnortel.network.networkview;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionEvent;
import javax.swing.AbstractAction;
import javax.swing.JPanel;
import javax.swing.JTextField;
/**
* Copyright (c) 2008 LG-Nortel, Inc. All Rights Reserved.
*
* CONFIDENTIALITY AND LIMITED USE: This software, including any software of <br>
* third parties embodied herein, contains code, information, data and concepts <br>
* which are confidential and/or proprietary to LG-Nortel and such third <br>
* parties. This software is licensed for use solely in accordance with the <br>
* terms and conditions of the applicable license agreement with LG-Nortel or <br>
* its authorized distributor, and not for any other use or purpose. No <br>
* redistribution of this software by any party is permitted. <br>
*
* Title: CommonTableCellRenderer.java<br>
* Description: <br>
* Copyright: Copyright(c) 2008 LG-NORTEL ALL Rights Reserved<br>
* Company: LG-Nortel<br>
*
* Title: IncrementPanel.java<br>
* Description: <br>
* Copyright: Copyright(c) 2008 LG-NORTEL ALL Rights Reserved<br>
* Company: LG-Nortel<br>
*
* @author JungGu Lee
* @version 0.1
* @created 2009. 1. 21.
* @modified 2009. 1. 21.
* @product EFA R4.0 EMS
* @sw_block Client
*/
public class IncrementPanel extends JPanel {
/**
*
*/
private static final long serialVersionUID = 1L;
private JTextField numberField;
public Spinner spinner;
private AbstractAction upAction;
private AbstractAction downAction;
private int minNumber = 0;
private int maxNumber = 0;
/**
* Constructor of this class
*/
public IncrementPanel(int basicNumber, int _minNumber, int _maxNumber) {
minNumber = _minNumber;
maxNumber = _maxNumber;
init(basicNumber);
}
/**
* initialization
* @param basicNumber
*/
private void init(int basicNumber) {
setLayout(new BorderLayout());
numberField = new JTextField();
numberField.setEditable(false);
Integer basicNumberInt = new Integer(basicNumber);
numberField.setText(basicNumberInt.toString());
upAction = new UpDownAction(1, "up");
downAction = new UpDownAction(-1, "down");
spinner = new Spinner();
spinner.getIncrementButton().addActionListener(upAction);
spinner.getDecrementButton().addActionListener(downAction);
add(numberField, "Center");
add(spinner, "East");
}
/**
* set text field color
* @param newColor
*/
public void setTextFieldColor(Color newColor) {
numberField.setBackground(newColor);
}
/**
*
* Title: IncrementPanel.java<br>
* Description: <br>
* Copyright: Copyright(c) 2008 LG-NORTEL ALL Rights Reserved<br>
* Company: LG-Nortel<br>
*
* @author JungGu Lee
* @version 0.1
* @created 2009. 2. 5.
* @modified 2009. 2. 5.
* @product EFA R4.0 EMS
* @sw_block
*/
protected class UpDownAction extends AbstractAction {
/**
*
*/
private static final long serialVersionUID = 1L;
int curDirection; // +1 = up; -1 = down
public UpDownAction(int direction, String name) {
super(name);
curDirection = direction;
}
public void actionPerformed(ActionEvent evt) {
Integer numberFieldInt = new Integer(numberField.getText());
int curNumber = numberFieldInt.intValue();
if (curDirection > 0) {
if (curNumber < maxNumber)
curNumber++;
} else {
if (curNumber > minNumber)
curNumber--;
}
Integer modNumber = new Integer(curNumber);
numberField.setText(modNumber.toString());
}
}
/**
* get number
* @return
*/
public int getNumber() {
Integer numberFieldInt = new Integer(numberField.getText());
return numberFieldInt.intValue();
}
}
|