import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Component;
import java.awt.Dialog;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.Label;
import java.awt.Panel;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.ListModel;
import javax.swing.ListSelectionModel;
public class SELDE extends Frame
implements ActionListener {
/**
*
*/
private static final long serialVersionUID = 7418398424159167425L;
private JFrame frame;
private JPanel panel;
private JButton btRechtsverschieben, btLinksverschieben,
btalleverschiebenR, btalleverschiebenL, btOK, btAbbrechen, btHilfe;
private JList clorse,target;
private JLabel lBenutzerRechte, lMöglicheRechte;
private DefaultListModel daten,daten2;
public SELDE() {
init();
}
public void init() {
createFrame();
createPanel();
createButton();
createLabel();
createList();
getCoordinates();
createLayout();
show();
}
public void createFrame() {
frame = new JFrame();
frame.setTitle("Select Tool");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void createPanel() {
panel = new JPanel();
}
public void createButton() {
btRechtsverschieben = new JButton(">");
btRechtsverschieben.addActionListener(this);
panel.add(btRechtsverschieben, BorderLayout.SOUTH);
btLinksverschieben = new JButton("<");
btLinksverschieben.addActionListener(this);
panel.add(btLinksverschieben, BorderLayout.SOUTH);
btalleverschiebenL = new JButton("<<");
btalleverschiebenL.addActionListener(this);
panel.add(btalleverschiebenL, BorderLayout.SOUTH);
btOK = new JButton("OK");
btAbbrechen = new JButton("Abbrechen");
frame.add(btAbbrechen);
btAbbrechen.addActionListener(this);
btHilfe = new JButton("Hilfe");
btalleverschiebenR = new JButton(">>");
btalleverschiebenR.addActionListener(this);
panel.add(btalleverschiebenR, BorderLayout.SOUTH);
}
public void createLabel() {
lBenutzerRechte = new JLabel("Benutzer Rechte");
lMöglicheRechte = new JLabel("Mögliche Rechte");
}
public void createList() {
daten2 = new DefaultListModel();
daten2.addElement("hallo");
daten = new DefaultListModel();
daten.addElement("schreib");
daten.addElement("lesen");
daten.addElement("schreiben und lesen");
daten.addElement("Adminrechte");
daten.addElement("Prjoektleiter");
daten.addElement("Beobachtungsrechte");
daten.addElement("Aktualiesierungrechte");
daten.addElement("Veränderunsgrechte");
target = new JList(daten2);
target.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
clorse = new JList(daten);
clorse.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
}
public void actionPerformed(ActionEvent event)
{
String cmd = event.getActionCommand();
if (cmd.equals(">")) {
ListModel lm = clorse.getModel();
int[] sel = clorse.getSelectedIndices();
for (int i = 0; i < sel.length; ++i) {
String value = (String)lm.getElementAt(sel[i]);
daten2.addElement(value);
daten.removeElement(value);
}
}
if (cmd.equals(">>")) {
ListModel lm = clorse.getModel();
for (int i = 0; i < clorse.getSize(); ++i) {
String value = (String)lm.getElementAt(i);
daten2.addElement(value);
daten.removeElement(value);
}
}
if (cmd.equals("<")) {
ListModel lm = target.getModel();
int[] sel = target.getSelectedIndices();
for (int i = 0; i < sel.length; ++i) {
String value = (String)lm.getElementAt(sel[i]);
daten.addElement(value);
daten2.removeElement(value);
}
}
if (cmd.equals("<<")) {
ListModel lm = target.getModel();
int[] sel = target.getSelectedIndices();
for (int i = 0; i < sel.length; ++i) {
String value = (String)lm.getElementAt(sel[i]);
daten.addElement(value);
daten2.removeElement(value);
}
}
}
public void getCoordinates() {
frame.setMaximumSize(new Dimension(680, 530));
frame.setMinimumSize(new Dimension(680, 530));
frame.setPreferredSize(new Dimension(680, 530));
panel.setLayout(null);
btRechtsverschieben.setBounds(282, 170, 100, 20);
btLinksverschieben.setBounds(282, 270, 100, 20);
btalleverschiebenR.setBounds(282, 190, 100, 20);
btalleverschiebenL.setBounds(282, 290, 100, 20);
lMöglicheRechte.setBounds(87, 3, 250, 20);
lBenutzerRechte.setBounds(480, 3, 250, 20);
btOK.setBounds(180, 450, 70, 20);
btAbbrechen.setBounds(282, 450, 100, 20);
btHilfe.setBounds(410, 450, 70, 20);
clorse.setBounds(17, 25, 250, 400);
target.setBounds(400, 25, 250, 400);
}
public void createLayout() {
panel.add(lMöglicheRechte);
panel.add(lBenutzerRechte);
panel.add(btRechtsverschieben);
panel.add(btalleverschiebenR);
panel.add(btLinksverschieben);
panel.add(btalleverschiebenL);
panel.add(btOK);
panel.add(btAbbrechen);
panel.add(btHilfe);
frame.add(panel);
panel.add(clorse);
panel.add(target);
}
public void show() {
frame.pack();
frame.setVisible(true);
}
/**
* @param args
*/
public static void main(String[] args) {
DialogWindow window = new DialogWindow();
window.inAnApplet = false;
window.setTitle("DialogWindow Application");
window.pack();
window.setVisible(true);
new SELDE();
}
}