mirror of
https://github.com/overcuriousity/autopsy-flatpak.git
synced 2025-07-12 16:06:15 +00:00
5661 - Change order within groups to combo box, change labels
This commit is contained in:
parent
5e132c0712
commit
54fef68d31
@ -15,18 +15,16 @@ FileSearchDialog.orderAttrRadioButton.text=Attribute
|
|||||||
FileSearchDialog.orderSizeRadioButton.text=Group Size
|
FileSearchDialog.orderSizeRadioButton.text=Group Size
|
||||||
FileSearchDialog.jLabel5.text=Order files by:
|
FileSearchDialog.jLabel5.text=Order files by:
|
||||||
FileSearchDialog.parentCheckBox.text=Parent
|
FileSearchDialog.parentCheckBox.text=Parent
|
||||||
FileSearchPanel.sortingPanel.border.title=Sorting
|
FileSearchPanel.sortingPanel.border.title=Grouping
|
||||||
FileSearchPanel.searchButton.text=Show
|
FileSearchPanel.searchButton.text=Show
|
||||||
FileSearchPanel.addButton.text=Add
|
FileSearchPanel.addButton.text=Add
|
||||||
FileSearchPanel.substringRadioButton.text=Substring
|
FileSearchPanel.substringRadioButton.text=Substring
|
||||||
FileSearchPanel.fullRadioButton.text=Full
|
FileSearchPanel.fullRadioButton.text=Full
|
||||||
FileSearchPanel.parentCheckbox.text=Parent:
|
FileSearchPanel.parentCheckbox.text=Parent Folder:
|
||||||
FileSearchPanel.keywordCheckbox.text=Keyword:
|
FileSearchPanel.keywordCheckbox.text=Keyword:
|
||||||
FileSearchPanel.crFrequencyCheckbox.text=Past Occurrences:
|
FileSearchPanel.crFrequencyCheckbox.text=Past Occurrences:
|
||||||
FileSearchPanel.dataSourceCheckbox.text=Data Source:
|
FileSearchPanel.dataSourceCheckbox.text=Data Source:
|
||||||
FileSearchPanel.groupSizeRadioButton.text=Group Size
|
|
||||||
FileSearchPanel.sizeCheckbox.text=File Size:
|
FileSearchPanel.sizeCheckbox.text=File Size:
|
||||||
FileSearchPanel.attributeRadioButton.text=Group Name
|
|
||||||
FileSearchPanel.orderGroupsByLabel.text=Order Groups By:
|
FileSearchPanel.orderGroupsByLabel.text=Order Groups By:
|
||||||
FileSearchPanel.filtersScrollPane.border.title=Filters
|
FileSearchPanel.filtersScrollPane.border.title=Filters
|
||||||
FileSearchPanel.parentLabel.text=(All will be used)
|
FileSearchPanel.parentLabel.text=(All will be used)
|
||||||
@ -43,16 +41,16 @@ FileSearchDialog.notableCheckBox.text=Must have been tagged as notable
|
|||||||
FileSearchDialog.scoreCheckBox.text=Has score
|
FileSearchDialog.scoreCheckBox.text=Has score
|
||||||
FileSearchPanel.cancelButton.text=Cancel
|
FileSearchPanel.cancelButton.text=Cancel
|
||||||
FileSearchPanel.hashSetCheckbox.text=Hash Set:
|
FileSearchPanel.hashSetCheckbox.text=Hash Set:
|
||||||
FileSearchPanel.tagsCheckbox.text=Tags:
|
FileSearchPanel.tagsCheckbox.text=Tag:
|
||||||
FileSearchPanel.interestingItemsCheckbox.text=Interesting Items:
|
FileSearchPanel.interestingItemsCheckbox.text=Interesting Item:
|
||||||
FileSearchPanel.scoreCheckbox.text=Has Score:
|
FileSearchPanel.scoreCheckbox.text=Has Score:
|
||||||
FileSearchPanel.exifCheckbox.text=Must contain EXIF data
|
FileSearchPanel.exifCheckbox.text=Must contain EXIF data
|
||||||
FileSearchPanel.notableCheckbox.text=Must have been tagged as notable
|
FileSearchPanel.notableCheckbox.text=Must have been tagged as notable
|
||||||
FileSearchPanel.objectsCheckbox.text=Objects:
|
FileSearchPanel.objectsCheckbox.text=Object Detected:
|
||||||
ResultsPanel.currentPageLabel.text=Page: -
|
ResultsPanel.currentPageLabel.text=Page: -
|
||||||
ResultsPanel.pageControlsLabel.text=Pages:
|
ResultsPanel.pageControlsLabel.text=Pages:
|
||||||
ResultsPanel.gotoPageLabel.text=Go to Page:
|
ResultsPanel.gotoPageLabel.text=Go to Page:
|
||||||
ResultsPanel.pageSizeLabel.text=Page size:
|
ResultsPanel.pageSizeLabel.text=Page Size:
|
||||||
ResultsPanel.instancesList.border.title=Instances
|
ResultsPanel.instancesList.border.title=Instances
|
||||||
DiscoveryExtractAction.title.extractFiles.text=Extract File
|
DiscoveryExtractAction.title.extractFiles.text=Extract File
|
||||||
FileSearchPanel.includeRadioButton.text=Include
|
FileSearchPanel.includeRadioButton.text=Include
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
CTL_OpenFileDiscoveryAction=File discovery
|
CTL_OpenFileDiscoveryAction=File discovery
|
||||||
DiscoveryTopComponent.name=\ File Discovery
|
DiscoveryTopComponent.name=\ File Discovery
|
||||||
|
FileGroup.groupSortingAlgorithm.groupName.text=Group name
|
||||||
|
FileGroup.groupSortingAlgorithm.groupSize.text=Group size
|
||||||
# {0} - Data source name
|
# {0} - Data source name
|
||||||
# {1} - Data source ID
|
# {1} - Data source ID
|
||||||
FileSearch.DataSourceGroupKey.datasourceAndID={0}(ID: {1})
|
FileSearch.DataSourceGroupKey.datasourceAndID={0}(ID: {1})
|
||||||
@ -112,7 +114,7 @@ FileSearchFiltering.SizeFilter.range=({0} to {1})
|
|||||||
FileSearchFiltering.TagsFilter.desc=Files that have been tagged {0}
|
FileSearchFiltering.TagsFilter.desc=Files that have been tagged {0}
|
||||||
FileSearchFiltering.TagsFilter.or=\ or
|
FileSearchFiltering.TagsFilter.or=\ or
|
||||||
FileSearchPanel.dialogTitle.text=Test file search
|
FileSearchPanel.dialogTitle.text=Test file search
|
||||||
FileSearchPanel.sortingPanel.border.title=Sorting
|
FileSearchPanel.sortingPanel.border.title=Grouping
|
||||||
FileSearchPanel.searchButton.text=Show
|
FileSearchPanel.searchButton.text=Show
|
||||||
FileSearchPanel.addButton.text=Add
|
FileSearchPanel.addButton.text=Add
|
||||||
FileSearchPanel.substringRadioButton.text=Substring
|
FileSearchPanel.substringRadioButton.text=Substring
|
||||||
@ -121,9 +123,7 @@ FileSearchPanel.parentCheckbox.text=Parent:
|
|||||||
FileSearchPanel.keywordCheckbox.text=Keyword:
|
FileSearchPanel.keywordCheckbox.text=Keyword:
|
||||||
FileSearchPanel.crFrequencyCheckbox.text=Past Occurrences:
|
FileSearchPanel.crFrequencyCheckbox.text=Past Occurrences:
|
||||||
FileSearchPanel.dataSourceCheckbox.text=Data Source:
|
FileSearchPanel.dataSourceCheckbox.text=Data Source:
|
||||||
FileSearchPanel.groupSizeRadioButton.text=Group Size
|
|
||||||
FileSearchPanel.sizeCheckbox.text=File Size:
|
FileSearchPanel.sizeCheckbox.text=File Size:
|
||||||
FileSearchPanel.attributeRadioButton.text=Group Name
|
|
||||||
FileSearchPanel.orderGroupsByLabel.text=Order Groups By:
|
FileSearchPanel.orderGroupsByLabel.text=Order Groups By:
|
||||||
FileSearchPanel.filtersScrollPane.border.title=Filters
|
FileSearchPanel.filtersScrollPane.border.title=Filters
|
||||||
FileSearchPanel.parentLabel.text=(All will be used)
|
FileSearchPanel.parentLabel.text=(All will be used)
|
||||||
@ -173,7 +173,7 @@ ResultsPanel.invalidPageNumber.title=Invalid Page Number
|
|||||||
ResultsPanel.openInExternalViewer.name=Open in External Viewer
|
ResultsPanel.openInExternalViewer.name=Open in External Viewer
|
||||||
ResultsPanel.pageControlsLabel.text=Pages:
|
ResultsPanel.pageControlsLabel.text=Pages:
|
||||||
ResultsPanel.gotoPageLabel.text=Go to Page:
|
ResultsPanel.gotoPageLabel.text=Go to Page:
|
||||||
ResultsPanel.pageSizeLabel.text=Page size:
|
ResultsPanel.pageSizeLabel.text=Page Size:
|
||||||
ResultsPanel.instancesList.border.title=Instances
|
ResultsPanel.instancesList.border.title=Instances
|
||||||
DiscoveryExtractAction.title.extractFiles.text=Extract File
|
DiscoveryExtractAction.title.extractFiles.text=Extract File
|
||||||
FileSearchPanel.includeRadioButton.text=Include
|
FileSearchPanel.includeRadioButton.text=Include
|
||||||
|
@ -21,6 +21,7 @@ package org.sleuthkit.autopsy.filequery;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import org.openide.util.NbBundle.Messages;
|
||||||
import org.sleuthkit.autopsy.filequery.FileSearch.GroupKey;
|
import org.sleuthkit.autopsy.filequery.FileSearch.GroupKey;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -100,7 +101,7 @@ class FileGroup implements Comparable<FileGroup> {
|
|||||||
switch (groupSortingType) {
|
switch (groupSortingType) {
|
||||||
case BY_GROUP_SIZE:
|
case BY_GROUP_SIZE:
|
||||||
return compareGroupsBySize(this, otherGroup);
|
return compareGroupsBySize(this, otherGroup);
|
||||||
case BY_GROUP_KEY:
|
case BY_GROUP_NAME:
|
||||||
default:
|
default:
|
||||||
return compareGroupsByGroupKey(this, otherGroup);
|
return compareGroupsByGroupKey(this, otherGroup);
|
||||||
}
|
}
|
||||||
@ -131,7 +132,7 @@ class FileGroup implements Comparable<FileGroup> {
|
|||||||
if (group1.getFiles().size() != group2.getFiles().size()) {
|
if (group1.getFiles().size() != group2.getFiles().size()) {
|
||||||
return -1 * Long.compare(group1.getFiles().size(), group2.getFiles().size()); // High to low
|
return -1 * Long.compare(group1.getFiles().size(), group2.getFiles().size()); // High to low
|
||||||
} else {
|
} else {
|
||||||
// If the groups have the same size, fall through to the BY_GROUP_KEY sorting
|
// If the groups have the same size, fall through to the BY_GROUP_NAME sorting
|
||||||
return compareGroupsByGroupKey(group1, group2);
|
return compareGroupsByGroupKey(group1, group2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -139,9 +140,28 @@ class FileGroup implements Comparable<FileGroup> {
|
|||||||
/**
|
/**
|
||||||
* Enum to specify how to sort the group.
|
* Enum to specify how to sort the group.
|
||||||
*/
|
*/
|
||||||
|
@Messages({"FileGroup.groupSortingAlgorithm.groupSize.text=Group Size",
|
||||||
|
"FileGroup.groupSortingAlgorithm.groupName.text=Group Name"})
|
||||||
enum GroupSortingAlgorithm {
|
enum GroupSortingAlgorithm {
|
||||||
BY_GROUP_SIZE, // Sort from largest to smallest group
|
BY_GROUP_NAME(Bundle.FileGroup_groupSortingAlgorithm_groupName_text()), // Sort using the group key (for example, if grouping by size sort from largest to smallest value)
|
||||||
BY_GROUP_KEY // Sort using the group key (for example, if grouping by size sort from largest to smallest value)
|
BY_GROUP_SIZE(Bundle.FileGroup_groupSortingAlgorithm_groupSize_text()); // Sort from largest to smallest group
|
||||||
|
|
||||||
|
private final String displayName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Construct a GroupSortingAlgorithm enum value.
|
||||||
|
*
|
||||||
|
* @param name The name to display to the user for the enum value.
|
||||||
|
*/
|
||||||
|
GroupSortingAlgorithm(String name) {
|
||||||
|
displayName = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return displayName;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1806,16 +1806,16 @@ class FileSearch {
|
|||||||
* Enum for the attribute types that can be used for grouping.
|
* Enum for the attribute types that can be used for grouping.
|
||||||
*/
|
*/
|
||||||
@NbBundle.Messages({
|
@NbBundle.Messages({
|
||||||
"FileSearch.GroupingAttributeType.fileType.displayName=File type",
|
"FileSearch.GroupingAttributeType.fileType.displayName=File Type",
|
||||||
"FileSearch.GroupingAttributeType.frequency.displayName=Past occurrences",
|
"FileSearch.GroupingAttributeType.frequency.displayName=Past Occurrences",
|
||||||
"FileSearch.GroupingAttributeType.keywordList.displayName=Keyword list names",
|
"FileSearch.GroupingAttributeType.keywordList.displayName=Keyword",
|
||||||
"FileSearch.GroupingAttributeType.size.displayName=File Size",
|
"FileSearch.GroupingAttributeType.size.displayName=File Size",
|
||||||
"FileSearch.GroupingAttributeType.datasource.displayName=Data source",
|
"FileSearch.GroupingAttributeType.datasource.displayName=Data Source",
|
||||||
"FileSearch.GroupingAttributeType.parent.displayName=Parent folder",
|
"FileSearch.GroupingAttributeType.parent.displayName=Parent Folder",
|
||||||
"FileSearch.GroupingAttributeType.hash.displayName=Hash set",
|
"FileSearch.GroupingAttributeType.hash.displayName=Hash Set",
|
||||||
"FileSearch.GroupingAttributeType.interestingItem.displayName=Interesting item set",
|
"FileSearch.GroupingAttributeType.interestingItem.displayName=Interesting Item",
|
||||||
"FileSearch.GroupingAttributeType.tag.displayName=File tag",
|
"FileSearch.GroupingAttributeType.tag.displayName=Tag",
|
||||||
"FileSearch.GroupingAttributeType.object.displayName=Object detected",
|
"FileSearch.GroupingAttributeType.object.displayName=Object Detected",
|
||||||
"FileSearch.GroupingAttributeType.none.displayName=None"})
|
"FileSearch.GroupingAttributeType.none.displayName=None"})
|
||||||
enum GroupingAttributeType {
|
enum GroupingAttributeType {
|
||||||
FILE_SIZE(new FileSizeAttribute(), Bundle.FileSearch_GroupingAttributeType_size_displayName()),
|
FILE_SIZE(new FileSizeAttribute(), Bundle.FileSearch_GroupingAttributeType_size_displayName()),
|
||||||
|
@ -8,8 +8,6 @@
|
|||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
||||||
</AuxValues>
|
</AuxValues>
|
||||||
</Component>
|
</Component>
|
||||||
<Component class="javax.swing.ButtonGroup" name="orderGroupsByButtonGroup">
|
|
||||||
</Component>
|
|
||||||
<Component class="javax.swing.ButtonGroup" name="parentIncludeButtonGroup">
|
<Component class="javax.swing.ButtonGroup" name="parentIncludeButtonGroup">
|
||||||
<AuxValues>
|
<AuxValues>
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
||||||
@ -67,7 +65,7 @@
|
|||||||
<Group type="103" groupAlignment="0" attributes="0">
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
<Group type="102" alignment="1" attributes="0">
|
<Group type="102" alignment="1" attributes="0">
|
||||||
<EmptySpace min="-2" pref="6" max="-2" attributes="0"/>
|
<EmptySpace min="-2" pref="6" max="-2" attributes="0"/>
|
||||||
<Component id="filtersScrollPane" pref="331" max="32767" attributes="0"/>
|
<Component id="filtersScrollPane" pref="360" max="32767" attributes="0"/>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Component id="sortingPanel" min="-2" max="-2" attributes="0"/>
|
<Component id="sortingPanel" min="-2" max="-2" attributes="0"/>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
@ -712,7 +710,7 @@
|
|||||||
<Properties>
|
<Properties>
|
||||||
<Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
|
<Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
|
||||||
<Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo">
|
<Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo">
|
||||||
<TitledBorder title="Sorting">
|
<TitledBorder title="Grouping">
|
||||||
<ResourceString PropertyName="titleX" bundle="org/sleuthkit/autopsy/filequery/Bundle.properties" key="FileSearchPanel.sortingPanel.border.title" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
<ResourceString PropertyName="titleX" bundle="org/sleuthkit/autopsy/filequery/Bundle.properties" key="FileSearchPanel.sortingPanel.border.title" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
||||||
</TitledBorder>
|
</TitledBorder>
|
||||||
</Border>
|
</Border>
|
||||||
@ -725,32 +723,24 @@
|
|||||||
<Group type="102" attributes="0">
|
<Group type="102" attributes="0">
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Group type="103" groupAlignment="0" attributes="0">
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
<Group type="102" alignment="1" attributes="0">
|
<Group type="102" alignment="0" attributes="0">
|
||||||
<EmptySpace min="0" pref="0" max="32767" attributes="0"/>
|
<Component id="groupByLabel" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="groupByCombobox" linkSize="3" min="-2" pref="253" max="-2" attributes="0"/>
|
<EmptySpace max="32767" attributes="0"/>
|
||||||
|
<Component id="groupByCombobox" linkSize="4" min="-2" pref="253" max="-2" attributes="0"/>
|
||||||
</Group>
|
</Group>
|
||||||
<Group type="102" attributes="0">
|
<Group type="102" alignment="0" attributes="0">
|
||||||
<Group type="103" groupAlignment="0" attributes="0">
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
<Group type="102" alignment="0" attributes="0">
|
<Group type="102" attributes="0">
|
||||||
<EmptySpace min="-2" pref="37" max="-2" attributes="0"/>
|
|
||||||
<Component id="attributeRadioButton" min="-2" max="-2" attributes="0"/>
|
|
||||||
</Group>
|
|
||||||
<Component id="groupByLabel" alignment="0" min="-2" max="-2" attributes="0"/>
|
|
||||||
<Group type="102" alignment="0" attributes="0">
|
|
||||||
<EmptySpace min="-2" pref="17" max="-2" attributes="0"/>
|
|
||||||
<Component id="orderGroupsByLabel" min="-2" max="-2" attributes="0"/>
|
<Component id="orderGroupsByLabel" min="-2" max="-2" attributes="0"/>
|
||||||
|
<EmptySpace min="0" pref="0" max="32767" attributes="0"/>
|
||||||
</Group>
|
</Group>
|
||||||
<Group type="102" alignment="0" attributes="0">
|
<Component id="orderByLabel" max="32767" attributes="0"/>
|
||||||
<EmptySpace min="-2" pref="37" max="-2" attributes="0"/>
|
</Group>
|
||||||
<Component id="groupSizeRadioButton" min="-2" max="-2" attributes="0"/>
|
<EmptySpace type="unrelated" max="32767" attributes="0"/>
|
||||||
</Group>
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
<Group type="102" alignment="0" attributes="0">
|
<Component id="groupSortingComboBox" linkSize="4" alignment="1" pref="253" max="32767" attributes="0"/>
|
||||||
<Component id="orderByLabel" min="-2" max="-2" attributes="0"/>
|
<Component id="orderByCombobox" linkSize="4" alignment="1" max="32767" attributes="0"/>
|
||||||
<EmptySpace type="unrelated" max="-2" attributes="0"/>
|
|
||||||
<Component id="orderByCombobox" linkSize="3" min="-2" pref="253" max="-2" attributes="0"/>
|
|
||||||
</Group>
|
|
||||||
</Group>
|
</Group>
|
||||||
<EmptySpace min="0" pref="0" max="32767" attributes="0"/>
|
|
||||||
</Group>
|
</Group>
|
||||||
</Group>
|
</Group>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
@ -760,17 +750,16 @@
|
|||||||
<DimensionLayout dim="1">
|
<DimensionLayout dim="1">
|
||||||
<Group type="103" groupAlignment="0" attributes="0">
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
<Group type="102" alignment="0" attributes="0">
|
<Group type="102" alignment="0" attributes="0">
|
||||||
<EmptySpace min="-2" pref="8" max="-2" attributes="0"/>
|
<EmptySpace min="-2" pref="20" max="-2" attributes="0"/>
|
||||||
<Group type="103" groupAlignment="3" attributes="0">
|
<Group type="103" groupAlignment="3" attributes="0">
|
||||||
<Component id="groupByCombobox" alignment="3" min="-2" max="-2" attributes="0"/>
|
<Component id="groupByCombobox" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="groupByLabel" alignment="3" min="-2" max="-2" attributes="0"/>
|
<Component id="groupByLabel" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
</Group>
|
</Group>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Component id="orderGroupsByLabel" min="-2" max="-2" attributes="0"/>
|
<Group type="103" groupAlignment="3" attributes="0">
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<Component id="groupSortingComboBox" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="attributeRadioButton" min="-2" max="-2" attributes="0"/>
|
<Component id="orderGroupsByLabel" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
<EmptySpace type="unrelated" max="-2" attributes="0"/>
|
</Group>
|
||||||
<Component id="groupSizeRadioButton" min="-2" max="-2" attributes="0"/>
|
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Group type="103" groupAlignment="3" attributes="0">
|
<Group type="103" groupAlignment="3" attributes="0">
|
||||||
<Component id="orderByCombobox" alignment="3" min="-2" max="-2" attributes="0"/>
|
<Component id="orderByCombobox" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
@ -809,27 +798,6 @@
|
|||||||
</Property>
|
</Property>
|
||||||
</Properties>
|
</Properties>
|
||||||
</Component>
|
</Component>
|
||||||
<Component class="javax.swing.JRadioButton" name="attributeRadioButton">
|
|
||||||
<Properties>
|
|
||||||
<Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
|
|
||||||
<ComponentRef name="orderGroupsByButtonGroup"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="selected" type="boolean" value="true"/>
|
|
||||||
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
|
||||||
<ResourceString bundle="org/sleuthkit/autopsy/filequery/Bundle.properties" key="FileSearchPanel.attributeRadioButton.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
</Component>
|
|
||||||
<Component class="javax.swing.JRadioButton" name="groupSizeRadioButton">
|
|
||||||
<Properties>
|
|
||||||
<Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
|
|
||||||
<ComponentRef name="orderGroupsByButtonGroup"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
|
||||||
<ResourceString bundle="org/sleuthkit/autopsy/filequery/Bundle.properties" key="FileSearchPanel.groupSizeRadioButton.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
</Component>
|
|
||||||
<Component class="javax.swing.JLabel" name="orderByLabel">
|
<Component class="javax.swing.JLabel" name="orderByLabel">
|
||||||
<Properties>
|
<Properties>
|
||||||
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
||||||
@ -844,6 +812,11 @@
|
|||||||
</Property>
|
</Property>
|
||||||
</Properties>
|
</Properties>
|
||||||
</Component>
|
</Component>
|
||||||
|
<Component class="javax.swing.JComboBox" name="groupSortingComboBox">
|
||||||
|
<AuxValues>
|
||||||
|
<AuxValue name="JavaCodeGenerator_TypeParameters" type="java.lang.String" value="<GroupSortingAlgorithm>"/>
|
||||||
|
</AuxValues>
|
||||||
|
</Component>
|
||||||
</SubComponents>
|
</SubComponents>
|
||||||
</Container>
|
</Container>
|
||||||
<Component class="javax.swing.JLabel" name="errorLabel">
|
<Component class="javax.swing.JLabel" name="errorLabel">
|
||||||
|
@ -39,6 +39,7 @@ import org.sleuthkit.autopsy.casemodule.Case;
|
|||||||
import org.sleuthkit.autopsy.centralrepository.datamodel.EamDb;
|
import org.sleuthkit.autopsy.centralrepository.datamodel.EamDb;
|
||||||
import org.sleuthkit.autopsy.centralrepository.datamodel.EamDbException;
|
import org.sleuthkit.autopsy.centralrepository.datamodel.EamDbException;
|
||||||
import org.sleuthkit.autopsy.coreutils.Logger;
|
import org.sleuthkit.autopsy.coreutils.Logger;
|
||||||
|
import org.sleuthkit.autopsy.filequery.FileGroup.GroupSortingAlgorithm;
|
||||||
import org.sleuthkit.autopsy.filequery.FileSearch.GroupingAttributeType;
|
import org.sleuthkit.autopsy.filequery.FileSearch.GroupingAttributeType;
|
||||||
import org.sleuthkit.autopsy.filequery.FileSearchData.FileType;
|
import org.sleuthkit.autopsy.filequery.FileSearchData.FileType;
|
||||||
import org.sleuthkit.autopsy.filequery.FileSearchData.FileSize;
|
import org.sleuthkit.autopsy.filequery.FileSearchData.FileSize;
|
||||||
@ -58,7 +59,7 @@ import org.sleuthkit.datamodel.TagName;
|
|||||||
final class FileSearchPanel extends javax.swing.JPanel implements ActionListener {
|
final class FileSearchPanel extends javax.swing.JPanel implements ActionListener {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
private static final String[] DEFAULT_IGNORED_PATHS = {"Windows", "Program Files"};
|
private static final String[] DEFAULT_IGNORED_PATHS = {"/Windows/", "/Program Files/"}; //NON-NLS
|
||||||
private final static Logger logger = Logger.getLogger(FileSearchPanel.class.getName());
|
private final static Logger logger = Logger.getLogger(FileSearchPanel.class.getName());
|
||||||
private FileType fileType = FileType.IMAGE;
|
private FileType fileType = FileType.IMAGE;
|
||||||
private DefaultListModel<FileSearchFiltering.ParentSearchTerm> parentListModel;
|
private DefaultListModel<FileSearchFiltering.ParentSearchTerm> parentListModel;
|
||||||
@ -70,6 +71,9 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
@NbBundle.Messages({"FileSearchPanel.dialogTitle.text=Test file search"})
|
@NbBundle.Messages({"FileSearchPanel.dialogTitle.text=Test file search"})
|
||||||
FileSearchPanel() {
|
FileSearchPanel() {
|
||||||
initComponents();
|
initComponents();
|
||||||
|
for (GroupSortingAlgorithm groupSortAlgorithm : GroupSortingAlgorithm.values()) {
|
||||||
|
groupSortingComboBox.addItem(groupSortAlgorithm);
|
||||||
|
}
|
||||||
parentListModel = (DefaultListModel<FileSearchFiltering.ParentSearchTerm>) parentList.getModel();
|
parentListModel = (DefaultListModel<FileSearchFiltering.ParentSearchTerm>) parentList.getModel();
|
||||||
for (String ignorePath : DEFAULT_IGNORED_PATHS) {
|
for (String ignorePath : DEFAULT_IGNORED_PATHS) {
|
||||||
parentListModel.add(parentListModel.size(), new ParentSearchTerm(ignorePath, false, false));
|
parentListModel.add(parentListModel.size(), new ParentSearchTerm(ignorePath, false, false));
|
||||||
@ -79,15 +83,15 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
/**
|
/**
|
||||||
* Setup the data source filter settings.
|
* Setup the data source filter settings.
|
||||||
*
|
*
|
||||||
* @param visible Boolean indicating if the filter should be
|
* @param visible Boolean indicating if the filter should be
|
||||||
* visible.
|
* visible.
|
||||||
* @param enabled Boolean indicating if the filter should be
|
* @param enabled Boolean indicating if the filter should be
|
||||||
* enabled.
|
* enabled.
|
||||||
* @param selected Boolean indicating if the filter should be
|
* @param selected Boolean indicating if the filter should be
|
||||||
* selected.
|
* selected.
|
||||||
* @param indicesSelected Array of integers indicating which list items are
|
* @param indicesSelected Array of integers indicating which list items are
|
||||||
* selected, null to indicate leaving selected items
|
* selected, null to indicate leaving selected items
|
||||||
* unchanged.
|
* unchanged.
|
||||||
*/
|
*/
|
||||||
private void dataSourceFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
private void dataSourceFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
||||||
dataSourceCheckbox.setVisible(visible);
|
dataSourceCheckbox.setVisible(visible);
|
||||||
@ -110,15 +114,15 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
/**
|
/**
|
||||||
* Setup the file size filter settings.
|
* Setup the file size filter settings.
|
||||||
*
|
*
|
||||||
* @param visible Boolean indicating if the filter should be
|
* @param visible Boolean indicating if the filter should be
|
||||||
* visible.
|
* visible.
|
||||||
* @param enabled Boolean indicating if the filter should be
|
* @param enabled Boolean indicating if the filter should be
|
||||||
* enabled.
|
* enabled.
|
||||||
* @param selected Boolean indicating if the filter should be
|
* @param selected Boolean indicating if the filter should be
|
||||||
* selected.
|
* selected.
|
||||||
* @param indicesSelected Array of integers indicating which list items are
|
* @param indicesSelected Array of integers indicating which list items are
|
||||||
* selected, null to indicate leaving selected items
|
* selected, null to indicate leaving selected items
|
||||||
* unchanged.
|
* unchanged.
|
||||||
*/
|
*/
|
||||||
private void sizeFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
private void sizeFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
||||||
sizeCheckbox.setVisible(visible);
|
sizeCheckbox.setVisible(visible);
|
||||||
@ -141,15 +145,15 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
/**
|
/**
|
||||||
* Setup the central repository frequency filter settings.
|
* Setup the central repository frequency filter settings.
|
||||||
*
|
*
|
||||||
* @param visible Boolean indicating if the filter should be
|
* @param visible Boolean indicating if the filter should be
|
||||||
* visible.
|
* visible.
|
||||||
* @param enabled Boolean indicating if the filter should be
|
* @param enabled Boolean indicating if the filter should be
|
||||||
* enabled.
|
* enabled.
|
||||||
* @param selected Boolean indicating if the filter should be
|
* @param selected Boolean indicating if the filter should be
|
||||||
* selected.
|
* selected.
|
||||||
* @param indicesSelected Array of integers indicating which list items are
|
* @param indicesSelected Array of integers indicating which list items are
|
||||||
* selected, null to indicate leaving selected items
|
* selected, null to indicate leaving selected items
|
||||||
* unchanged.
|
* unchanged.
|
||||||
*/
|
*/
|
||||||
private void crFrequencyFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
private void crFrequencyFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
||||||
crFrequencyCheckbox.setVisible(visible);
|
crFrequencyCheckbox.setVisible(visible);
|
||||||
@ -172,15 +176,15 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
/**
|
/**
|
||||||
* Setup the objects filter settings.
|
* Setup the objects filter settings.
|
||||||
*
|
*
|
||||||
* @param visible Boolean indicating if the filter should be
|
* @param visible Boolean indicating if the filter should be
|
||||||
* visible.
|
* visible.
|
||||||
* @param enabled Boolean indicating if the filter should be
|
* @param enabled Boolean indicating if the filter should be
|
||||||
* enabled.
|
* enabled.
|
||||||
* @param selected Boolean indicating if the filter should be
|
* @param selected Boolean indicating if the filter should be
|
||||||
* selected.
|
* selected.
|
||||||
* @param indicesSelected Array of integers indicating which list items are
|
* @param indicesSelected Array of integers indicating which list items are
|
||||||
* selected, null to indicate leaving selected items
|
* selected, null to indicate leaving selected items
|
||||||
* unchanged.
|
* unchanged.
|
||||||
*/
|
*/
|
||||||
private void objectsFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
private void objectsFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
||||||
objectsCheckbox.setVisible(visible);
|
objectsCheckbox.setVisible(visible);
|
||||||
@ -203,15 +207,15 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
/**
|
/**
|
||||||
* Setup the hash set filter settings.
|
* Setup the hash set filter settings.
|
||||||
*
|
*
|
||||||
* @param visible Boolean indicating if the filter should be
|
* @param visible Boolean indicating if the filter should be
|
||||||
* visible.
|
* visible.
|
||||||
* @param enabled Boolean indicating if the filter should be
|
* @param enabled Boolean indicating if the filter should be
|
||||||
* enabled.
|
* enabled.
|
||||||
* @param selected Boolean indicating if the filter should be
|
* @param selected Boolean indicating if the filter should be
|
||||||
* selected.
|
* selected.
|
||||||
* @param indicesSelected Array of integers indicating which list items are
|
* @param indicesSelected Array of integers indicating which list items are
|
||||||
* selected, null to indicate leaving selected items
|
* selected, null to indicate leaving selected items
|
||||||
* unchanged.
|
* unchanged.
|
||||||
*/
|
*/
|
||||||
private void hashSetFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
private void hashSetFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
||||||
hashSetCheckbox.setVisible(visible);
|
hashSetCheckbox.setVisible(visible);
|
||||||
@ -234,15 +238,15 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
/**
|
/**
|
||||||
* Setup the interesting items filter settings.
|
* Setup the interesting items filter settings.
|
||||||
*
|
*
|
||||||
* @param visible Boolean indicating if the filter should be
|
* @param visible Boolean indicating if the filter should be
|
||||||
* visible.
|
* visible.
|
||||||
* @param enabled Boolean indicating if the filter should be
|
* @param enabled Boolean indicating if the filter should be
|
||||||
* enabled.
|
* enabled.
|
||||||
* @param selected Boolean indicating if the filter should be
|
* @param selected Boolean indicating if the filter should be
|
||||||
* selected.
|
* selected.
|
||||||
* @param indicesSelected Array of integers indicating which list items are
|
* @param indicesSelected Array of integers indicating which list items are
|
||||||
* selected, null to indicate leaving selected items
|
* selected, null to indicate leaving selected items
|
||||||
* unchanged.
|
* unchanged.
|
||||||
*/
|
*/
|
||||||
private void interestingItemsFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
private void interestingItemsFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
||||||
interestingItemsCheckbox.setVisible(visible);
|
interestingItemsCheckbox.setVisible(visible);
|
||||||
@ -265,15 +269,15 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
/**
|
/**
|
||||||
* Setup the score filter settings.
|
* Setup the score filter settings.
|
||||||
*
|
*
|
||||||
* @param visible Boolean indicating if the filter should be
|
* @param visible Boolean indicating if the filter should be
|
||||||
* visible.
|
* visible.
|
||||||
* @param enabled Boolean indicating if the filter should be
|
* @param enabled Boolean indicating if the filter should be
|
||||||
* enabled.
|
* enabled.
|
||||||
* @param selected Boolean indicating if the filter should be
|
* @param selected Boolean indicating if the filter should be
|
||||||
* selected.
|
* selected.
|
||||||
* @param indicesSelected Array of integers indicating which list items are
|
* @param indicesSelected Array of integers indicating which list items are
|
||||||
* selected, null to indicate leaving selected items
|
* selected, null to indicate leaving selected items
|
||||||
* unchanged.
|
* unchanged.
|
||||||
*/
|
*/
|
||||||
private void scoreFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
private void scoreFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
||||||
scoreCheckbox.setVisible(visible);
|
scoreCheckbox.setVisible(visible);
|
||||||
@ -296,15 +300,15 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
/**
|
/**
|
||||||
* Setup the parent path filter settings.
|
* Setup the parent path filter settings.
|
||||||
*
|
*
|
||||||
* @param visible Boolean indicating if the filter should be
|
* @param visible Boolean indicating if the filter should be
|
||||||
* visible.
|
* visible.
|
||||||
* @param enabled Boolean indicating if the filter should be
|
* @param enabled Boolean indicating if the filter should be
|
||||||
* enabled.
|
* enabled.
|
||||||
* @param selected Boolean indicating if the filter should be
|
* @param selected Boolean indicating if the filter should be
|
||||||
* selected.
|
* selected.
|
||||||
* @param indicesSelected Array of integers indicating which list items are
|
* @param indicesSelected Array of integers indicating which list items are
|
||||||
* selected, null to indicate leaving selected items
|
* selected, null to indicate leaving selected items
|
||||||
* unchanged.
|
* unchanged.
|
||||||
*/
|
*/
|
||||||
private void parentFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
private void parentFilterSettings(boolean visible, boolean enabled, boolean selected, int[] indicesSelected) {
|
||||||
parentCheckbox.setVisible(visible);
|
parentCheckbox.setVisible(visible);
|
||||||
@ -519,7 +523,7 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
validateFields();
|
validateFields();
|
||||||
}
|
}
|
||||||
|
|
||||||
FileType getSelectedType(){
|
FileType getSelectedType() {
|
||||||
return fileType;
|
return fileType;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -556,6 +560,8 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
orderByCombobox.addItem(method);
|
orderByCombobox.addItem(method);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
groupSortingComboBox.setSelectedIndex(0);
|
||||||
setSelectedType(FileType.IMAGE);
|
setSelectedType(FileType.IMAGE);
|
||||||
validateFields();
|
validateFields();
|
||||||
}
|
}
|
||||||
@ -921,8 +927,7 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
* @return the grouping attribute
|
* @return the grouping attribute
|
||||||
*/
|
*/
|
||||||
FileSearch.AttributeType getGroupingAttribute() {
|
FileSearch.AttributeType getGroupingAttribute() {
|
||||||
FileSearch.GroupingAttributeType groupingAttrType = (FileSearch.GroupingAttributeType) groupByCombobox.getSelectedItem();
|
return groupByCombobox.getItemAt(groupByCombobox.getSelectedIndex()).getAttributeType();
|
||||||
return groupingAttrType.getAttributeType();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -931,10 +936,8 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
* @return the selected sorting method
|
* @return the selected sorting method
|
||||||
*/
|
*/
|
||||||
FileGroup.GroupSortingAlgorithm getGroupSortingMethod() {
|
FileGroup.GroupSortingAlgorithm getGroupSortingMethod() {
|
||||||
if (attributeRadioButton.isSelected()) {
|
return groupSortingComboBox.getItemAt(groupSortingComboBox.getSelectedIndex());
|
||||||
return FileGroup.GroupSortingAlgorithm.BY_GROUP_KEY;
|
|
||||||
}
|
|
||||||
return FileGroup.GroupSortingAlgorithm.BY_GROUP_SIZE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1064,7 +1067,6 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
java.awt.GridBagConstraints gridBagConstraints;
|
java.awt.GridBagConstraints gridBagConstraints;
|
||||||
|
|
||||||
javax.swing.ButtonGroup parentPathButtonGroup = new javax.swing.ButtonGroup();
|
javax.swing.ButtonGroup parentPathButtonGroup = new javax.swing.ButtonGroup();
|
||||||
orderGroupsByButtonGroup = new javax.swing.ButtonGroup();
|
|
||||||
javax.swing.ButtonGroup parentIncludeButtonGroup = new javax.swing.ButtonGroup();
|
javax.swing.ButtonGroup parentIncludeButtonGroup = new javax.swing.ButtonGroup();
|
||||||
filtersScrollPane = new javax.swing.JScrollPane();
|
filtersScrollPane = new javax.swing.JScrollPane();
|
||||||
filtersPanel = new javax.swing.JPanel();
|
filtersPanel = new javax.swing.JPanel();
|
||||||
@ -1114,10 +1116,9 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
groupByCombobox = new javax.swing.JComboBox<>();
|
groupByCombobox = new javax.swing.JComboBox<>();
|
||||||
orderByCombobox = new javax.swing.JComboBox<>();
|
orderByCombobox = new javax.swing.JComboBox<>();
|
||||||
orderGroupsByLabel = new javax.swing.JLabel();
|
orderGroupsByLabel = new javax.swing.JLabel();
|
||||||
attributeRadioButton = new javax.swing.JRadioButton();
|
|
||||||
groupSizeRadioButton = new javax.swing.JRadioButton();
|
|
||||||
orderByLabel = new javax.swing.JLabel();
|
orderByLabel = new javax.swing.JLabel();
|
||||||
groupByLabel = new javax.swing.JLabel();
|
groupByLabel = new javax.swing.JLabel();
|
||||||
|
groupSortingComboBox = new javax.swing.JComboBox<>();
|
||||||
errorLabel = new javax.swing.JLabel();
|
errorLabel = new javax.swing.JLabel();
|
||||||
cancelButton = new javax.swing.JButton();
|
cancelButton = new javax.swing.JButton();
|
||||||
|
|
||||||
@ -1561,13 +1562,6 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
|
|
||||||
org.openide.awt.Mnemonics.setLocalizedText(orderGroupsByLabel, org.openide.util.NbBundle.getMessage(FileSearchPanel.class, "FileSearchPanel.orderGroupsByLabel.text")); // NOI18N
|
org.openide.awt.Mnemonics.setLocalizedText(orderGroupsByLabel, org.openide.util.NbBundle.getMessage(FileSearchPanel.class, "FileSearchPanel.orderGroupsByLabel.text")); // NOI18N
|
||||||
|
|
||||||
orderGroupsByButtonGroup.add(attributeRadioButton);
|
|
||||||
attributeRadioButton.setSelected(true);
|
|
||||||
org.openide.awt.Mnemonics.setLocalizedText(attributeRadioButton, org.openide.util.NbBundle.getMessage(FileSearchPanel.class, "FileSearchPanel.attributeRadioButton.text")); // NOI18N
|
|
||||||
|
|
||||||
orderGroupsByButtonGroup.add(groupSizeRadioButton);
|
|
||||||
org.openide.awt.Mnemonics.setLocalizedText(groupSizeRadioButton, org.openide.util.NbBundle.getMessage(FileSearchPanel.class, "FileSearchPanel.groupSizeRadioButton.text")); // NOI18N
|
|
||||||
|
|
||||||
org.openide.awt.Mnemonics.setLocalizedText(orderByLabel, org.openide.util.NbBundle.getMessage(FileSearchPanel.class, "FileSearchPanel.orderByLabel.text")); // NOI18N
|
org.openide.awt.Mnemonics.setLocalizedText(orderByLabel, org.openide.util.NbBundle.getMessage(FileSearchPanel.class, "FileSearchPanel.orderByLabel.text")); // NOI18N
|
||||||
|
|
||||||
org.openide.awt.Mnemonics.setLocalizedText(groupByLabel, org.openide.util.NbBundle.getMessage(FileSearchPanel.class, "FileSearchPanel.groupByLabel.text")); // NOI18N
|
org.openide.awt.Mnemonics.setLocalizedText(groupByLabel, org.openide.util.NbBundle.getMessage(FileSearchPanel.class, "FileSearchPanel.groupByLabel.text")); // NOI18N
|
||||||
@ -1579,44 +1573,36 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
.addGroup(sortingPanelLayout.createSequentialGroup()
|
.addGroup(sortingPanelLayout.createSequentialGroup()
|
||||||
.addContainerGap()
|
.addContainerGap()
|
||||||
.addGroup(sortingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
.addGroup(sortingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, sortingPanelLayout.createSequentialGroup()
|
.addGroup(sortingPanelLayout.createSequentialGroup()
|
||||||
.addGap(0, 0, Short.MAX_VALUE)
|
.addComponent(groupByLabel)
|
||||||
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
|
||||||
.addComponent(groupByCombobox, javax.swing.GroupLayout.PREFERRED_SIZE, 253, javax.swing.GroupLayout.PREFERRED_SIZE))
|
.addComponent(groupByCombobox, javax.swing.GroupLayout.PREFERRED_SIZE, 253, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||||
.addGroup(sortingPanelLayout.createSequentialGroup()
|
.addGroup(sortingPanelLayout.createSequentialGroup()
|
||||||
.addGroup(sortingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
.addGroup(sortingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
.addGroup(sortingPanelLayout.createSequentialGroup()
|
.addGroup(sortingPanelLayout.createSequentialGroup()
|
||||||
.addGap(37, 37, 37)
|
.addComponent(orderGroupsByLabel)
|
||||||
.addComponent(attributeRadioButton))
|
.addGap(0, 0, Short.MAX_VALUE))
|
||||||
.addComponent(groupByLabel)
|
.addComponent(orderByLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
|
||||||
.addGroup(sortingPanelLayout.createSequentialGroup()
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
|
||||||
.addGap(17, 17, 17)
|
.addGroup(sortingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
.addComponent(orderGroupsByLabel))
|
.addComponent(groupSortingComboBox, javax.swing.GroupLayout.Alignment.TRAILING, 0, 253, Short.MAX_VALUE)
|
||||||
.addGroup(sortingPanelLayout.createSequentialGroup()
|
.addComponent(orderByCombobox, javax.swing.GroupLayout.Alignment.TRAILING, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
|
||||||
.addGap(37, 37, 37)
|
|
||||||
.addComponent(groupSizeRadioButton))
|
|
||||||
.addGroup(sortingPanelLayout.createSequentialGroup()
|
|
||||||
.addComponent(orderByLabel)
|
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
|
||||||
.addComponent(orderByCombobox, javax.swing.GroupLayout.PREFERRED_SIZE, 253, javax.swing.GroupLayout.PREFERRED_SIZE)))
|
|
||||||
.addGap(0, 0, Short.MAX_VALUE)))
|
|
||||||
.addContainerGap())
|
.addContainerGap())
|
||||||
);
|
);
|
||||||
|
|
||||||
sortingPanelLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {groupByCombobox, orderByCombobox});
|
sortingPanelLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {groupByCombobox, groupSortingComboBox, orderByCombobox});
|
||||||
|
|
||||||
sortingPanelLayout.setVerticalGroup(
|
sortingPanelLayout.setVerticalGroup(
|
||||||
sortingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
sortingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
.addGroup(sortingPanelLayout.createSequentialGroup()
|
.addGroup(sortingPanelLayout.createSequentialGroup()
|
||||||
.addGap(8, 8, 8)
|
.addGap(20, 20, 20)
|
||||||
.addGroup(sortingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
.addGroup(sortingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||||
.addComponent(groupByCombobox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(groupByCombobox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addComponent(groupByLabel))
|
.addComponent(groupByLabel))
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
.addComponent(orderGroupsByLabel)
|
.addGroup(sortingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addComponent(groupSortingComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addComponent(attributeRadioButton)
|
.addComponent(orderGroupsByLabel))
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
|
||||||
.addComponent(groupSizeRadioButton)
|
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
.addGroup(sortingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
.addGroup(sortingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||||
.addComponent(orderByCombobox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(orderByCombobox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
@ -1662,7 +1648,7 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
|
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
|
||||||
.addGap(6, 6, 6)
|
.addGap(6, 6, 6)
|
||||||
.addComponent(filtersScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 331, Short.MAX_VALUE)
|
.addComponent(filtersScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 360, Short.MAX_VALUE)
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
.addComponent(sortingPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(sortingPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
@ -1722,8 +1708,7 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
cancelButton.setEnabled(!enabled);
|
cancelButton.setEnabled(!enabled);
|
||||||
orderByCombobox.setEnabled(enabled);
|
orderByCombobox.setEnabled(enabled);
|
||||||
groupByCombobox.setEnabled(enabled);
|
groupByCombobox.setEnabled(enabled);
|
||||||
attributeRadioButton.setEnabled(enabled);
|
groupSortingComboBox.setEnabled(enabled);
|
||||||
groupSizeRadioButton.setEnabled(enabled);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1832,7 +1817,6 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
|
|
||||||
// Variables declaration - do not modify//GEN-BEGIN:variables
|
// Variables declaration - do not modify//GEN-BEGIN:variables
|
||||||
private javax.swing.JButton addButton;
|
private javax.swing.JButton addButton;
|
||||||
private javax.swing.JRadioButton attributeRadioButton;
|
|
||||||
private javax.swing.JButton cancelButton;
|
private javax.swing.JButton cancelButton;
|
||||||
private javax.swing.JCheckBox crFrequencyCheckbox;
|
private javax.swing.JCheckBox crFrequencyCheckbox;
|
||||||
private javax.swing.JList<Frequency> crFrequencyList;
|
private javax.swing.JList<Frequency> crFrequencyList;
|
||||||
@ -1849,7 +1833,7 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
private javax.swing.JRadioButton fullRadioButton;
|
private javax.swing.JRadioButton fullRadioButton;
|
||||||
private javax.swing.JComboBox<GroupingAttributeType> groupByCombobox;
|
private javax.swing.JComboBox<GroupingAttributeType> groupByCombobox;
|
||||||
private javax.swing.JLabel groupByLabel;
|
private javax.swing.JLabel groupByLabel;
|
||||||
private javax.swing.JRadioButton groupSizeRadioButton;
|
private javax.swing.JComboBox<GroupSortingAlgorithm> groupSortingComboBox;
|
||||||
private javax.swing.JCheckBox hashSetCheckbox;
|
private javax.swing.JCheckBox hashSetCheckbox;
|
||||||
private javax.swing.JList<String> hashSetList;
|
private javax.swing.JList<String> hashSetList;
|
||||||
private javax.swing.JScrollPane hashSetScrollPane;
|
private javax.swing.JScrollPane hashSetScrollPane;
|
||||||
@ -1867,7 +1851,6 @@ final class FileSearchPanel extends javax.swing.JPanel implements ActionListener
|
|||||||
private javax.swing.JScrollPane objectsScrollPane;
|
private javax.swing.JScrollPane objectsScrollPane;
|
||||||
private javax.swing.JComboBox<SortingMethod> orderByCombobox;
|
private javax.swing.JComboBox<SortingMethod> orderByCombobox;
|
||||||
private javax.swing.JLabel orderByLabel;
|
private javax.swing.JLabel orderByLabel;
|
||||||
private javax.swing.ButtonGroup orderGroupsByButtonGroup;
|
|
||||||
private javax.swing.JLabel orderGroupsByLabel;
|
private javax.swing.JLabel orderGroupsByLabel;
|
||||||
private javax.swing.JCheckBox parentCheckbox;
|
private javax.swing.JCheckBox parentCheckbox;
|
||||||
private javax.swing.JLabel parentLabel;
|
private javax.swing.JLabel parentLabel;
|
||||||
|
@ -240,13 +240,13 @@ class FileSorter implements Comparator<ResultFile> {
|
|||||||
* Enum for selecting the primary method for sorting result files.
|
* Enum for selecting the primary method for sorting result files.
|
||||||
*/
|
*/
|
||||||
@NbBundle.Messages({
|
@NbBundle.Messages({
|
||||||
"FileSorter.SortingMethod.datasource.displayName=Data source",
|
"FileSorter.SortingMethod.datasource.displayName=Data Source",
|
||||||
"FileSorter.SortingMethod.filename.displayName=File name",
|
"FileSorter.SortingMethod.filename.displayName=File Name",
|
||||||
"FileSorter.SortingMethod.filesize.displayName=File size",
|
"FileSorter.SortingMethod.filesize.displayName=File Size",
|
||||||
"FileSorter.SortingMethod.filetype.displayName=File type",
|
"FileSorter.SortingMethod.filetype.displayName=File Type",
|
||||||
"FileSorter.SortingMethod.frequency.displayName=Central repo frequency",
|
"FileSorter.SortingMethod.frequency.displayName=Central Repo Frequency",
|
||||||
"FileSorter.SortingMethod.keywordlist.displayName=Keyword list names",
|
"FileSorter.SortingMethod.keywordlist.displayName=Keyword List Names",
|
||||||
"FileSorter.SortingMethod.fullPath.displayName=Full path"})
|
"FileSorter.SortingMethod.fullPath.displayName=Full Path"})
|
||||||
enum SortingMethod {
|
enum SortingMethod {
|
||||||
BY_FILE_NAME(new ArrayList<>(),
|
BY_FILE_NAME(new ArrayList<>(),
|
||||||
Bundle.FileSorter_SortingMethod_filename_displayName()), // Sort alphabetically by file name
|
Bundle.FileSorter_SortingMethod_filename_displayName()), // Sort alphabetically by file name
|
||||||
|
@ -59,7 +59,7 @@ class SearchResults {
|
|||||||
* Create an dummy SearchResults object that can be used in the UI before the search is finished.
|
* Create an dummy SearchResults object that can be used in the UI before the search is finished.
|
||||||
*/
|
*/
|
||||||
SearchResults() {
|
SearchResults() {
|
||||||
this.groupSortingType = FileGroup.GroupSortingAlgorithm.BY_GROUP_KEY;
|
this.groupSortingType = FileGroup.GroupSortingAlgorithm.BY_GROUP_NAME;
|
||||||
this.attrType = new FileSearch.FileSizeAttribute();
|
this.attrType = new FileSearch.FileSizeAttribute();
|
||||||
this.fileSorter = new FileSorter(FileSorter.SortingMethod.BY_FILE_NAME);
|
this.fileSorter = new FileSorter(FileSorter.SortingMethod.BY_FILE_NAME);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user