summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java
diff options
context:
space:
mode:
authorMichael Wilson2014-10-27 18:13:20 +0100
committerMichael Wilson2014-10-27 18:13:20 +0100
commit0ed4549c028e2523534a09fd6e41c49c9d178ec1 (patch)
treeb7a829b485b644eadb4801faad15be8a81c723b1 /dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java
parentMerge branch 'master' of ssh://git.openslx.org/openslx-ng/tutor-module (diff)
downloadtutor-module-0ed4549c028e2523534a09fd6e41c49c9d178ec1.tar.gz
tutor-module-0ed4549c028e2523534a09fd6e41c49c9d178ec1.tar.xz
tutor-module-0ed4549c028e2523534a09fd6e41c49c9d178ec1.zip
Sämtliche Logik und Grafiken zur Vergabe und Verwaltung von Berechtigungen eingeführt. Kleinere Bugs sind bekannt, werden aktuell behoben
Diffstat (limited to 'dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java')
-rw-r--r--dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java74
1 files changed, 59 insertions, 15 deletions
diff --git a/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java b/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java
index 09cf5dd8..239b5a0f 100644
--- a/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java
+++ b/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java
@@ -1,6 +1,7 @@
package gui.image;
import gui.intro.About_GUI;
+import gui.intro.ListAllOtherUsers_GUI;
import gui.intro.MainMenue_GUI;
import java.awt.Color;
@@ -77,6 +78,8 @@ public class PermissionCreateImage_GUI extends JFrame {
private List<Person> map = null; // List of people who have rights
Component c = null;
// Map<String,String> ogUsers = new HashMap();
+
+ List<String> user = new ArrayList<String>();
final DefaultTableModel model = new DefaultTableModel(titles, 0) {
@@ -112,6 +115,8 @@ public class PermissionCreateImage_GUI extends JFrame {
+ "implizit freigeben darf. Eine Person mit Adminrechten darf zusätzlich das Image löschen und Berechtigungen<br />"
+ "für andere Benutzer festlegen und ist somit wie der Besitzer zu betrachten."
+ "</div></html>";
+ private JButton btnAddUser;
+ private JButton btnDeleteUser;
public PermissionCreateImage_GUI(Component formerGUI) {
addWindowListener(new WindowAdapter() {
@@ -165,16 +170,16 @@ public class PermissionCreateImage_GUI extends JFrame {
JPanel panel_1 = new JPanel();
panel_1.setBackground(SystemColor.menu);
- panel_1.setBorder(new TitledBorder(null, "Berechtigungen",
+ panel_1.setBorder(new TitledBorder(null, "Weitere Berechtigungen",
TitledBorder.LEADING, TitledBorder.TOP, null, null));
- panel_1.setBounds(10, 170, 557, 354);
+ panel_1.setBounds(10, 170, 557, 361);
contentPanel.add(panel_1);
panel_1.setLayout(null);
JScrollPane scrollPane = new JScrollPane();
scrollPane
.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
- scrollPane.setBounds(10, 21, 537, 228);
+ scrollPane.setBounds(10, 21, 537, 185);
panel_1.add(scrollPane);
table = new JTable();
@@ -193,13 +198,20 @@ public class PermissionCreateImage_GUI extends JFrame {
table.getColumnModel().getColumn(5).setWidth(0);
table.getColumnModel().getColumn(5).setMinWidth(0);
table.getColumnModel().getColumn(5).setMaxWidth(0);
-
- // if new session, get values for table from database
+
+
+ // if new session, get values for table from database -> initialiting users
if (RightsManagement.rightsManagement.getPermittedUserList().size() <= 0) {
System.out.println("Loading data from db");
- try {
- map = client.getAllOtherSatelliteUsers(person.verantwortlicher
- .getUserID());
+ //do nothing
+ /*try {
+
+ user.add(0, person.verantwortlicher.getUserID());
+ if(user==null){
+ System.out.println("user is null");
+ }
+ //map = client.getAllOtherSatelliteUsers(person.verantwortlicher.getUserID());
+ map = client.getAllOtherSatelliteUsers(user);
Iterator<server.generated.Person> i = map.iterator();
int x = 0;
@@ -224,7 +236,7 @@ public class PermissionCreateImage_GUI extends JFrame {
} catch (TException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
- }
+ }*/
} else // read from model
{
System.out.println("reading from model");
@@ -239,7 +251,6 @@ public class PermissionCreateImage_GUI extends JFrame {
int x = 0;
while (i.hasNext()) {
- // System.out.println("current pos=" + x);
// erzeuge Objekte fuer die Tabelle
person temp = i.next();
@@ -259,14 +270,16 @@ public class PermissionCreateImage_GUI extends JFrame {
x++;
}
}// end set list of permitted users
+
- TableCellRenderer rend = table.getTableHeader().getDefaultRenderer();
+ //TableCellRenderer rend = table.getTableHeader().getDefaultRenderer();
TableColumn tc1 = table.getColumnModel().getColumn(1);
tc1.setCellEditor(table.getDefaultEditor(Boolean.class));
tc1.setCellRenderer(table.getDefaultRenderer(Boolean.class));
tc1.setHeaderRenderer(new CheckBoxHeader(new MyItemListener1(),
(String) titles[1]));
+
// tc1.setCellRenderer(cellRenderer)
TableColumn tc2 = table.getColumnModel().getColumn(2);
@@ -286,7 +299,8 @@ public class PermissionCreateImage_GUI extends JFrame {
tc4.setCellRenderer(table.getDefaultRenderer(Boolean.class));
tc4.setHeaderRenderer(new CheckBoxHeader(new MyItemListener4(),
(String) titles[4]));
-
+
+
scrollPane.setViewportView(table);
JPanel panel = new JPanel();
@@ -309,6 +323,37 @@ public class PermissionCreateImage_GUI extends JFrame {
comboBox_1.setSelectedIndex(0);
comboBox_1.setBounds(270, 30, 250, 20);
panel.add(comboBox_1);
+
+ btnAddUser = new JButton("Hinzufügen...");
+ btnAddUser.setBounds(10, 217, 113, 23);
+ panel_1.add(btnAddUser);
+
+ btnDeleteUser = new JButton("Löschen");
+ btnDeleteUser.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+
+ // delete selected users from table
+ int[] deletableRows= table.getSelectedRows();
+ int pointerCorrection=0; //after deleting a row, the length of selected rows is reduced by 1. This pointer counts the already deleted rows and correct the offset of i
+ LOGGER.info("deletabelRows.length="+deletableRows.length);
+
+ for (int i=0; i<deletableRows.length; i++){
+
+ LOGGER.info("Deleting rowCount["+i+"], tableRow number "+deletableRows[i-pointerCorrection]);
+ model.removeRow(deletableRows[i-pointerCorrection]);
+ pointerCorrection++;
+ }
+ }
+ });
+ btnDeleteUser.setBounds(134, 217, 113, 23);
+ panel_1.add(btnDeleteUser);
+ btnAddUser.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ //show list of all other relevant users
+ ListAllOtherUsers_GUI lu = new ListAllOtherUsers_GUI(c, table, 5); //give access to the table model and inform that the userID is position 5 in the model
+ lu.setVisible(true);
+ }
+ });
JLabel lblHauptmen = new JLabel("Hauptmenü");
lblHauptmen.addMouseListener(new MouseAdapter() {
@@ -509,8 +554,8 @@ public class PermissionCreateImage_GUI extends JFrame {
}
});
menuBar.add(mnNewMenu_Info);
- c = this;
-
+ c = this;
+
this.setLocationRelativeTo(formerGUI);
this.setVisible(true);
}// end constructor
@@ -673,7 +718,6 @@ public class PermissionCreateImage_GUI extends JFrame {
RightsManagement.rightsManagement.setPermittedUserList(list);
}// end saveTableToList()
-
} // end class
class CheckBoxHeader extends JCheckBox implements TableCellRenderer,