19 package org.sleuthkit.autopsy.casemodule.datasourcesummary;
21 import java.text.DecimalFormat;
23 import java.util.HashMap;
24 import java.util.logging.Level;
26 import javax.swing.table.DefaultTableModel;
27 import org.openide.util.NbBundle.Messages;
35 class DataSourceSummaryDetailsPanel
extends javax.swing.JPanel {
38 private static final long serialVersionUID = 1L;
39 private Map<Long, String> osDetailMap =
new HashMap<>();
40 private static final Integer SIZE_COVERSION_CONSTANT = 1000;
41 private static final DecimalFormat APPROXIMATE_SIZE_FORMAT =
new DecimalFormat(
"#.##");
42 private final Map<Long, Long> unallocatedFilesSizeMap;
43 private final Map<Long, String> usageMap;
44 private static final Logger logger = Logger.getLogger(DataSourceSummaryDetailsPanel.class.getName());
49 @Messages({
"DataSourceSummaryDetailsPanel.getDataSources.error.text=Failed to get the list of datasources for the current case.",
50 "DataSourceSummaryDetailsPanel.getDataSources.error.title=Load Failure"})
51 DataSourceSummaryDetailsPanel(Map<Long, String> usageMap) {
53 this.usageMap = usageMap;
54 this.unallocatedFilesSizeMap = DataSourceInfoUtilities.getSizeOfUnallocatedFiles();
55 osDetailMap = DataSourceInfoUtilities.getOperatingSystems();
63 void updateDetailsPanelData(DataSource selectedDataSource) {
65 if (selectedDataSource != null) {
66 String sizeString =
"";
67 String sectorSizeString =
"";
68 String md5String =
"";
69 String sha1String =
"";
70 String sha256String =
"";
71 String acquisitionDetailsString =
"";
72 String imageTypeString =
"";
73 String[] filePaths =
new String[0];
74 String osDetailString = osDetailMap.get(selectedDataSource.getId()) == null ?
"" : osDetailMap.get(selectedDataSource.getId());
75 String dataSourceTypeString = usageMap.get(selectedDataSource.getId()) == null ?
"" : usageMap.get(selectedDataSource.getId());
77 acquisitionDetailsString = selectedDataSource.getAcquisitionDetails();
78 }
catch (TskCoreException ex) {
79 logger.log(Level.WARNING,
"Unable to get aquisition details for selected data source", ex);
81 if (selectedDataSource instanceof Image) {
82 imageTypeString = ((Image) selectedDataSource).getType().getName();
83 filePaths = ((Image) selectedDataSource).getPaths();
84 sizeString = getSizeString(selectedDataSource.getSize());
85 sectorSizeString = getSizeString(((Image) selectedDataSource).getSsize());
88 md5String = ((Image) selectedDataSource).getMd5();
89 if (md5String == null) {
92 }
catch (TskCoreException ex) {
93 logger.log(Level.WARNING,
"Unable to get MD5 for selected data source", ex);
96 sha1String = ((Image) selectedDataSource).getSha1();
97 if (sha1String == null) {
100 }
catch (TskCoreException ex) {
101 logger.log(Level.WARNING,
"Unable to get SHA1 for selected data source", ex);
104 sha256String = ((Image) selectedDataSource).getSha256();
105 if (sha256String == null) {
108 }
catch (TskCoreException ex) {
109 logger.log(Level.WARNING,
"Unable to get SHA256 for selected data source", ex);
112 displayNameValue.setText(selectedDataSource.getName());
113 originalNameValue.setText(selectedDataSource.getName());
114 deviceIdValue.setText(selectedDataSource.getDeviceId());
115 dataSourceUsageValue.setText(dataSourceTypeString);
116 operatingSystemValue.setText(osDetailString);
117 timeZoneValue.setText(selectedDataSource.getTimeZone());
118 acquisitionDetailsTextArea.setText(acquisitionDetailsString);
119 imageTypeValue.setText(imageTypeString);
120 sizeValue.setText(sizeString);
121 unallocatedSizeValue.setText(getSizeString(unallocatedFilesSizeMap.get(selectedDataSource.getId())));
122 sectorSizeValue.setText(sectorSizeString);
123 md5HashValue.setText(md5String);
124 sha1HashValue.setText(sha1String);
125 sha256HashValue.setText(sha256String);
126 for (String path : filePaths) {
127 ((DefaultTableModel) filePathsTable.getModel()).addRow(
new Object[]{path});
130 updateFieldVisibility();
143 "DataSourceSummaryDetailsPanel.units.bytes= bytes",
144 "DataSourceSummaryDetailsPanel.units.kilobytes= kB",
145 "DataSourceSummaryDetailsPanel.units.megabytes= MB",
146 "DataSourceSummaryDetailsPanel.units.gigabytes= GB",
147 "DataSourceSummaryDetailsPanel.units.terabytes= TB",
148 "DataSourceSummaryDetailsPanel.units.petabytes= PB"
150 private String getSizeString(Long size) {
154 double approximateSize = size;
155 if (approximateSize < SIZE_COVERSION_CONSTANT) {
156 return String.valueOf(size) + Bundle.DataSourceSummaryDetailsPanel_units_bytes();
158 approximateSize /= SIZE_COVERSION_CONSTANT;
159 if (approximateSize < SIZE_COVERSION_CONSTANT) {
160 return APPROXIMATE_SIZE_FORMAT.format(approximateSize) + Bundle.DataSourceSummaryDetailsPanel_units_kilobytes()
161 +
" (" + String.valueOf(size) + Bundle.DataSourceSummaryDetailsPanel_units_bytes() +
")";
163 approximateSize /= SIZE_COVERSION_CONSTANT;
164 if (approximateSize < SIZE_COVERSION_CONSTANT) {
165 return APPROXIMATE_SIZE_FORMAT.format(approximateSize) + Bundle.DataSourceSummaryDetailsPanel_units_megabytes()
166 +
" (" + String.valueOf(size) + Bundle.DataSourceSummaryDetailsPanel_units_bytes() +
")";
168 approximateSize /= SIZE_COVERSION_CONSTANT;
169 if (approximateSize < SIZE_COVERSION_CONSTANT) {
170 return APPROXIMATE_SIZE_FORMAT.format(approximateSize) + Bundle.DataSourceSummaryDetailsPanel_units_gigabytes()
171 +
" (" + String.valueOf(size) + Bundle.DataSourceSummaryDetailsPanel_units_bytes() +
")";
173 approximateSize /= SIZE_COVERSION_CONSTANT;
174 if (approximateSize < SIZE_COVERSION_CONSTANT) {
175 return APPROXIMATE_SIZE_FORMAT.format(approximateSize) + Bundle.DataSourceSummaryDetailsPanel_units_terabytes()
176 +
" (" + String.valueOf(size) + Bundle.DataSourceSummaryDetailsPanel_units_bytes() +
")";
178 approximateSize /= SIZE_COVERSION_CONSTANT;
179 return APPROXIMATE_SIZE_FORMAT.format(approximateSize) + Bundle.DataSourceSummaryDetailsPanel_units_petabytes()
180 +
" (" + String.valueOf(size) + Bundle.DataSourceSummaryDetailsPanel_units_bytes() +
")";
187 private void updateFieldVisibility() {
188 displayNameValue.setVisible(!displayNameValue.getText().isEmpty());
189 displayNameLabel.setVisible(!displayNameValue.getText().isEmpty());
190 originalNameValue.setVisible(!originalNameValue.getText().isEmpty());
191 originalNameLabel.setVisible(!originalNameValue.getText().isEmpty());
192 deviceIdValue.setVisible(!deviceIdValue.getText().isEmpty());
193 deviceIdLabel.setVisible(!deviceIdValue.getText().isEmpty());
194 dataSourceUsageValue.setVisible(!dataSourceUsageValue.getText().isEmpty());
195 dataSourceUsageLabel.setVisible(!dataSourceUsageValue.getText().isEmpty());
196 operatingSystemValue.setVisible(!operatingSystemValue.getText().isEmpty());
197 operatingSystemLabel.setVisible(!operatingSystemValue.getText().isEmpty());
198 timeZoneValue.setVisible(!timeZoneValue.getText().isEmpty());
199 timeZoneLabel.setVisible(!timeZoneValue.getText().isEmpty());
200 acquisitionDetailsTextArea.setVisible(!acquisitionDetailsTextArea.getText().isEmpty());
201 acquisitionDetailsLabel.setVisible(!acquisitionDetailsTextArea.getText().isEmpty());
202 acquisitionDetailsScrollPane.setVisible(!acquisitionDetailsTextArea.getText().isEmpty());
203 imageTypeValue.setVisible(!imageTypeValue.getText().isEmpty());
204 imageTypeLabel.setVisible(!imageTypeValue.getText().isEmpty());
205 sizeValue.setVisible(!sizeValue.getText().isEmpty());
206 sizeLabel.setVisible(!sizeValue.getText().isEmpty());
207 sectorSizeValue.setVisible(!sectorSizeValue.getText().isEmpty());
208 sectorSizeLabel.setVisible(!sectorSizeValue.getText().isEmpty());
209 md5HashValue.setVisible(!md5HashValue.getText().isEmpty());
210 md5HashLabel.setVisible(!md5HashValue.getText().isEmpty());
211 sha1HashValue.setVisible(!sha1HashValue.getText().isEmpty());
212 sha1HashLabel.setVisible(!sha1HashValue.getText().isEmpty());
213 sha256HashValue.setVisible(!sha256HashValue.getText().isEmpty());
214 sha256HashLabel.setVisible(!sha256HashValue.getText().isEmpty());
215 unallocatedSizeValue.setVisible(!unallocatedSizeValue.getText().isEmpty());
216 unallocatedSizeLabel.setVisible(!unallocatedSizeValue.getText().isEmpty());
217 filePathsTable.setVisible(filePathsTable.getRowCount() > 0);
218 filePathsLabel.setVisible(filePathsTable.getRowCount() > 0);
219 filePathsScrollPane.setVisible(filePathsTable.getRowCount() > 0);
225 private void clearTableValues() {
226 displayNameValue.setText(
"");
227 originalNameValue.setText(
"");
228 deviceIdValue.setText(
"");
229 dataSourceUsageValue.setText(
"");
230 operatingSystemValue.setText(
"");
231 timeZoneValue.setText(
"");
232 acquisitionDetailsTextArea.setText(
"");
233 imageTypeValue.setText(
"");
234 sizeValue.setText(
"");
235 sectorSizeValue.setText(
"");
236 md5HashValue.setText(
"");
237 sha1HashValue.setText(
"");
238 sha256HashValue.setText(
"");
239 unallocatedSizeValue.setText(
"");
240 ((DefaultTableModel) filePathsTable.getModel()).setRowCount(0);
248 @SuppressWarnings(
"unchecked")
250 private
void initComponents() {
251 java.awt.GridBagConstraints gridBagConstraints;
253 jScrollPane1 =
new javax.swing.JScrollPane();
254 jPanel1 =
new javax.swing.JPanel();
255 operatingSystemLabel =
new javax.swing.JLabel();
256 displayNameLabel =
new javax.swing.JLabel();
257 originalNameLabel =
new javax.swing.JLabel();
258 sha1HashValue =
new javax.swing.JLabel();
259 operatingSystemValue =
new javax.swing.JLabel();
260 displayNameValue =
new javax.swing.JLabel();
261 sha256HashValue =
new javax.swing.JLabel();
262 originalNameValue =
new javax.swing.JLabel();
263 deviceIdValue =
new javax.swing.JLabel();
264 filePathsScrollPane =
new javax.swing.JScrollPane();
265 filePathsTable =
new javax.swing.JTable();
266 dataSourceUsageValue =
new javax.swing.JLabel();
267 timeZoneValue =
new javax.swing.JLabel();
268 imageTypeValue =
new javax.swing.JLabel();
269 md5HashValue =
new javax.swing.JLabel();
270 sectorSizeValue =
new javax.swing.JLabel();
271 sizeValue =
new javax.swing.JLabel();
272 filePathsLabel =
new javax.swing.JLabel();
273 sha256HashLabel =
new javax.swing.JLabel();
274 sha1HashLabel =
new javax.swing.JLabel();
275 md5HashLabel =
new javax.swing.JLabel();
276 sectorSizeLabel =
new javax.swing.JLabel();
277 sizeLabel =
new javax.swing.JLabel();
278 imageTypeLabel =
new javax.swing.JLabel();
279 acquisitionDetailsLabel =
new javax.swing.JLabel();
280 timeZoneLabel =
new javax.swing.JLabel();
281 dataSourceUsageLabel =
new javax.swing.JLabel();
282 deviceIdLabel =
new javax.swing.JLabel();
283 acquisitionDetailsScrollPane =
new javax.swing.JScrollPane();
284 acquisitionDetailsTextArea =
new javax.swing.JTextArea();
285 filler1 =
new javax.swing.Box.Filler(
new java.awt.Dimension(0, 0),
new java.awt.Dimension(0, 0),
new java.awt.Dimension(32767, 32767));
286 filler2 =
new javax.swing.Box.Filler(
new java.awt.Dimension(0, 0),
new java.awt.Dimension(0, 0),
new java.awt.Dimension(32767, 32767));
287 unallocatedSizeLabel =
new javax.swing.JLabel();
288 unallocatedSizeValue =
new javax.swing.JLabel();
290 jPanel1.setLayout(
new java.awt.GridBagLayout());
292 org.openide.awt.Mnemonics.setLocalizedText(operatingSystemLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.operatingSystemLabel.text"));
293 gridBagConstraints =
new java.awt.GridBagConstraints();
294 gridBagConstraints.gridx = 0;
295 gridBagConstraints.gridy = 4;
296 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
297 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
298 gridBagConstraints.insets =
new java.awt.Insets(0, 10, 0, 4);
299 jPanel1.add(operatingSystemLabel, gridBagConstraints);
301 org.openide.awt.Mnemonics.setLocalizedText(displayNameLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.displayNameLabel.text"));
302 gridBagConstraints =
new java.awt.GridBagConstraints();
303 gridBagConstraints.gridx = 0;
304 gridBagConstraints.gridy = 0;
305 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
306 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
307 gridBagConstraints.insets =
new java.awt.Insets(10, 10, 0, 4);
308 jPanel1.add(displayNameLabel, gridBagConstraints);
310 org.openide.awt.Mnemonics.setLocalizedText(originalNameLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.originalNameLabel.text"));
311 gridBagConstraints =
new java.awt.GridBagConstraints();
312 gridBagConstraints.gridx = 0;
313 gridBagConstraints.gridy = 1;
314 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
315 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
316 gridBagConstraints.insets =
new java.awt.Insets(0, 10, 0, 4);
317 jPanel1.add(originalNameLabel, gridBagConstraints);
319 org.openide.awt.Mnemonics.setLocalizedText(sha1HashValue,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.sha1HashValue.text"));
320 gridBagConstraints =
new java.awt.GridBagConstraints();
321 gridBagConstraints.gridx = 1;
322 gridBagConstraints.gridy = 12;
323 gridBagConstraints.gridwidth = 4;
324 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
325 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
326 gridBagConstraints.weightx = 0.5;
327 gridBagConstraints.insets =
new java.awt.Insets(0, 0, 0, 10);
328 jPanel1.add(sha1HashValue, gridBagConstraints);
330 org.openide.awt.Mnemonics.setLocalizedText(operatingSystemValue,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.operatingSystemValue.text"));
331 operatingSystemValue.setToolTipText(
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.operatingSystemValue.toolTipText"));
332 gridBagConstraints =
new java.awt.GridBagConstraints();
333 gridBagConstraints.gridx = 1;
334 gridBagConstraints.gridy = 4;
335 gridBagConstraints.gridwidth = 4;
336 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
337 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
338 gridBagConstraints.weightx = 0.5;
339 gridBagConstraints.insets =
new java.awt.Insets(0, 0, 0, 10);
340 jPanel1.add(operatingSystemValue, gridBagConstraints);
342 org.openide.awt.Mnemonics.setLocalizedText(displayNameValue,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.displayNameValue.text"));
343 gridBagConstraints =
new java.awt.GridBagConstraints();
344 gridBagConstraints.gridx = 1;
345 gridBagConstraints.gridy = 0;
346 gridBagConstraints.gridwidth = 4;
347 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
348 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
349 gridBagConstraints.weightx = 0.5;
350 gridBagConstraints.insets =
new java.awt.Insets(10, 0, 0, 10);
351 jPanel1.add(displayNameValue, gridBagConstraints);
353 org.openide.awt.Mnemonics.setLocalizedText(sha256HashValue,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.sha256HashValue.text"));
354 gridBagConstraints =
new java.awt.GridBagConstraints();
355 gridBagConstraints.gridx = 1;
356 gridBagConstraints.gridy = 13;
357 gridBagConstraints.gridwidth = 4;
358 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
359 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
360 gridBagConstraints.weightx = 0.5;
361 gridBagConstraints.insets =
new java.awt.Insets(0, 0, 6, 10);
362 jPanel1.add(sha256HashValue, gridBagConstraints);
364 org.openide.awt.Mnemonics.setLocalizedText(originalNameValue,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.originalNameValue.text"));
365 gridBagConstraints =
new java.awt.GridBagConstraints();
366 gridBagConstraints.gridx = 1;
367 gridBagConstraints.gridy = 1;
368 gridBagConstraints.gridwidth = 4;
369 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
370 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
371 gridBagConstraints.weightx = 0.5;
372 gridBagConstraints.insets =
new java.awt.Insets(0, 0, 0, 10);
373 jPanel1.add(originalNameValue, gridBagConstraints);
375 org.openide.awt.Mnemonics.setLocalizedText(deviceIdValue,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.deviceIdValue.text"));
376 deviceIdValue.setToolTipText(
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.deviceIdValue.toolTipText"));
377 gridBagConstraints =
new java.awt.GridBagConstraints();
378 gridBagConstraints.gridx = 1;
379 gridBagConstraints.gridy = 2;
380 gridBagConstraints.gridwidth = 4;
381 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
382 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
383 gridBagConstraints.weightx = 0.5;
384 gridBagConstraints.insets =
new java.awt.Insets(0, 0, 6, 10);
385 jPanel1.add(deviceIdValue, gridBagConstraints);
387 filePathsScrollPane.setPreferredSize(
new java.awt.Dimension(80, 50));
389 filePathsTable.setModel(
new javax.swing.table.DefaultTableModel(
397 boolean[] canEdit =
new boolean [] {
401 public boolean isCellEditable(
int rowIndex,
int columnIndex) {
402 return canEdit [columnIndex];
405 filePathsTable.setTableHeader(null);
406 filePathsScrollPane.setViewportView(filePathsTable);
407 if (filePathsTable.getColumnModel().getColumnCount() > 0) {
408 filePathsTable.getColumnModel().getColumn(0).setHeaderValue(
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.filePathsTable.columnModel.title0"));
411 gridBagConstraints =
new java.awt.GridBagConstraints();
412 gridBagConstraints.gridx = 1;
413 gridBagConstraints.gridy = 14;
414 gridBagConstraints.gridwidth = 4;
415 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
416 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
417 gridBagConstraints.weightx = 0.5;
418 gridBagConstraints.weighty = 1.2;
419 gridBagConstraints.insets =
new java.awt.Insets(6, 0, 10, 10);
420 jPanel1.add(filePathsScrollPane, gridBagConstraints);
422 org.openide.awt.Mnemonics.setLocalizedText(dataSourceUsageValue,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.dataSourceUsageValue.text"));
423 gridBagConstraints =
new java.awt.GridBagConstraints();
424 gridBagConstraints.gridx = 1;
425 gridBagConstraints.gridy = 3;
426 gridBagConstraints.gridwidth = 4;
427 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
428 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
429 gridBagConstraints.weightx = 0.5;
430 gridBagConstraints.insets =
new java.awt.Insets(6, 0, 0, 10);
431 jPanel1.add(dataSourceUsageValue, gridBagConstraints);
433 org.openide.awt.Mnemonics.setLocalizedText(timeZoneValue,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.timeZoneValue.text"));
434 gridBagConstraints =
new java.awt.GridBagConstraints();
435 gridBagConstraints.gridx = 1;
436 gridBagConstraints.gridy = 5;
437 gridBagConstraints.gridwidth = 4;
438 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
439 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
440 gridBagConstraints.weightx = 0.5;
441 gridBagConstraints.insets =
new java.awt.Insets(0, 0, 6, 10);
442 jPanel1.add(timeZoneValue, gridBagConstraints);
444 org.openide.awt.Mnemonics.setLocalizedText(imageTypeValue,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.imageTypeValue.text"));
445 imageTypeValue.setToolTipText(
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.imageTypeValue.toolTipText"));
446 gridBagConstraints =
new java.awt.GridBagConstraints();
447 gridBagConstraints.gridx = 1;
448 gridBagConstraints.gridy = 7;
449 gridBagConstraints.gridwidth = 4;
450 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
451 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
452 gridBagConstraints.weightx = 0.5;
453 gridBagConstraints.insets =
new java.awt.Insets(6, 0, 0, 10);
454 jPanel1.add(imageTypeValue, gridBagConstraints);
456 org.openide.awt.Mnemonics.setLocalizedText(md5HashValue,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.md5HashValue.text"));
457 md5HashValue.setToolTipText(
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.md5HashValue.toolTipText"));
458 gridBagConstraints =
new java.awt.GridBagConstraints();
459 gridBagConstraints.gridx = 1;
460 gridBagConstraints.gridy = 11;
461 gridBagConstraints.gridwidth = 4;
462 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
463 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
464 gridBagConstraints.weightx = 0.5;
465 gridBagConstraints.insets =
new java.awt.Insets(0, 0, 0, 10);
466 jPanel1.add(md5HashValue, gridBagConstraints);
468 org.openide.awt.Mnemonics.setLocalizedText(sectorSizeValue,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.sectorSizeValue.text"));
469 gridBagConstraints =
new java.awt.GridBagConstraints();
470 gridBagConstraints.gridx = 1;
471 gridBagConstraints.gridy = 10;
472 gridBagConstraints.gridwidth = 4;
473 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
474 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
475 gridBagConstraints.weightx = 0.5;
476 gridBagConstraints.insets =
new java.awt.Insets(0, 0, 0, 10);
477 jPanel1.add(sectorSizeValue, gridBagConstraints);
479 org.openide.awt.Mnemonics.setLocalizedText(sizeValue,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.sizeValue.text"));
480 gridBagConstraints =
new java.awt.GridBagConstraints();
481 gridBagConstraints.gridx = 1;
482 gridBagConstraints.gridy = 8;
483 gridBagConstraints.gridwidth = 4;
484 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
485 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
486 gridBagConstraints.weightx = 0.5;
487 gridBagConstraints.insets =
new java.awt.Insets(0, 0, 0, 10);
488 jPanel1.add(sizeValue, gridBagConstraints);
490 org.openide.awt.Mnemonics.setLocalizedText(filePathsLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.filePathsLabel.text"));
491 gridBagConstraints =
new java.awt.GridBagConstraints();
492 gridBagConstraints.gridx = 0;
493 gridBagConstraints.gridy = 14;
494 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
495 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
496 gridBagConstraints.weighty = 1.2;
497 gridBagConstraints.insets =
new java.awt.Insets(6, 10, 10, 4);
498 jPanel1.add(filePathsLabel, gridBagConstraints);
500 org.openide.awt.Mnemonics.setLocalizedText(sha256HashLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.sha256HashLabel.text"));
501 gridBagConstraints =
new java.awt.GridBagConstraints();
502 gridBagConstraints.gridx = 0;
503 gridBagConstraints.gridy = 13;
504 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
505 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
506 gridBagConstraints.insets =
new java.awt.Insets(0, 10, 6, 4);
507 jPanel1.add(sha256HashLabel, gridBagConstraints);
509 org.openide.awt.Mnemonics.setLocalizedText(sha1HashLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.sha1HashLabel.text"));
510 gridBagConstraints =
new java.awt.GridBagConstraints();
511 gridBagConstraints.gridx = 0;
512 gridBagConstraints.gridy = 12;
513 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
514 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
515 gridBagConstraints.insets =
new java.awt.Insets(0, 10, 0, 4);
516 jPanel1.add(sha1HashLabel, gridBagConstraints);
518 org.openide.awt.Mnemonics.setLocalizedText(md5HashLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.md5HashLabel.text"));
519 gridBagConstraints =
new java.awt.GridBagConstraints();
520 gridBagConstraints.gridx = 0;
521 gridBagConstraints.gridy = 11;
522 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
523 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
524 gridBagConstraints.insets =
new java.awt.Insets(0, 10, 0, 4);
525 jPanel1.add(md5HashLabel, gridBagConstraints);
527 org.openide.awt.Mnemonics.setLocalizedText(sectorSizeLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.sectorSizeLabel.text"));
528 gridBagConstraints =
new java.awt.GridBagConstraints();
529 gridBagConstraints.gridx = 0;
530 gridBagConstraints.gridy = 10;
531 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
532 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
533 gridBagConstraints.insets =
new java.awt.Insets(0, 10, 0, 4);
534 jPanel1.add(sectorSizeLabel, gridBagConstraints);
536 org.openide.awt.Mnemonics.setLocalizedText(sizeLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.sizeLabel.text"));
537 gridBagConstraints =
new java.awt.GridBagConstraints();
538 gridBagConstraints.gridx = 0;
539 gridBagConstraints.gridy = 8;
540 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
541 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
542 gridBagConstraints.insets =
new java.awt.Insets(0, 10, 0, 4);
543 jPanel1.add(sizeLabel, gridBagConstraints);
545 org.openide.awt.Mnemonics.setLocalizedText(imageTypeLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.imageTypeLabel.text"));
546 gridBagConstraints =
new java.awt.GridBagConstraints();
547 gridBagConstraints.gridx = 0;
548 gridBagConstraints.gridy = 7;
549 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
550 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
551 gridBagConstraints.insets =
new java.awt.Insets(6, 10, 0, 4);
552 jPanel1.add(imageTypeLabel, gridBagConstraints);
554 org.openide.awt.Mnemonics.setLocalizedText(acquisitionDetailsLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.acquisitionDetailsLabel.text"));
555 gridBagConstraints =
new java.awt.GridBagConstraints();
556 gridBagConstraints.gridx = 0;
557 gridBagConstraints.gridy = 6;
558 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
559 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
560 gridBagConstraints.weighty = 0.6;
561 gridBagConstraints.insets =
new java.awt.Insets(6, 10, 6, 4);
562 jPanel1.add(acquisitionDetailsLabel, gridBagConstraints);
564 org.openide.awt.Mnemonics.setLocalizedText(timeZoneLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.timeZoneLabel.text"));
565 gridBagConstraints =
new java.awt.GridBagConstraints();
566 gridBagConstraints.gridx = 0;
567 gridBagConstraints.gridy = 5;
568 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
569 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
570 gridBagConstraints.insets =
new java.awt.Insets(0, 10, 6, 4);
571 jPanel1.add(timeZoneLabel, gridBagConstraints);
573 org.openide.awt.Mnemonics.setLocalizedText(dataSourceUsageLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.dataSourceUsageLabel.text"));
574 gridBagConstraints =
new java.awt.GridBagConstraints();
575 gridBagConstraints.gridx = 0;
576 gridBagConstraints.gridy = 3;
577 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
578 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
579 gridBagConstraints.insets =
new java.awt.Insets(6, 10, 0, 4);
580 jPanel1.add(dataSourceUsageLabel, gridBagConstraints);
582 org.openide.awt.Mnemonics.setLocalizedText(deviceIdLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.deviceIdLabel.text"));
583 gridBagConstraints =
new java.awt.GridBagConstraints();
584 gridBagConstraints.gridx = 0;
585 gridBagConstraints.gridy = 2;
586 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
587 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
588 gridBagConstraints.insets =
new java.awt.Insets(0, 10, 6, 4);
589 jPanel1.add(deviceIdLabel, gridBagConstraints);
591 acquisitionDetailsTextArea.setEditable(
false);
592 acquisitionDetailsTextArea.setBackground(javax.swing.UIManager.getDefaults().getColor(
"TextArea.disabledBackground"));
593 acquisitionDetailsTextArea.setColumns(20);
594 acquisitionDetailsTextArea.setRows(4);
595 acquisitionDetailsTextArea.setText(
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.acquisitionDetailsTextArea.text"));
596 acquisitionDetailsTextArea.setBorder(null);
597 acquisitionDetailsScrollPane.setViewportView(acquisitionDetailsTextArea);
599 gridBagConstraints =
new java.awt.GridBagConstraints();
600 gridBagConstraints.gridx = 1;
601 gridBagConstraints.gridy = 6;
602 gridBagConstraints.gridwidth = 4;
603 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
604 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
605 gridBagConstraints.weightx = 0.5;
606 gridBagConstraints.weighty = 0.6;
607 gridBagConstraints.insets =
new java.awt.Insets(6, 0, 6, 10);
608 jPanel1.add(acquisitionDetailsScrollPane, gridBagConstraints);
609 gridBagConstraints =
new java.awt.GridBagConstraints();
610 gridBagConstraints.gridx = 0;
611 gridBagConstraints.gridy = 15;
612 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
613 gridBagConstraints.weighty = 0.1;
614 jPanel1.add(filler1, gridBagConstraints);
615 gridBagConstraints =
new java.awt.GridBagConstraints();
616 gridBagConstraints.gridx = 1;
617 gridBagConstraints.gridy = 15;
618 gridBagConstraints.gridwidth = 4;
619 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
620 gridBagConstraints.weighty = 0.1;
621 jPanel1.add(filler2, gridBagConstraints);
623 org.openide.awt.Mnemonics.setLocalizedText(unallocatedSizeLabel,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.unallocatedSizeLabel.text"));
624 gridBagConstraints =
new java.awt.GridBagConstraints();
625 gridBagConstraints.gridx = 0;
626 gridBagConstraints.gridy = 9;
627 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
628 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
629 gridBagConstraints.insets =
new java.awt.Insets(0, 10, 0, 4);
630 jPanel1.add(unallocatedSizeLabel, gridBagConstraints);
632 org.openide.awt.Mnemonics.setLocalizedText(unallocatedSizeValue,
org.openide.util.NbBundle.getMessage(DataSourceSummaryDetailsPanel.class,
"DataSourceSummaryDetailsPanel.unallocatedSizeValue.text"));
633 gridBagConstraints =
new java.awt.GridBagConstraints();
634 gridBagConstraints.gridx = 1;
635 gridBagConstraints.gridy = 9;
636 gridBagConstraints.gridwidth = 4;
637 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
638 gridBagConstraints.anchor = java.awt.GridBagConstraints.FIRST_LINE_START;
639 gridBagConstraints.weightx = 0.5;
640 gridBagConstraints.insets =
new java.awt.Insets(0, 0, 0, 10);
641 jPanel1.add(unallocatedSizeValue, gridBagConstraints);
643 jScrollPane1.setViewportView(jPanel1);
645 javax.swing.GroupLayout layout =
new javax.swing.GroupLayout(
this);
646 this.setLayout(layout);
647 layout.setHorizontalGroup(
648 layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
649 .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
650 .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 300, Short.MAX_VALUE)
653 layout.setVerticalGroup(
654 layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
655 .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 380, Short.MAX_VALUE)
661 private javax.swing.JLabel acquisitionDetailsLabel;
662 private javax.swing.JScrollPane acquisitionDetailsScrollPane;
663 private javax.swing.JTextArea acquisitionDetailsTextArea;
664 private javax.swing.JLabel dataSourceUsageLabel;
665 private javax.swing.JLabel dataSourceUsageValue;
666 private javax.swing.JLabel deviceIdLabel;
667 private javax.swing.JLabel deviceIdValue;
668 private javax.swing.JLabel displayNameLabel;
669 private javax.swing.JLabel displayNameValue;
670 private javax.swing.JLabel filePathsLabel;
671 private javax.swing.JScrollPane filePathsScrollPane;
672 private javax.swing.JTable filePathsTable;
673 private javax.swing.Box.Filler filler1;
674 private javax.swing.Box.Filler filler2;
675 private javax.swing.JLabel imageTypeLabel;
676 private javax.swing.JLabel imageTypeValue;
677 private javax.swing.JPanel jPanel1;
678 private javax.swing.JScrollPane jScrollPane1;
679 private javax.swing.JLabel md5HashLabel;
680 private javax.swing.JLabel md5HashValue;
681 private javax.swing.JLabel operatingSystemLabel;
682 private javax.swing.JLabel operatingSystemValue;
683 private javax.swing.JLabel originalNameLabel;
684 private javax.swing.JLabel originalNameValue;
685 private javax.swing.JLabel sectorSizeLabel;
686 private javax.swing.JLabel sectorSizeValue;
687 private javax.swing.JLabel sha1HashLabel;
688 private javax.swing.JLabel sha1HashValue;
689 private javax.swing.JLabel sha256HashLabel;
690 private javax.swing.JLabel sha256HashValue;
691 private javax.swing.JLabel sizeLabel;
692 private javax.swing.JLabel sizeValue;
693 private javax.swing.JLabel timeZoneLabel;
694 private javax.swing.JLabel timeZoneValue;
695 private javax.swing.JLabel unallocatedSizeLabel;
696 private javax.swing.JLabel unallocatedSizeValue;