Autopsy  4.19.3
Graphical digital forensics platform for The Sleuth Kit and other tools.
ImageFilterPanel.java
Go to the documentation of this file.
1 /*
2  * Autopsy
3  *
4  * Copyright 2020 Basis Technology Corp.
5  * Contact: carrier <at> sleuthkit <dot> org
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  * http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  */
19 package org.sleuthkit.autopsy.discovery.ui;
20 
21 import java.util.ArrayList;
22 import java.util.List;
26 
30 final class ImageFilterPanel extends AbstractFiltersPanel {
31 
32  private static final long serialVersionUID = 1L;
33  private static final SearchData.Type TYPE = SearchData.Type.IMAGE;
34 
38  @ThreadConfined(type = ThreadConfined.ThreadType.AWT)
39  ImageFilterPanel() {
40  super();
41  initComponents();
42  SizeFilterPanel sizeFilterPanel = new SizeFilterPanel(TYPE);
43  List<SearchData.FileSize> defaultSizes = new ArrayList<>();
44  defaultSizes.add(SearchData.FileSize.LARGE_IMAGE);
45  defaultSizes.add(SearchData.FileSize.XLARGE_IMAGE);
46  defaultSizes.add(SearchData.FileSize.XXLARGE_IMAGE);
47  addFilter(sizeFilterPanel, true, defaultSizes, 0);
48  addFilter(new DataSourceFilterPanel(), false, null, 0);
49  List<SearchData.Frequency> defaultFrequencies = new ArrayList<>();
50  if (!CentralRepository.isEnabled()) {
51  defaultFrequencies.add(SearchData.Frequency.UNKNOWN);
52  } else {
53  defaultFrequencies.add(SearchData.Frequency.RARE);
54  defaultFrequencies.add(SearchData.Frequency.UNIQUE);
55  defaultFrequencies.add(SearchData.Frequency.COMMON);
56  }
57  addFilter(new PastOccurrencesFilterPanel(TYPE), true, defaultFrequencies, 0);
58  addFilter(new UserCreatedFilterPanel(), false, null, 0);
59  addFilter(new HashSetFilterPanel(), false, null, 1);
60  addFilter(new InterestingItemsFilterPanel(), false, null, 1);
61  addFilter(new ObjectDetectedFilterPanel(), false, null, 1);
62  addFilter(new ParentFolderFilterPanel(), false, null, 1);
63  addPanelsToScrollPane(imageFiltersSplitPane);
64 
65  }
66 
72  @SuppressWarnings("unchecked")
73  // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
74  private void initComponents() {
75 
76  javax.swing.JScrollPane imageFiltersScrollPane = new javax.swing.JScrollPane();
77  javax.swing.JPanel imageFiltersPanel = new javax.swing.JPanel();
78  imageFiltersSplitPane = new javax.swing.JSplitPane();
79 
80  setLayout(new java.awt.BorderLayout());
81 
82  imageFiltersSplitPane.setBorder(javax.swing.BorderFactory.createTitledBorder(org.openide.util.NbBundle.getMessage(ImageFilterPanel.class, "ImageFilterPanel.imageFiltersSplitPane.border.title"))); // NOI18N
83  imageFiltersSplitPane.setResizeWeight(0.5);
84  imageFiltersSplitPane.setToolTipText(org.openide.util.NbBundle.getMessage(ImageFilterPanel.class, "ImageFilterPanel.imageFiltersSplitPane.toolTipText")); // NOI18N
85 
86  javax.swing.GroupLayout imageFiltersPanelLayout = new javax.swing.GroupLayout(imageFiltersPanel);
87  imageFiltersPanel.setLayout(imageFiltersPanelLayout);
88  imageFiltersPanelLayout.setHorizontalGroup(
89  imageFiltersPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
90  .addGroup(imageFiltersPanelLayout.createSequentialGroup()
91  .addGap(8, 8, 8)
92  .addComponent(imageFiltersSplitPane)
93  .addGap(8, 8, 8))
94  );
95  imageFiltersPanelLayout.setVerticalGroup(
96  imageFiltersPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
97  .addGroup(imageFiltersPanelLayout.createSequentialGroup()
98  .addGap(8, 8, 8)
99  .addComponent(imageFiltersSplitPane)
100  .addGap(8, 8, 8))
101  );
102 
103  imageFiltersScrollPane.setViewportView(imageFiltersPanel);
104 
105  add(imageFiltersScrollPane, java.awt.BorderLayout.CENTER);
106  }// </editor-fold>//GEN-END:initComponents
107 
108  @Override
109  SearchData.Type getType() {
110  return TYPE;
111  }
112 
113  // Variables declaration - do not modify//GEN-BEGIN:variables
114  private javax.swing.JSplitPane imageFiltersSplitPane;
115  // End of variables declaration//GEN-END:variables
116 
117 }
Type(int value, String displayName, Collection< String > mediaTypes, Collection< BlackboardArtifact.ARTIFACT_TYPE > artifactTypes)

Copyright © 2012-2022 Basis Technology. Generated on: Tue Jun 27 2023
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.