summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/UserListWindow.java
diff options
context:
space:
mode:
authorJonathan Bauer2015-08-05 16:29:46 +0200
committerJonathan Bauer2015-08-05 16:29:46 +0200
commit4ace2b8f9be497df9711e5770d0bc667c3350f45 (patch)
treefce8109782a362fb300a8c5b1d76bb754826c6d4 /dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/UserListWindow.java
parent[client] first draft at UserListWindow (diff)
downloadtutor-module-4ace2b8f9be497df9711e5770d0bc667c3350f45.tar.gz
tutor-module-4ace2b8f9be497df9711e5770d0bc667c3350f45.tar.xz
tutor-module-4ace2b8f9be497df9711e5770d0bc667c3350f45.zip
[client] search user text field actually filters
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/UserListWindow.java')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/UserListWindow.java30
1 files changed, 30 insertions, 0 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/UserListWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/UserListWindow.java
index a6df2332..680a934a 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/UserListWindow.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/UserListWindow.java
@@ -1,5 +1,6 @@
package org.openslx.dozmod.gui.window;
+import java.awt.Color;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
@@ -9,6 +10,11 @@ import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.List;
+import javax.swing.RowFilter;
+import javax.swing.UIManager;
+import javax.swing.event.DocumentEvent;
+import javax.swing.event.DocumentListener;
+
import org.apache.log4j.Logger;
import org.openslx.bwlp.thrift.iface.UserInfo;
import org.openslx.dozmod.gui.Gui;
@@ -45,6 +51,30 @@ public class UserListWindow extends UserListWindowLayout {
}
});
+ // filter the objects in the table depending on the search field
+ searchUserField.getDocument().addDocumentListener(new DocumentListener() {
+ @Override
+ public void removeUpdate(DocumentEvent e) {
+ changedUpdate(e);
+ }
+
+ @Override
+ public void insertUpdate(DocumentEvent e) {
+ changedUpdate(e);
+ }
+
+ @Override
+ public void changedUpdate(DocumentEvent e) {
+ try {
+ userTable.getRowSorter().setRowFilter(RowFilter.regexFilter("(?i)"+searchUserField.getText(), 0));
+ searchUserField.setForeground(UIManager.getColor("TextField.foreground"));
+ } catch (IllegalArgumentException ex) {
+ // TODO set background color of search field to something redish
+ searchUserField.setForeground(Color.RED);
+ }
+ }
+ });
+
// ActionListener for the two buttons
final ActionListener al = new ActionListener() {
@Override