From 2fd609195a4e872faf83231aaf9a4f11056e8cdc Mon Sep 17 00:00:00 2001 From: Michael Wilson Date: Thu, 16 Oct 2014 19:49:34 +0200 Subject: unterschieldiche kleinigkeiten --- .../gui/lecture/PermissionCreateLecture_GUI.java | 180 +++++++++++---------- 1 file changed, 99 insertions(+), 81 deletions(-) (limited to 'dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java') diff --git a/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java b/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java index eee1ebe5..761dd406 100644 --- a/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java +++ b/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java @@ -19,6 +19,7 @@ import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.net.URI; import java.net.URISyntaxException; +import java.text.ParseException; import java.util.ArrayList; import java.util.Iterator; import java.util.List; @@ -47,18 +48,22 @@ import javax.swing.UIManager; import javax.swing.UnsupportedLookAndFeelException; import javax.swing.border.EmptyBorder; import javax.swing.border.TitledBorder; +import javax.swing.event.ListSelectionEvent; +import javax.swing.event.ListSelectionListener; import javax.swing.table.DefaultTableModel; import javax.swing.table.JTableHeader; import javax.swing.table.TableCellRenderer; import javax.swing.table.TableColumn; import javax.swing.table.TableColumnModel; +import javax.swing.table.TableModel; +import javax.swing.table.TableRowSorter; +import models.Links; +import models.RightsManagement; +import models.person; import org.apache.log4j.Logger; import org.apache.thrift.TException; -import models.Links; -import models.RightsManagement; -import models.person; import server.generated.Person; import server.generated.Server.Client; import util.CheckIntegrity; @@ -75,7 +80,9 @@ public class PermissionCreateLecture_GUI extends JFrame { Client client = models.Client.clientcon.getClient(); String[] result; private Class[] classes; - private JTable table = null; + //private JTable table = null; + private JTable tablePermittedUsers = null; + private final ButtonGroup buttonGroup = new ButtonGroup(); Object[] titles = { "Name", "Read", "Write", "Admin", "userID" }; // Object[] titles = { "Name", "Read", "Write", "Link", "Admin", "userID" }; Component c = null; @@ -85,6 +92,23 @@ public class PermissionCreateLecture_GUI extends JFrame { + "und/oder ob die Veranstaltung auch im VMChooser angezeigt wird." + ""; private List map = null; // List of people who have rights + + final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0) { + public boolean isCellEditable(int rowIndex, int mColIndex) { + return false; + } + }; + + final TableRowSorter rowSorterMyImages = new TableRowSorter( + modelMyImages); + + + + + + + + final DefaultTableModel model = new DefaultTableModel(titles, 0) { @@ -105,8 +129,8 @@ public class PermissionCreateLecture_GUI extends JFrame { } }; - private JTextField textField; - private final ButtonGroup buttonGroup = new ButtonGroup(); + + //private JTable tablePermittedUsers; public PermissionCreateLecture_GUI(Component formerGUI) { addWindowListener(new WindowAdapter() { @@ -138,7 +162,7 @@ public class PermissionCreateLecture_GUI extends JFrame { panel.setLayout(null); { JLabel lblNewLabel = new JLabel( - "Veranstaltung - Berechtigungen (Nur zur Veranschaulichung)"); + "Veranstaltung - Berechtigungen"); lblNewLabel.setBounds(10, 11, 509, 22); panel.add(lblNewLabel); lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18)); @@ -157,26 +181,30 @@ public class PermissionCreateLecture_GUI extends JFrame { contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5)); getContentPane().add(contentPanel); contentPanel.setLayout(null); - Object[] rowdata = { "Max Mustermann", new Boolean(false), - new Boolean(false), new Boolean(false), new Boolean(false) }; - model.addRow(rowdata); - table = new JTable(); - table.addMouseListener(new MouseAdapter() { + + + + + + + + //tablePermittedUsers = new JTable(); + tablePermittedUsers = new JTable(); + tablePermittedUsers.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { checkIntegrity(-1); } - }); - table.setModel(model); - table.setSelectionForeground(Color.WHITE); + tablePermittedUsers.setModel(model); + tablePermittedUsers.setSelectionForeground(Color.WHITE); // invisible attribute userID for identifying selected user - table.getColumnModel().getColumn(4).setWidth(0); - table.getColumnModel().getColumn(4).setMinWidth(0); - table.getColumnModel().getColumn(4).setMaxWidth(0); + tablePermittedUsers.getColumnModel().getColumn(4).setWidth(0); + tablePermittedUsers.getColumnModel().getColumn(4).setMinWidth(0); + tablePermittedUsers.getColumnModel().getColumn(4).setMaxWidth(0); // if new session, get values for table from database if (RightsManagement.rightsManagement.getPermittedUserList().size() <= 0) { @@ -186,7 +214,8 @@ public class PermissionCreateLecture_GUI extends JFrame { // person.verantwortlicher.getUserID(); // System.out.println("Current userID: " // +person.verantwortlicher.getUserID()); - + + /* try { map = client.getAllOtherSatelliteUsers(person.verantwortlicher .getUserID()); @@ -217,6 +246,7 @@ public class PermissionCreateLecture_GUI extends JFrame { // TODO Auto-generated catch block e1.printStackTrace(); } + */ } else // read from model { System.out.println("reading from model"); @@ -253,23 +283,24 @@ public class PermissionCreateLecture_GUI extends JFrame { }// end set list of permitted users // table wird hier nie initialisiert und ist entsprechend null - if (table == null) + + if (tablePermittedUsers == null) LOGGER.error("NPE incoming..."); - TableColumn tc1 = table.getColumnModel().getColumn(1); - tc1.setCellEditor(table.getDefaultEditor(Boolean.class)); - tc1.setCellRenderer(table.getDefaultRenderer(Boolean.class)); + TableColumn tc1 = tablePermittedUsers.getColumnModel().getColumn(1); + tc1.setCellEditor(tablePermittedUsers.getDefaultEditor(Boolean.class)); + tc1.setCellRenderer(tablePermittedUsers.getDefaultRenderer(Boolean.class)); tc1.setHeaderRenderer(new CheckBoxHeader(new MyItemListener1(), (String) titles[1])); - TableColumn tc2 = table.getColumnModel().getColumn(2); - tc2.setCellEditor(table.getDefaultEditor(Boolean.class)); - tc2.setCellRenderer(table.getDefaultRenderer(Boolean.class)); + TableColumn tc2 = tablePermittedUsers.getColumnModel().getColumn(2); + tc2.setCellEditor(tablePermittedUsers.getDefaultEditor(Boolean.class)); + tc2.setCellRenderer(tablePermittedUsers.getDefaultRenderer(Boolean.class)); tc2.setHeaderRenderer(new CheckBoxHeader(new MyItemListener2(), (String) titles[2])); - TableColumn tc3 = table.getColumnModel().getColumn(3); - tc3.setCellEditor(table.getDefaultEditor(Boolean.class)); - tc3.setCellRenderer(table.getDefaultRenderer(Boolean.class)); + TableColumn tc3 = tablePermittedUsers.getColumnModel().getColumn(3); + tc3.setCellEditor(tablePermittedUsers.getDefaultEditor(Boolean.class)); + tc3.setCellRenderer(tablePermittedUsers.getDefaultRenderer(Boolean.class)); tc3.setHeaderRenderer(new CheckBoxHeader(new MyItemListener3(), (String) titles[3])); @@ -311,26 +342,6 @@ public class PermissionCreateLecture_GUI extends JFrame { lblNewLabel_1.setBounds(194, 11, 95, 14); contentPanel.add(lblNewLabel_1); - JLabel lblName = new JLabel("Name:"); - lblName.setBounds(10, 36, 46, 20); - contentPanel.add(lblName); - - textField = new JTextField(); - textField.setBounds(69, 36, 171, 20); - contentPanel.add(textField); - textField.setColumns(10); - - JLabel lblHochschule = new JLabel("Hochschule:"); - lblHochschule.setBounds(275, 36, 80, 20); - contentPanel.add(lblHochschule); - - JComboBox comboBox = new JComboBox(); - comboBox.setModel(new DefaultComboBoxModel(new String[] { - "Hochschule Offenburg", "Hochschule Reutlingen", - "Universität Freiburg" })); - comboBox.setBounds(365, 36, 202, 20); - contentPanel.add(comboBox); - JPanel panel = new JPanel(); panel.setBounds(10, 67, 557, 148); contentPanel.add(panel); @@ -382,14 +393,21 @@ public class PermissionCreateLecture_GUI extends JFrame { panel_1.setBounds(10, 226, 311, 294); contentPanel.add(panel_1); - JScrollPane scrollPane = new JScrollPane(); - scrollPane + JScrollPane scrollPaneMyImage = new JScrollPane(); + scrollPaneMyImage .setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER); - scrollPane.setBounds(10, 28, 291, 223); - panel_1.add(scrollPane); + scrollPaneMyImage.setBounds(10, 28, 291, 223); + panel_1.add(scrollPaneMyImage); + + + tablePermittedUsers.setBounds(0, 0, 555, 1); + //panel_1.add(tablePermittedUsers); + + scrollPaneMyImage.setViewportView(tablePermittedUsers); + + JButton button = new JButton("Hinzufügen"); - button.setEnabled(false); button.setBounds(10, 260, 89, 23); panel_1.add(button); @@ -557,7 +575,7 @@ public class PermissionCreateLecture_GUI extends JFrame { int selectedRow; if (row == -1) { - selectedRow = table.getSelectedRow(); + selectedRow = tablePermittedUsers.getSelectedRow(); } else { selectedRow = row; } @@ -565,18 +583,18 @@ public class PermissionCreateLecture_GUI extends JFrame { boolean isRead, isWrite, isLink, isAdmin; // collect all row data - isRead = (boolean) table.getValueAt(selectedRow, 1); - isWrite = (boolean) table.getValueAt(selectedRow, 2); - isLink = (boolean) table.getValueAt(selectedRow, 3); - isAdmin = (boolean) table.getValueAt(selectedRow, 4); + isRead = (boolean) tablePermittedUsers.getValueAt(selectedRow, 1); + isWrite = (boolean) tablePermittedUsers.getValueAt(selectedRow, 2); + isLink = (boolean) tablePermittedUsers.getValueAt(selectedRow, 3); + isAdmin = (boolean) tablePermittedUsers.getValueAt(selectedRow, 4); boolean[] checkedVals = CheckIntegrity.isIntegre(isRead, isWrite, isLink, isAdmin); - table.setValueAt(checkedVals[0], selectedRow, 1); - table.setValueAt(checkedVals[1], selectedRow, 2); - table.setValueAt(checkedVals[2], selectedRow, 3); - table.setValueAt(checkedVals[3], selectedRow, 4); + tablePermittedUsers.setValueAt(checkedVals[0], selectedRow, 1); + tablePermittedUsers.setValueAt(checkedVals[1], selectedRow, 2); + tablePermittedUsers.setValueAt(checkedVals[2], selectedRow, 3); + tablePermittedUsers.setValueAt(checkedVals[3], selectedRow, 4); }// end checkIntegrity() // Column 0 == Concat user name @@ -588,8 +606,8 @@ public class PermissionCreateLecture_GUI extends JFrame { if (source instanceof AbstractButton == false) return; boolean checked = e.getStateChange() == ItemEvent.SELECTED; - for (int x = 0, y = table.getRowCount(); x < y; x++) { - table.setValueAt(new Boolean(checked), x, 1); + for (int x = 0, y = tablePermittedUsers.getRowCount(); x < y; x++) { + tablePermittedUsers.setValueAt(new Boolean(checked), x, 1); } } } @@ -601,8 +619,8 @@ public class PermissionCreateLecture_GUI extends JFrame { if (source instanceof AbstractButton == false) return; boolean checked = e.getStateChange() == ItemEvent.SELECTED; - for (int x = 0, y = table.getRowCount(); x < y; x++) { - table.setValueAt(new Boolean(checked), x, 2); + for (int x = 0, y = tablePermittedUsers.getRowCount(); x < y; x++) { + tablePermittedUsers.setValueAt(new Boolean(checked), x, 2); } } } @@ -614,8 +632,8 @@ public class PermissionCreateLecture_GUI extends JFrame { if (source instanceof AbstractButton == false) return; boolean checked = e.getStateChange() == ItemEvent.SELECTED; - for (int x = 0, y = table.getRowCount(); x < y; x++) { - table.setValueAt(new Boolean(checked), x, 3); + for (int x = 0, y = tablePermittedUsers.getRowCount(); x < y; x++) { + tablePermittedUsers.setValueAt(new Boolean(checked), x, 3); } } } @@ -627,8 +645,8 @@ public class PermissionCreateLecture_GUI extends JFrame { if (source instanceof AbstractButton == false) return; boolean checked = e.getStateChange() == ItemEvent.SELECTED; - for (int x = 0, y = table.getRowCount(); x < y; x++) { - table.setValueAt(new Boolean(checked), x, 4); + for (int x = 0, y = tablePermittedUsers.getRowCount(); x < y; x++) { + tablePermittedUsers.setValueAt(new Boolean(checked), x, 4); } } } @@ -647,27 +665,27 @@ public class PermissionCreateLecture_GUI extends JFrame { System.out.println("Error: map is null"); // for (int i = 0; i < map.size(); i++) { - for (int i = 0; i < table.getRowCount(); i++) { + for (int i = 0; i < tablePermittedUsers.getRowCount(); i++) { // System.out.println("in for, rowcount="+table.getRowCount()); person temp = new person(); // table.getModel().setValueAt(map.get, i, 5); - temp.setUserID(table.getModel().getValueAt(i, 5).toString()); // get + temp.setUserID(tablePermittedUsers.getModel().getValueAt(i, 5).toString()); // get // userID - temp.setImageAdmin(Boolean.parseBoolean(table.getModel() + temp.setImageAdmin(Boolean.parseBoolean(tablePermittedUsers.getModel() .getValueAt(i, 4).toString())); // get Admin - temp.setImageLinkAllowed(Boolean.parseBoolean(table.getModel() + temp.setImageLinkAllowed(Boolean.parseBoolean(tablePermittedUsers.getModel() .getValueAt(i, 3).toString()));// get Link - temp.setImageWrite(Boolean.parseBoolean(table.getModel() + temp.setImageWrite(Boolean.parseBoolean(tablePermittedUsers.getModel() .getValueAt(i, 2).toString()));// get Write - temp.setImageRead(Boolean.parseBoolean(table.getModel().getValueAt(i, 1) + temp.setImageRead(Boolean.parseBoolean(tablePermittedUsers.getModel().getValueAt(i, 1) .toString()));// get Read - seperatorIndex = table.getModel().getValueAt(i, 0).toString() + seperatorIndex = tablePermittedUsers.getModel().getValueAt(i, 0).toString() .indexOf(","); - temp.setName(table.getModel().getValueAt(i, 0).toString() + temp.setName(tablePermittedUsers.getModel().getValueAt(i, 0).toString() .substring(0, seperatorIndex)); - temp.setVorname(table.getModel().getValueAt(i, 0).toString() + temp.setVorname(tablePermittedUsers.getModel().getValueAt(i, 0).toString() .substring(seperatorIndex + 2)); // check if at least one checkbox is checked. If yes, save this @@ -682,7 +700,7 @@ public class PermissionCreateLecture_GUI extends JFrame { } System.out.println("Setting list information.\tTable size: " - + table.getRowCount() + "\t List length (=selected users): " + + tablePermittedUsers.getRowCount() + "\t List length (=selected users): " + list.size()); for (int y = 0; y < list.size(); y++) { System.out.println("" + list.get(y).getName()); -- cgit v1.2.3-55-g7522