package cutils.gui;
import gui.mouse.MouseComponentMover;
import java.awt.*;
import java.util.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
import javax.swing.border.*;
abstract class RunSlider extends JSlider implements Runnable, ChangeListener {
public RunSlider(int orientation, int min, int max, int value) {
super(orientation, min, max, value);
this.setBorder(BorderFactory.createEtchedBorder());
this.setSize(100,40);
new MouseComponentMover(this);
addChangeListener(this);
}
public void stateChanged(ChangeEvent e) {
run();
}
}
abstract class RunTextField2 extends JTextField implements Runnable, ActionListener {
public RunTextField2(String label) {
super(label);
this.setSize(100,40);
new MouseComponentMover(this);
addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
run();
}
}
abstract class RunList extends JList implements Runnable, ListSelectionListener {
public RunList(String[] label) {
super(label);
this.setBorder(BorderFactory.createEtchedBorder());
this.setSize(100,80);
new MouseComponentMover(this);
addListSelectionListener(this);
}
public void valueChanged(ListSelectionEvent e) {
run();
}
}
abstract class RunPasswordField extends JPasswordField implements Runnable, ActionListener {
public RunPasswordField(String label) {
super(label);
this.setBorder(BorderFactory.createEtchedBorder());
this.setSize(100,30);
new MouseComponentMover(this);
addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
run();
}
}
abstract class RunCheckBox extends JCheckBox implements Runnable, ItemListener {
public RunCheckBox(String label) {
super(label);
this.setBorder(BorderFactory.createEtchedBorder());
this.setSize(100,30);
new MouseComponentMover(this);
addItemListener(this);
}
public void itemStateChanged(ItemEvent e) {
run();
}
}