diff options
| author | Stephan Schwär | 2020-11-17 00:19:26 +0100 |
|---|---|---|
| committer | Stephan Schwär | 2020-11-17 00:19:26 +0100 |
| commit | 1abd53bfef7a461408a2b4ced0e1956294f909f5 (patch) | |
| tree | 23bfb637bc55f0c978a42ac3232a89e79cd04afa /dozentenmodul/src/main/java/org | |
| parent | Merge remote-tracking branch 'origin/buxfix/searchCaseSensitive' into feature... (diff) | |
| parent | [client] Access directly to variable description (diff) | |
| download | tutor-module-1abd53bfef7a461408a2b4ced0e1956294f909f5.tar.gz tutor-module-1abd53bfef7a461408a2b4ced0e1956294f909f5.tar.xz tutor-module-1abd53bfef7a461408a2b4ced0e1956294f909f5.zip | |
Merge branch 'feature/search-in-description' into feature-merge
Diffstat (limited to 'dozentenmodul/src/main/java/org')
3 files changed, 44 insertions, 16 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/ImageListViewer.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/ImageListViewer.java index a758bbc0..b013e816 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/ImageListViewer.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/ImageListViewer.java @@ -8,13 +8,7 @@ import java.util.List; import java.util.regex.Pattern; import java.util.regex.PatternSyntaxException; -import javax.swing.BoxLayout; -import javax.swing.JComboBox; -import javax.swing.JLabel; -import javax.swing.JPanel; -import javax.swing.JTextField; -import javax.swing.RowFilter; -import javax.swing.UIManager; +import javax.swing.*; import javax.swing.border.TitledBorder; import org.apache.log4j.Logger; @@ -43,6 +37,7 @@ public class ImageListViewer extends QLabel { protected JTextField txtSearch; protected JComboBox<FilterType> cboFilter; protected JLabel imageCountLabel; + protected JCheckBox chkSearchInDescription; // image table protected ImageTable imageTable; @@ -82,6 +77,15 @@ public class ImageListViewer extends QLabel { ImageSummaryRead image = imageTable.getModelRow(entry.getIdentifier()); if (searchFieldPattern.matcher(image.imageName).find()) return true; + if (chkSearchInDescription.isSelected()) { + String description = image.description; + if (description != null) { + if (searchFieldPattern.matcher(description).find()) + return true; + } else { + LOGGER.debug("Description is null: cannot be searched in description"); + } + } UserInfo user = UserCache.find(image.ownerId); if (user == null) return false; @@ -133,6 +137,10 @@ public class ImageListViewer extends QLabel { filterPanel.add(txtSearch); filterPanel.add(cboFilter); + // search in description + chkSearchInDescription = new JCheckBox("Suche in Beschreibung"); + filterPanel.add(chkSearchInDescription); + // Panel for itemCount JPanel imageCountPanel = new JPanel(); imageCountLabel = new JLabel(); @@ -178,6 +186,13 @@ public class ImageListViewer extends QLabel { } }); cboFilter.setSelectedItem(defaultFilter == null ? FilterType.USABLE : defaultFilter); + + chkSearchInDescription.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + applyFilterOnTable(); + } + }); } /** 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 653a2586..ff1a3635 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 @@ -120,6 +120,15 @@ public class LectureListWindow extends LectureListWindowLayout { LectureSummary lecture = tblLectures.getModelRow(entry.getIdentifier()); if (searchFieldPattern.matcher(lecture.lectureName).find()) return true; + if (chkSearchInDescription.isSelected()) { + String description = lecture.description; + if (description != null) { + if (searchFieldPattern.matcher(description).find()) + return true; + } else { + LOGGER.debug("Description is null: cannot be searched in description"); + } + } UserInfo user = UserCache.find(lecture.ownerId); if (user == null) return false; @@ -174,6 +183,13 @@ public class LectureListWindow extends LectureListWindowLayout { } }); + chkSearchInDescription.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + applyFilterOnTable(); + } + }); + btnNewLecture.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/LectureListWindowLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/LectureListWindowLayout.java index 31ccf5b5..90c1b47f 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/LectureListWindowLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/LectureListWindowLayout.java @@ -4,15 +4,7 @@ import java.awt.BorderLayout; import java.awt.Font; import java.awt.GridBagLayout; -import javax.swing.BorderFactory; -import javax.swing.Box; -import javax.swing.BoxLayout; -import javax.swing.JButton; -import javax.swing.JComboBox; -import javax.swing.JLabel; -import javax.swing.JPanel; -import javax.swing.JTextField; -import javax.swing.UIManager; +import javax.swing.*; import javax.swing.border.TitledBorder; import org.openslx.dozmod.gui.Gui; @@ -36,6 +28,7 @@ public abstract class LectureListWindowLayout extends CompositePage { protected final JButton btnSwitchView; protected final JComboBox<FilterType> cboFilter; protected final QLabel lblVisibleLectureCount; + protected final JCheckBox chkSearchInDescription; protected final JTextField txtSearch; @@ -73,6 +66,10 @@ public abstract class LectureListWindowLayout extends CompositePage { filterPanel.add(txtSearch); filterPanel.add(cboFilter); + // search in description + chkSearchInDescription = new JCheckBox("Suche in Beschreibung"); + filterPanel.add(chkSearchInDescription); + // Panel for itemCount JPanel lectureCountPanel = new JPanel(); lblVisibleLectureCount = new QLabel(); |
