diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/Bundle.properties b/Core/src/org/sleuthkit/autopsy/filesearch/Bundle.properties
index 99c61a24ca..d946e2f9c2 100644
--- a/Core/src/org/sleuthkit/autopsy/filesearch/Bundle.properties
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/Bundle.properties
@@ -18,7 +18,7 @@ DateSearchPanel.jLabel1.text=to
DateSearchPanel.dateFromTextField.text=
DateSearchPanel.dateFromButtonCalendar.text=
NameSearchPanel.nameCheckBox.text=Name:
-NameSearchPanel.noteNameLabel.text=*Note: Name match is case insensitive and matches
any part of the file name. Regular expressions are
not currently supported.
+NameSearchPanel.noteNameLabel.text=*Note: Name match is case insensitive and matches any part of the file name. Regular expressions are not currently supported.
NameSearchPanel.searchTextField.text=
SizeSearchPanel.sizeCheckBox.text=Size:
NameSearchPanel.cutMenuItem.text=Cut
@@ -40,7 +40,6 @@ FileSearchPanel.custComp.label.text=Search for files that match the following cr
FileSearchPanel.filterTitle.name=Name
FileSearchPanel.filterTitle.metadata=Metadata
FileSearchPanel.filterTitle.knownStatus=Known Status
-FileSearchPanel.searchButton.text=Search
FileSearchPanel.search.results.title=File Search Results {0}
FileSearchPanel.search.results.pathText=Filename Search Results\:
FileSearchPanel.search.results.msg=File Search\: {0} matches found
@@ -54,3 +53,6 @@ SearchNode.getName.text=Search Result
SizeSearchPanel.sizeCompareComboBox.equalTo=equal to
SizeSearchPanel.sizeCompareComboBox.greaterThan=greater than
SizeSearchPanel.sizeCompareComboBox.lessThan=less than
+MimeTypePanel.jCheckBox1.text=MIME Type:
+MimeTypePanel.jLabel1.text=*Note: Multiple MIME types can be selected
+FileSearchPanel.searchButton.text=Search
diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/Bundle_ja.properties b/Core/src/org/sleuthkit/autopsy/filesearch/Bundle_ja.properties
index 891bf77b29..401f521568 100644
--- a/Core/src/org/sleuthkit/autopsy/filesearch/Bundle_ja.properties
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/Bundle_ja.properties
@@ -1,51 +1,50 @@
-OpenIDE-Module-Name=\u30D5\u30A1\u30A4\u30EB\u691C\u7D22
-KnownStatusSearchPanel.knownCheckBox.text=\u65E2\u77E5\u30B9\u30C6\u30FC\u30BF\u30B9\uFF1A
-KnownStatusSearchPanel.knownBadOptionCheckBox.text=\u65E2\u77E5\u306E\u60AA\u8CEA
-KnownStatusSearchPanel.knownOptionCheckBox.text=\u65E2\u77E5\uFF08NSRL\u307E\u305F\u306F\u305D\u306E\u4ED6\uFF09
-KnownStatusSearchPanel.unknownOptionCheckBox.text=\u4E0D\u660E
-DateSearchFilter.noneSelectedMsg.text=\u6700\u4F4E\u4E00\u3064\u306E\u30C7\u30FC\u30BF\u30BF\u30A4\u30D7\u3092\u9078\u629E\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\uFF01
-DateSearchPanel.dateCheckBox.text=\u65E5\u4ED8\uFF1A
-DateSearchPanel.jLabel4.text=\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3\uFF1A
-DateSearchPanel.jLabel3.text=*\u65E5\u4ED8\u306E\u5F62\u5F0F\u306Fmm/dd/yyyy
-DateSearchPanel.jLabel2.text=*\u7A7A\u767D\u306E\u9805\u76EE\u306F\u300C\u5236\u9650\u306A\u3057\u300D\u3068\u3044\u3046\u610F\u5473\u3067\u3059
-DateSearchPanel.createdCheckBox.text=\u4F5C\u6210\u6E08\u307F
-DateSearchPanel.accessedCheckBox.text=\u30A2\u30AF\u30BB\u30B9\u6E08\u307F
-DateSearchPanel.changedCheckBox.text=\u5909\u66F4\u6E08\u307F
-DateSearchPanel.modifiedCheckBox.text=\u4FEE\u6B63\u6E08\u307F
+OpenIDE-Module-Name=\u30d5\u30a1\u30a4\u30eb\u691c\u7d22
+KnownStatusSearchPanel.knownCheckBox.text=\u65e2\u77e5\u30b9\u30c6\u30fc\u30bf\u30b9\uff1a
+KnownStatusSearchPanel.knownBadOptionCheckBox.text=\u65e2\u77e5\u306e\u60aa\u8cea
+KnownStatusSearchPanel.knownOptionCheckBox.text=\u65e2\u77e5\uff08NSRL\u307e\u305f\u306f\u305d\u306e\u4ed6\uff09
+KnownStatusSearchPanel.unknownOptionCheckBox.text=\u4e0d\u660e
+DateSearchFilter.noneSelectedMsg.text=\u6700\u4f4e\u4e00\u3064\u306e\u30c7\u30fc\u30bf\u30bf\u30a4\u30d7\u3092\u9078\u629e\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\uff01
+DateSearchPanel.dateCheckBox.text=\u65e5\u4ed8\uff1a
+DateSearchPanel.jLabel4.text=\u30bf\u30a4\u30e0\u30be\u30fc\u30f3\uff1a
+DateSearchPanel.jLabel3.text=*\u65e5\u4ed8\u306e\u5f62\u5f0f\u306fmm/dd/yyyy
+DateSearchPanel.jLabel2.text=*\u7a7a\u767d\u306e\u9805\u76ee\u306f\u300c\u5236\u9650\u306a\u3057\u300d\u3068\u3044\u3046\u610f\u5473\u3067\u3059
+DateSearchPanel.createdCheckBox.text=\u4f5c\u6210\u6e08\u307f
+DateSearchPanel.accessedCheckBox.text=\u30a2\u30af\u30bb\u30b9\u6e08\u307f
+DateSearchPanel.changedCheckBox.text=\u5909\u66f4\u6e08\u307f
+DateSearchPanel.modifiedCheckBox.text=\u4fee\u6b63\u6e08\u307f
DateSearchPanel.jLabel1.text=to
-NameSearchPanel.nameCheckBox.text=\u540D\u524D\uFF1A
-NameSearchPanel.noteNameLabel.text=*\u6CE8\u610F\uFF1A\u540D\u524D\u30DE\u30C3\u30C1\u306F\u5927\u6587\u5B57\u3068\u5C0F\u6587\u5B57\u3092\u533A\u5225\u3057\u307E\u3059\u3002\u307E\u305F\u3001
\u30D5\u30A1\u30A4\u30EB\u540D\u306E\u3044\u304B\u306A\u308B\u90E8\u5206\u3082\u30DE\u30C3\u30C1\u3057\u307E\u3059\u3002\u6B63\u898F\u8868\u73FE\u306F
\u73FE\u5728\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
-SizeSearchPanel.sizeCheckBox.text=\u30B5\u30A4\u30BA\uFF1A
-NameSearchPanel.cutMenuItem.text=\u30AB\u30C3\u30C8
-NameSearchPanel.copyMenuItem.text=\u30B3\u30D4\u30FC
-NameSearchPanel.pasteMenuItem.text=\u8CBC\u308A\u4ED8\u3051
-NameSearchPanel.selectAllMenuItem.text=\u3059\u3079\u3066\u9078\u629E
-SizeSearchPanel.selectAllMenuItem.text=\u3059\u3079\u3066\u9078\u629E
-SizeSearchPanel.pasteMenuItem.text=\u8CBC\u308A\u4ED8\u3051
-SizeSearchPanel.copyMenuItem.text=\u30B3\u30D4\u30FC
-SizeSearchPanel.cutMenuItem.text=\u30AB\u30C3\u30C8
-DateSearchPanel.cutMenuItem.text=\u30AB\u30C3\u30C8
-DateSearchPanel.selectAllMenuItem.text=\u3059\u3079\u3066\u9078\u629E
-DateSearchPanel.pasteMenuItem.text=\u8CBC\u308A\u4ED8\u3051
-DateSearchPanel.copyMenuItem.text=\u30B3\u30D4\u30FC
-FileSearchAction.getName.text=\u5C5E\u6027\u306B\u3088\u308B\u30D5\u30A1\u30A4\u30EB\u691C\u7D22
-FileSearchDialog.frame.title=\u5C5E\u6027\u306B\u3088\u308B\u30D5\u30A1\u30A4\u30EB\u691C\u7D22
-FileSearchDialog.frame.msg=\u5C5E\u6027\u306B\u3088\u308B\u30D5\u30A1\u30A4\u30EB\u691C\u7D22
-FileSearchPanel.custComp.label.text=\u6B21\u306E\u6761\u4EF6\u306B\u4E00\u81F4\u3059\u308B\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22\uFF1A
-FileSearchPanel.filterTitle.name=\u540D\u524D
-FileSearchPanel.filterTitle.metadata=\u30E1\u30BF\u30C7\u30FC\u30BF
-FileSearchPanel.filterTitle.knownStatus=\u65E2\u77E5\u30B9\u30C6\u30FC\u30BF\u30B9
-FileSearchPanel.searchButton.text=\u691C\u7D22
-FileSearchPanel.search.results.title=\u30D5\u30A1\u30A4\u30EB\u691C\u7D22\u7D50\u679C{0}
-FileSearchPanel.search.results.pathText=\u30D5\u30A1\u30A4\u30EB\u540D\u691C\u7D22\u7D50\u679C\uFF1A
-FileSearchPanel.search.results.msg=\u30D5\u30A1\u30A4\u30EB\u691C\u7D22\uFF1A{0}\u500B\u306E\u30DE\u30C3\u30C1\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F
-FileSearchPanel.search.results.details=\u591A\u304F\u306E\u30DE\u30C3\u30C1\u304C\u3042\u308B\u5834\u5408\u3001\u4E00\u90E8\u306E\u51E6\u7406\u306E\u30D1\u30D5\u30A9\u30FC\u30DE\u30F3\u30B9\u306B\u5F71\u97FF\u3092\u4E0E\u3048\u308B\u304B\u3082\u3057\u308C\u307E\u305B\u3093
-FileSearchPanel.search.exception.noFilterSelected.msg=\u6700\u4F4E\uFF11\u500B\u306E\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u9078\u629E\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
-FileSearchPanel.search.validationErr.msg=\u30D0\u30EA\u30C7\u30FC\u30B7\u30E7\u30F3\u30A8\u30E9\u30FC\uFF1A{0}
-FileSearchPanel.emptyWhereClause.text=\u7121\u52B9\u306A\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u3059\u3002\u8868\u793A\u3059\u308B\u3082\u306E\u304C\u3042\u308A\u307E\u305B\u3093\u3002
-KnownStatusSearchFilter.noneSelectedMsg.text=\u6700\u4F4E\uFF11\u500B\u306E\u65E2\u77E5\u30B9\u30C6\u30FC\u30BF\u30B9\u3092\u9078\u629E\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\uFF01
-NameSearchFilter.emptyNameMsg.text=\u540D\u524D\u691C\u7D22\u306B\u4F55\u304B\u8A18\u5165\u3057\u306A\u3051\u308C\u3070\u3044\u3051\u307E\u305B\u3093\u3002
-SearchNode.getName.text=\u691C\u7D22\u7D50\u679C
-SizeSearchPanel.sizeCompareComboBox.equalTo=\u4E0B\u8A18\u3068\u7B49\u3057\u3044
-SizeSearchPanel.sizeCompareComboBox.greaterThan=\u4E0B\u8A18\u3088\u308A\u5927\u304D\u3044
-SizeSearchPanel.sizeCompareComboBox.lessThan=\u4E0B\u8A18\u3088\u308A\u5C0F\u3055\u3044
+NameSearchPanel.nameCheckBox.text=\u540d\u524d\uff1a
+NameSearchPanel.noteNameLabel.text=*\u6ce8\u610f\uff1a\u540d\u524d\u30de\u30c3\u30c1\u306f\u5927\u6587\u5b57\u3068\u5c0f\u6587\u5b57\u3092\u533a\u5225\u3057\u307e\u3059\u3002\u307e\u305f\u3001
\u30d5\u30a1\u30a4\u30eb\u540d\u306e\u3044\u304b\u306a\u308b\u90e8\u5206\u3082\u30de\u30c3\u30c1\u3057\u307e\u3059\u3002\u6b63\u898f\u8868\u73fe\u306f
\u73fe\u5728\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002
+SizeSearchPanel.sizeCheckBox.text=\u30b5\u30a4\u30ba\uff1a
+NameSearchPanel.cutMenuItem.text=\u30ab\u30c3\u30c8
+NameSearchPanel.copyMenuItem.text=\u30b3\u30d4\u30fc
+NameSearchPanel.pasteMenuItem.text=\u8cbc\u308a\u4ed8\u3051
+NameSearchPanel.selectAllMenuItem.text=\u3059\u3079\u3066\u9078\u629e
+SizeSearchPanel.selectAllMenuItem.text=\u3059\u3079\u3066\u9078\u629e
+SizeSearchPanel.pasteMenuItem.text=\u8cbc\u308a\u4ed8\u3051
+SizeSearchPanel.copyMenuItem.text=\u30b3\u30d4\u30fc
+SizeSearchPanel.cutMenuItem.text=\u30ab\u30c3\u30c8
+DateSearchPanel.cutMenuItem.text=\u30ab\u30c3\u30c8
+DateSearchPanel.selectAllMenuItem.text=\u3059\u3079\u3066\u9078\u629e
+DateSearchPanel.pasteMenuItem.text=\u8cbc\u308a\u4ed8\u3051
+DateSearchPanel.copyMenuItem.text=\u30b3\u30d4\u30fc
+FileSearchAction.getName.text=\u5c5e\u6027\u306b\u3088\u308b\u30d5\u30a1\u30a4\u30eb\u691c\u7d22
+FileSearchDialog.frame.title=\u5c5e\u6027\u306b\u3088\u308b\u30d5\u30a1\u30a4\u30eb\u691c\u7d22
+FileSearchDialog.frame.msg=\u5c5e\u6027\u306b\u3088\u308b\u30d5\u30a1\u30a4\u30eb\u691c\u7d22
+FileSearchPanel.custComp.label.text=\u6b21\u306e\u6761\u4ef6\u306b\u4e00\u81f4\u3059\u308b\u30d5\u30a1\u30a4\u30eb\u3092\u691c\u7d22\uff1a
+FileSearchPanel.filterTitle.name=\u540d\u524d
+FileSearchPanel.filterTitle.metadata=\u30e1\u30bf\u30c7\u30fc\u30bf
+FileSearchPanel.filterTitle.knownStatus=\u65e2\u77e5\u30b9\u30c6\u30fc\u30bf\u30b9
+FileSearchPanel.search.results.title=\u30d5\u30a1\u30a4\u30eb\u691c\u7d22\u7d50\u679c{0}
+FileSearchPanel.search.results.pathText=\u30d5\u30a1\u30a4\u30eb\u540d\u691c\u7d22\u7d50\u679c\uff1a
+FileSearchPanel.search.results.msg=\u30d5\u30a1\u30a4\u30eb\u691c\u7d22\uff1a{0}\u500b\u306e\u30de\u30c3\u30c1\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
+FileSearchPanel.search.results.details=\u591a\u304f\u306e\u30de\u30c3\u30c1\u304c\u3042\u308b\u5834\u5408\u3001\u4e00\u90e8\u306e\u51e6\u7406\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306b\u5f71\u97ff\u3092\u4e0e\u3048\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093
+FileSearchPanel.search.exception.noFilterSelected.msg=\u6700\u4f4e\uff11\u500b\u306e\u30d5\u30a3\u30eb\u30bf\u30fc\u3092\u9078\u629e\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002
+FileSearchPanel.search.validationErr.msg=\u30d0\u30ea\u30c7\u30fc\u30b7\u30e7\u30f3\u30a8\u30e9\u30fc\uff1a{0}
+FileSearchPanel.emptyWhereClause.text=\u7121\u52b9\u306a\u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u3059\u3002\u8868\u793a\u3059\u308b\u3082\u306e\u304c\u3042\u308a\u307e\u305b\u3093\u3002
+KnownStatusSearchFilter.noneSelectedMsg.text=\u6700\u4f4e\uff11\u500b\u306e\u65e2\u77e5\u30b9\u30c6\u30fc\u30bf\u30b9\u3092\u9078\u629e\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\uff01
+NameSearchFilter.emptyNameMsg.text=\u540d\u524d\u691c\u7d22\u306b\u4f55\u304b\u8a18\u5165\u3057\u306a\u3051\u308c\u3070\u3044\u3051\u307e\u305b\u3093\u3002
+SearchNode.getName.text=\u691c\u7d22\u7d50\u679c
+SizeSearchPanel.sizeCompareComboBox.equalTo=\u4e0b\u8a18\u3068\u7b49\u3057\u3044
+SizeSearchPanel.sizeCompareComboBox.greaterThan=\u4e0b\u8a18\u3088\u308a\u5927\u304d\u3044
+SizeSearchPanel.sizeCompareComboBox.lessThan=\u4e0b\u8a18\u3088\u308a\u5c0f\u3055\u3044
diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/DateSearchPanel.form b/Core/src/org/sleuthkit/autopsy/filesearch/DateSearchPanel.form
index 0418d2eec7..4b253ff1e6 100644
--- a/Core/src/org/sleuthkit/autopsy/filesearch/DateSearchPanel.form
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/DateSearchPanel.form
@@ -55,86 +55,93 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
+
@@ -188,6 +195,9 @@
+
+
+
@@ -208,6 +218,9 @@
+
+
+
diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/DateSearchPanel.java b/Core/src/org/sleuthkit/autopsy/filesearch/DateSearchPanel.java
index 91a63186ed..b2bb6d295c 100644
--- a/Core/src/org/sleuthkit/autopsy/filesearch/DateSearchPanel.java
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/DateSearchPanel.java
@@ -74,7 +74,6 @@ class DateSearchPanel extends javax.swing.JPanel {
copyMenuItem.addActionListener(actList);
pasteMenuItem.addActionListener(actList);
selectAllMenuItem.addActionListener(actList);
-
}
JCheckBox getAccessedCheckBox() {
@@ -172,6 +171,7 @@ class DateSearchPanel extends javax.swing.JPanel {
dateCheckBox.setText(org.openide.util.NbBundle.getMessage(DateSearchPanel.class, "DateSearchPanel.dateCheckBox.text")); // NOI18N
+ jLabel3.setFont(new java.awt.Font("Tahoma", 0, 10)); // NOI18N
jLabel3.setText(org.openide.util.NbBundle.getMessage(DateSearchPanel.class, "DateSearchPanel.jLabel3.text")); // NOI18N
dateFromTextField.setText(org.openide.util.NbBundle.getMessage(DateSearchPanel.class, "DateSearchPanel.dateFromTextField.text")); // NOI18N
@@ -181,6 +181,7 @@ class DateSearchPanel extends javax.swing.JPanel {
}
});
+ jLabel2.setFont(new java.awt.Font("Tahoma", 0, 10)); // NOI18N
jLabel2.setText(org.openide.util.NbBundle.getMessage(DateSearchPanel.class, "DateSearchPanel.jLabel2.text")); // NOI18N
modifiedCheckBox.setSelected(true);
@@ -214,69 +215,74 @@ class DateSearchPanel extends javax.swing.JPanel {
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
- .addComponent(dateCheckBox)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(dateFromTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGap(0, 0, 0)
- .addComponent(dateFromButtonCalendar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(jLabel1)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(dateToTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGap(0, 0, 0)
- .addComponent(dateToButtonCalendar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGroup(layout.createSequentialGroup()
- .addGap(21, 21, 21)
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addGroup(layout.createSequentialGroup()
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(changedCheckBox)
- .addComponent(modifiedCheckBox))
+ .addComponent(dateCheckBox)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+ .addComponent(dateFromTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(0, 0, 0)
+ .addComponent(dateFromButtonCalendar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(accessedCheckBox)
- .addComponent(createdCheckBox)))
+ .addComponent(jLabel1)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+ .addComponent(dateToTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(0, 0, 0)
+ .addComponent(dateToButtonCalendar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+ .addContainerGap()
+ .addComponent(jLabel2)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addComponent(jLabel3)))
+ .addContainerGap(26, Short.MAX_VALUE))
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+ .addGap(0, 0, Short.MAX_VALUE)
+ .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel4)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(timeZoneComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, 193, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
- .addGap(21, 21, 21)
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(jLabel3)
- .addComponent(jLabel2)))))
+ .addComponent(modifiedCheckBox)
+ .addGap(6, 6, 6)
+ .addComponent(accessedCheckBox)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+ .addComponent(createdCheckBox)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+ .addComponent(changedCheckBox)))
+ .addGap(33, 33, 33))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(dateCheckBox)
- .addComponent(dateFromTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addComponent(dateToButtonCalendar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(jLabel1)
- .addComponent(dateToTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addComponent(dateFromButtonCalendar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGap(4, 4, 4)
+ .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+ .addGroup(layout.createSequentialGroup()
+ .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+ .addComponent(dateCheckBox)
+ .addComponent(dateFromTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+ .addGap(18, 18, 18))
+ .addGroup(layout.createSequentialGroup()
+ .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addComponent(dateToButtonCalendar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+ .addComponent(jLabel1)
+ .addComponent(dateToTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+ .addComponent(dateFromButtonCalendar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+ .addComponent(jLabel3)
+ .addComponent(jLabel2))
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel4)
.addComponent(timeZoneComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
- .addGroup(layout.createSequentialGroup()
- .addComponent(modifiedCheckBox)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(changedCheckBox))
- .addGroup(layout.createSequentialGroup()
+ .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addComponent(modifiedCheckBox, javax.swing.GroupLayout.Alignment.TRAILING)
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(accessedCheckBox)
- .addGap(23, 23, 23))
- .addComponent(createdCheckBox))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(jLabel2)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(jLabel3)
- .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ .addComponent(createdCheckBox)
+ .addComponent(changedCheckBox)))
+ .addGap(0, 0, 0))
);
}// //GEN-END:initComponents
diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/FileSearchPanel.form b/Core/src/org/sleuthkit/autopsy/filesearch/FileSearchPanel.form
index 7c2a63a271..dbb90bea12 100644
--- a/Core/src/org/sleuthkit/autopsy/filesearch/FileSearchPanel.form
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/FileSearchPanel.form
@@ -1,6 +1,11 @@
diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/FileSearchPanel.java b/Core/src/org/sleuthkit/autopsy/filesearch/FileSearchPanel.java
index a8ee427c24..e796589d22 100644
--- a/Core/src/org/sleuthkit/autopsy/filesearch/FileSearchPanel.java
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/FileSearchPanel.java
@@ -60,8 +60,7 @@ import org.sleuthkit.datamodel.TskCoreException;
*/
class FileSearchPanel extends javax.swing.JPanel {
- private List filterAreas = new ArrayList();
- private JButton searchButton;
+ private final List filterAreas = new ArrayList<>();
private static int resultWindowCount = 0; //keep track of result windows so they get unique names
private static final String EMPTY_WHERE_CLAUSE = NbBundle.getMessage(DateSearchFilter.class, "FileSearchPanel.emptyWhereClause.text");
@@ -79,14 +78,6 @@ class FileSearchPanel extends javax.swing.JPanel {
*/
private void customizeComponents() {
- this.setLayout(new BorderLayout());
-
- JPanel filterPanel = new JPanel();
- filterPanel.setLayout(new BoxLayout(filterPanel, BoxLayout.Y_AXIS));
- filterPanel.setBorder(new EmptyBorder(10, 10, 10, 10));
-
- this.add(filterPanel, BorderLayout.CENTER);
-
JLabel label = new JLabel(NbBundle.getMessage(this.getClass(), "FileSearchPanel.custComp.label.text"));
label.setAlignmentX(Component.LEFT_ALIGNMENT);
label.setBorder(new EmptyBorder(0, 0, 10, 0));
@@ -95,8 +86,9 @@ class FileSearchPanel extends javax.swing.JPanel {
// Create and add filter areas
this.filterAreas.add(new FilterArea(NbBundle.getMessage(this.getClass(), "FileSearchPanel.filterTitle.name"), new NameSearchFilter()));
- List metadataFilters = new ArrayList();
+ List metadataFilters = new ArrayList<>();
metadataFilters.add(new SizeSearchFilter());
+ metadataFilters.add(new MimeTypeFilter());
metadataFilters.add(new DateSearchFilter());
this.filterAreas.add(new FilterArea(NbBundle.getMessage(this.getClass(), "FileSearchPanel.filterTitle.metadata"), metadataFilters));
@@ -108,11 +100,6 @@ class FileSearchPanel extends javax.swing.JPanel {
filterPanel.add(fa);
}
- // Create and add search button
- this.searchButton = new JButton(NbBundle.getMessage(this.getClass(), "FileSearchPanel.searchButton.text"));
- this.searchButton.setAlignmentX(Component.LEFT_ALIGNMENT);
- filterPanel.add(searchButton);
-
addListenerToAll(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
@@ -234,7 +221,7 @@ class FileSearchPanel extends javax.swing.JPanel {
}
private Collection getFilters() {
- Collection filters = new ArrayList();
+ Collection filters = new ArrayList<>();
for (FilterArea fa : this.filterAreas) {
filters.addAll(fa.getFilters());
@@ -244,7 +231,7 @@ class FileSearchPanel extends javax.swing.JPanel {
}
private Collection getEnabledFilters() {
- Collection enabledFilters = new ArrayList();
+ Collection enabledFilters = new ArrayList<>();
for (FileSearchFilter f : this.getFilters()) {
if (f.isEnabled()) {
@@ -273,17 +260,38 @@ class FileSearchPanel extends javax.swing.JPanel {
// //GEN-BEGIN:initComponents
private void initComponents() {
+ filterPanel = new javax.swing.JPanel();
+ searchButton = new javax.swing.JButton();
+
+ setPreferredSize(new java.awt.Dimension(300, 300));
+
+ filterPanel.setBorder(javax.swing.BorderFactory.createEmptyBorder(10, 10, 10, 10));
+ filterPanel.setPreferredSize(new java.awt.Dimension(300, 400));
+ filterPanel.setLayout(new javax.swing.BoxLayout(filterPanel, javax.swing.BoxLayout.Y_AXIS));
+
+ searchButton.setText(org.openide.util.NbBundle.getMessage(FileSearchPanel.class, "FileSearchPanel.searchButton.text")); // NOI18N
+
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
this.setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGap(0, 300, Short.MAX_VALUE)
+ .addComponent(filterPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+ .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addComponent(searchButton)
+ .addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGap(0, 376, Short.MAX_VALUE)
+ .addGroup(layout.createSequentialGroup()
+ .addComponent(filterPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addGap(0, 0, 0)
+ .addComponent(searchButton)
+ .addContainerGap())
);
}// //GEN-END:initComponents
// Variables declaration - do not modify//GEN-BEGIN:variables
+ private javax.swing.JPanel filterPanel;
+ private javax.swing.JButton searchButton;
// End of variables declaration//GEN-END:variables
}
diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/FilterArea.java b/Core/src/org/sleuthkit/autopsy/filesearch/FilterArea.java
index 6c9329ca11..430fb47e5e 100644
--- a/Core/src/org/sleuthkit/autopsy/filesearch/FilterArea.java
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/FilterArea.java
@@ -92,20 +92,22 @@ class FilterArea extends JPanel {
filtersPanel = new JPanel();
filtersPanel.setAlignmentX(Component.LEFT_ALIGNMENT);
- BoxLayout filtersPanelLayout = new BoxLayout(filtersPanel, BoxLayout.Y_AXIS);
- filtersPanel.setLayout(filtersPanelLayout);
+ BoxLayout filtersPanelLayout = new BoxLayout(this, BoxLayout.Y_AXIS);
+ this.setLayout(filtersPanelLayout);
- for (FileSearchFilter f : filters) {
+ for (int i = 0; i < filters.size(); i++) {
+ FileSearchFilter f = filters.get(i);
JComponent filterComponent = f.getComponent();
filterComponent.setAlignmentX(Component.LEFT_ALIGNMENT);
- filterComponent.setBorder(new EmptyBorder(0, 0, 20, 0));
- filtersPanel.add(filterComponent);
+ if (i != filters.size() - 1) {
+ filterComponent.setBorder(new EmptyBorder(0, 0, 15, 0));
+ }
+ else {
+ filterComponent.setBorder(new EmptyBorder(0, 0, 18, 0));
+ }
+ this.add(filterComponent);
}
-
- this.add(filtersPanel);
-
- BoxLayout layout = new BoxLayout(this, BoxLayout.Y_AXIS);
- this.setLayout(layout);
+ this.setAlignmentX(Component.LEFT_ALIGNMENT);
}
private void refresh() {
diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/KnownStatusSearchPanel.form b/Core/src/org/sleuthkit/autopsy/filesearch/KnownStatusSearchPanel.form
index 3237a70996..3de5bd4680 100644
--- a/Core/src/org/sleuthkit/autopsy/filesearch/KnownStatusSearchPanel.form
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/KnownStatusSearchPanel.form
@@ -16,14 +16,19 @@
-
-
-
+
-
-
-
+
+
+
+
+
+
+
+
+
+
@@ -32,11 +37,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/KnownStatusSearchPanel.java b/Core/src/org/sleuthkit/autopsy/filesearch/KnownStatusSearchPanel.java
index c2866caacd..9a564fcdbc 100644
--- a/Core/src/org/sleuthkit/autopsy/filesearch/KnownStatusSearchPanel.java
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/KnownStatusSearchPanel.java
@@ -89,24 +89,27 @@ class KnownStatusSearchPanel extends javax.swing.JPanel {
this.setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(knownCheckBox)
.addGroup(layout.createSequentialGroup()
- .addGap(21, 21, 21)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(knownBadOptionCheckBox)
- .addComponent(unknownOptionCheckBox)
- .addComponent(knownOptionCheckBox)))
+ .addComponent(knownCheckBox)
+ .addGroup(layout.createSequentialGroup()
+ .addGap(21, 21, 21)
+ .addComponent(unknownOptionCheckBox)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+ .addComponent(knownOptionCheckBox)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+ .addComponent(knownBadOptionCheckBox)))
+ .addContainerGap(28, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(knownCheckBox)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(unknownOptionCheckBox)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(knownOptionCheckBox)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(knownBadOptionCheckBox))
+ .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+ .addComponent(unknownOptionCheckBox)
+ .addComponent(knownOptionCheckBox)
+ .addComponent(knownBadOptionCheckBox)))
);
}// //GEN-END:initComponents
diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/MimeTypeFilter.java b/Core/src/org/sleuthkit/autopsy/filesearch/MimeTypeFilter.java
new file mode 100755
index 0000000000..a6978109a5
--- /dev/null
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/MimeTypeFilter.java
@@ -0,0 +1,45 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.sleuthkit.autopsy.filesearch;
+
+import java.awt.event.ActionListener;
+
+/**
+ *
+ * @author oliver
+ */
+class MimeTypeFilter extends AbstractFileSearchFilter {
+
+ public MimeTypeFilter(MimeTypePanel component) {
+ super(component);
+ }
+ public MimeTypeFilter() {
+ this(new MimeTypePanel());
+ }
+
+ @Override
+ public boolean isEnabled() {
+ return this.getComponent().isSelected() &&
+ !this.getComponent().getMimeTypesSelected().isEmpty();
+ }
+
+ @Override
+ public String getPredicate() throws FilterValidationException {
+ String predicate = "";
+ for(String mimeType : this.getComponent().getMimeTypesSelected()) {
+ predicate += "mime_type = '" + mimeType + "' OR ";
+ }
+ if(predicate.length() > 3) {
+ predicate = predicate.substring(0, predicate.length() - 3);
+ }
+ return predicate;
+ }
+
+ @Override
+ public void addActionListener(ActionListener l) {
+ }
+
+}
diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/MimeTypePanel.form b/Core/src/org/sleuthkit/autopsy/filesearch/MimeTypePanel.form
new file mode 100755
index 0000000000..7fc017726e
--- /dev/null
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/MimeTypePanel.form
@@ -0,0 +1,98 @@
+
+
+
diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/MimeTypePanel.java b/Core/src/org/sleuthkit/autopsy/filesearch/MimeTypePanel.java
new file mode 100755
index 0000000000..6fe2e60f40
--- /dev/null
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/MimeTypePanel.java
@@ -0,0 +1,138 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.sleuthkit.autopsy.filesearch;
+
+import java.awt.event.ActionListener;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import java.util.SortedSet;
+import java.util.logging.Level;
+import org.sleuthkit.autopsy.modules.filetypeid.FileTypeDetector;
+import org.apache.tika.mime.MediaType;
+import org.apache.tika.mime.MimeTypes;
+import org.sleuthkit.autopsy.coreutils.Logger;
+
+/**
+ *
+ * @author oliver
+ */
+public class MimeTypePanel extends javax.swing.JPanel {
+
+ private static final SortedSet mediaTypes = MimeTypes.getDefaultMimeTypes().getMediaTypeRegistry().getTypes();
+ private static final Logger logger = Logger.getLogger(MimeTypePanel.class.getName());
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * Creates new form MimeTypePanel
+ */
+ public MimeTypePanel() {
+ initComponents();
+ }
+
+ private String[] getMimeTypeArray() {
+ Set fileTypesCollated = new HashSet<>();
+ for (MediaType mediaType : mediaTypes) {
+ fileTypesCollated.add(mediaType.toString());
+ }
+
+ FileTypeDetector fileTypeDetector;
+ try {
+ fileTypeDetector = new FileTypeDetector();
+ List userDefinedFileTypes = fileTypeDetector.getUserDefinedTypes();
+ fileTypesCollated.addAll(userDefinedFileTypes);
+
+ } catch (FileTypeDetector.FileTypeDetectorInitException ex) {
+ logger.log(Level.SEVERE, "Unable to get user defined file types", ex);
+ }
+
+ List toSort = new ArrayList<>(fileTypesCollated);
+ toSort.sort((String string1, String string2) -> {
+ int result = String.CASE_INSENSITIVE_ORDER.compare(string1, string2);
+ if (result == 0) {
+ result = string1.compareTo(string2);
+ }
+ return result;
+ });
+ String[] mimeTypeArray = new String[toSort.size()];
+ return toSort.toArray(mimeTypeArray);
+ }
+
+ List getMimeTypesSelected() {
+ return this.jList1.getSelectedValuesList();
+ }
+
+ boolean isSelected() {
+ return this.jCheckBox1.isSelected();
+ }
+
+ /**
+ * This method is called from within the constructor to initialize the form.
+ * WARNING: Do NOT modify this code. The content of this method is always
+ * regenerated by the Form Editor.
+ */
+ @SuppressWarnings("unchecked")
+ // //GEN-BEGIN:initComponents
+ private void initComponents() {
+
+ jScrollPane1 = new javax.swing.JScrollPane();
+ jList1 = new javax.swing.JList();
+ jCheckBox1 = new javax.swing.JCheckBox();
+ jLabel1 = new javax.swing.JLabel();
+
+ setMinimumSize(new java.awt.Dimension(150, 150));
+ setPreferredSize(new java.awt.Dimension(100, 100));
+
+ jList1.setModel(new javax.swing.AbstractListModel() {
+ String[] strings = getMimeTypeArray();
+ public int getSize() { return strings.length; }
+ public Object getElementAt(int i) { return strings[i]; }
+ });
+ jList1.setMinimumSize(new java.awt.Dimension(0, 200));
+ jScrollPane1.setViewportView(jList1);
+
+ org.openide.awt.Mnemonics.setLocalizedText(jCheckBox1, org.openide.util.NbBundle.getMessage(MimeTypePanel.class, "MimeTypePanel.jCheckBox1.text")); // NOI18N
+
+ jLabel1.setFont(new java.awt.Font("Tahoma", 0, 10)); // NOI18N
+ org.openide.awt.Mnemonics.setLocalizedText(jLabel1, org.openide.util.NbBundle.getMessage(MimeTypePanel.class, "MimeTypePanel.jLabel1.text")); // NOI18N
+
+ javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
+ this.setLayout(layout);
+ layout.setHorizontalGroup(
+ layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(layout.createSequentialGroup()
+ .addComponent(jCheckBox1)
+ .addGap(0, 0, Short.MAX_VALUE))
+ .addGroup(layout.createSequentialGroup()
+ .addContainerGap()
+ .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
+ .addGroup(layout.createSequentialGroup()
+ .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 246, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(0, 0, Short.MAX_VALUE)))
+ .addContainerGap())
+ );
+ layout.setVerticalGroup(
+ layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+ .addComponent(jCheckBox1)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+ .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 106, Short.MAX_VALUE)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+ .addComponent(jLabel1)
+ .addGap(0, 0, 0))
+ );
+ }// //GEN-END:initComponents
+
+
+ // Variables declaration - do not modify//GEN-BEGIN:variables
+ private javax.swing.JCheckBox jCheckBox1;
+ private javax.swing.JLabel jLabel1;
+ private javax.swing.JList jList1;
+ private javax.swing.JScrollPane jScrollPane1;
+ // End of variables declaration//GEN-END:variables
+}
diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/NameSearchPanel.form b/Core/src/org/sleuthkit/autopsy/filesearch/NameSearchPanel.form
index e28dd6d357..7b5e61f5e1 100644
--- a/Core/src/org/sleuthkit/autopsy/filesearch/NameSearchPanel.form
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/NameSearchPanel.form
@@ -55,18 +55,16 @@
-
-
+
+
+
-
-
+
-
-
-
-
+
+
@@ -79,6 +77,7 @@
+
@@ -121,6 +120,15 @@
+
+
+
+
+
+
+
+
+
diff --git a/Core/src/org/sleuthkit/autopsy/filesearch/NameSearchPanel.java b/Core/src/org/sleuthkit/autopsy/filesearch/NameSearchPanel.java
index 7f59ec3e3b..dc68c320de 100644
--- a/Core/src/org/sleuthkit/autopsy/filesearch/NameSearchPanel.java
+++ b/Core/src/org/sleuthkit/autopsy/filesearch/NameSearchPanel.java
@@ -121,21 +121,23 @@ class NameSearchPanel extends javax.swing.JPanel {
noteNameLabel.setFont(noteNameLabel.getFont().deriveFont(noteNameLabel.getFont().getStyle() & ~java.awt.Font.BOLD, 10));
noteNameLabel.setText(org.openide.util.NbBundle.getMessage(NameSearchPanel.class, "NameSearchPanel.noteNameLabel.text")); // NOI18N
+ noteNameLabel.setMaximumSize(new java.awt.Dimension(250, 30));
+ noteNameLabel.setMinimumSize(new java.awt.Dimension(250, 30));
+ noteNameLabel.setPreferredSize(new java.awt.Dimension(250, 30));
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
this.setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
- .addComponent(nameCheckBox)
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
- .addGroup(layout.createSequentialGroup()
- .addGap(12, 12, 12)
- .addComponent(noteNameLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addContainerGap())
+ .addGap(0, 0, 0)
+ .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+ .addComponent(noteNameLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 296, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createSequentialGroup()
+ .addComponent(nameCheckBox)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(searchTextField))))
+ .addComponent(searchTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 247, javax.swing.GroupLayout.PREFERRED_SIZE)))
+ .addGap(0, 0, 0))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
@@ -144,7 +146,8 @@ class NameSearchPanel extends javax.swing.JPanel {
.addComponent(nameCheckBox)
.addComponent(searchTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(noteNameLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+ .addComponent(noteNameLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(0, 0, Short.MAX_VALUE))
);
}// //GEN-END:initComponents