summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java
diff options
context:
space:
mode:
authorSimon Rettberg2015-10-22 11:00:44 +0200
committerSimon Rettberg2015-10-22 11:00:44 +0200
commit8708c9090f8187ab63abb78b87606c3fb3d5b1b3 (patch)
tree87c0679d9f2e1a8d15528237d559c645f5095630 /dozentenmodul/src/main/java
parent[client] Add experimental setting for number of connections per transfer (diff)
downloadtutor-module-8708c9090f8187ab63abb78b87606c3fb3d5b1b3.tar.gz
tutor-module-8708c9090f8187ab63abb78b87606c3fb3d5b1b3.tar.xz
tutor-module-8708c9090f8187ab63abb78b87606c3fb3d5b1b3.zip
[client] Make list deselection more consistent with native behaviour, match scroll pane background with table
Diffstat (limited to 'dozentenmodul/src/main/java')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/LectureTable.java2
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java1
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/QScrollPane.java25
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageListWindow.java5
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java5
5 files changed, 16 insertions, 22 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/LectureTable.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/LectureTable.java
index 8eda6013..54b5d36b 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/LectureTable.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/LectureTable.java
@@ -72,7 +72,7 @@ public class LectureTable extends ListTable<LectureSummary> {
if (dateInvalid || !row.isImageVersionUsable) {
component.setForeground(invalidColor);
} else {
- component.setForeground(getForeground());
+ component.setForeground(isSelected ? getSelectionForeground() : getForeground());
}
} else {
component.setForeground(Color.RED);
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java
index f8808c0d..47ddcf22 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java
@@ -3,7 +3,6 @@ package org.openslx.dozmod.gui.control.table;
import java.awt.Component;
import java.util.ArrayList;
import java.util.Comparator;
-import java.util.LinkedList;
import java.util.List;
import javax.swing.JTable;
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/QScrollPane.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/QScrollPane.java
index ca79073b..d3c9329d 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/QScrollPane.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/QScrollPane.java
@@ -2,32 +2,37 @@ package org.openslx.dozmod.gui.control.table;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
import javax.swing.JScrollPane;
import javax.swing.JTable;
/**
- * Extended JScrollPane to make deselection by clicking on empty space possible
+ * Extended JScrollPane to make deselection by clicking on empty space
+ * possible; make the scroll pane's background color match that of the JTable.
*/
@SuppressWarnings("serial")
public class QScrollPane extends JScrollPane {
+
public QScrollPane(final JTable view) {
super(view);
this.addMouseListener(new MouseAdapter() {
@Override
- public void mousePressed(MouseEvent e) {
- processClick(e);
- }
-
- @Override
public void mouseReleased(MouseEvent e) {
- processClick(e);
- }
-
- private void processClick(MouseEvent e) {
view.clearSelection();
}
});
+ PropertyChangeListener listener = new PropertyChangeListener() {
+ @Override
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (getViewport() == null)
+ return;
+ getViewport().setBackground(view.getBackground());
+ }
+ };
+ view.addPropertyChangeListener("background", listener);
+ listener.propertyChange(null);
}
}
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageListWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageListWindow.java
index 18409997..9fd25b5c 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageListWindow.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageListWindow.java
@@ -159,11 +159,6 @@ public class ImageListWindow extends ImageListWindowLayout implements DownloadCa
pop.show(e.getComponent(), e.getX(), e.getY());
}
}
- // TODO This doesn't work, make deselection possible by clicking on empty table space
- else if (SwingUtilities.isLeftMouseButton(e)
- && (mouseRowIndex < 0 || mouseRowIndex > imageTable.getRowCount())) {
- imageTable.clearSelection();
- }
}
});
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java
index eb91739e..a1591370 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java
@@ -312,11 +312,6 @@ public class LectureListWindow extends LectureListWindowLayout {
pop.show(e.getComponent(), e.getX(), e.getY());
}
}
- // TODO This doesn't work, make deselection possible by clicking on empty table space
- else if (SwingUtilities.isLeftMouseButton(e)
- && (mouseRowIndex < 0 || mouseRowIndex > lectureTable.getRowCount())) {
- lectureTable.clearSelection();
- }
}
});