19 package org.sleuthkit.autopsy.corecomponents;
 
   21 import java.beans.PropertyChangeEvent;
 
   22 import java.util.EnumSet;
 
   23 import java.util.Objects;
 
   24 import java.util.TimeZone;
 
   25 import javax.swing.JPanel;
 
   26 import org.netbeans.spi.options.OptionsPanelController;
 
  142     @SuppressWarnings(
"unchecked")
 
  175         setPreferredSize(
new java.awt.Dimension(625, 465));
 
  189             public void actionPerformed(java.awt.event.ActionEvent evt) {
 
  197             public void actionPerformed(java.awt.event.ActionEvent evt) {
 
  206             public void actionPerformed(java.awt.event.ActionEvent evt) {
 
  213             public void actionPerformed(java.awt.event.ActionEvent evt) {
 
  222             public void actionPerformed(java.awt.event.ActionEvent evt) {
 
  229             public void actionPerformed(java.awt.event.ActionEvent evt) {
 
  238             public void actionPerformed(java.awt.event.ActionEvent evt) {
 
  245             public void actionPerformed(java.awt.event.ActionEvent evt) {
 
  252             public void actionPerformed(java.awt.event.ActionEvent evt) {
 
  264             public void actionPerformed(java.awt.event.ActionEvent evt) {
 
  269         timeZoneList.addListSelectionListener(
new javax.swing.event.ListSelectionListener() {
 
  270             public void valueChanged(javax.swing.event.ListSelectionEvent evt) {
 
  282             public void actionPerformed(java.awt.event.ActionEvent evt) {
 
  287         javax.swing.GroupLayout globalSettingsPanelLayout = 
new javax.swing.GroupLayout(
globalSettingsPanel);
 
  289         globalSettingsPanelLayout.setHorizontalGroup(
 
  290             globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  291             .addGroup(globalSettingsPanelLayout.createSequentialGroup()
 
  293                 .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  294                     .addGroup(globalSettingsPanelLayout.createSequentialGroup()
 
  297                     .addGroup(globalSettingsPanelLayout.createSequentialGroup()
 
  299                         .addGap(135, 135, 135)
 
  300                         .addComponent(
jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 272, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  302                     .addGroup(globalSettingsPanelLayout.createSequentialGroup()
 
  303                         .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  305                             .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
 
  306                                 .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  307                                     .addGroup(globalSettingsPanelLayout.createSequentialGroup()
 
  309                                         .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  313                                 .addGroup(globalSettingsPanelLayout.createSequentialGroup()
 
  315                                     .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  318                             .addGroup(globalSettingsPanelLayout.createSequentialGroup()
 
  321                             .addGroup(globalSettingsPanelLayout.createSequentialGroup()
 
  325                         .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  328                             .addComponent(
translateTextLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 120, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  329                             .addGroup(globalSettingsPanelLayout.createSequentialGroup()
 
  331                                 .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  337                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
 
  339         globalSettingsPanelLayout.setVerticalGroup(
 
  340             globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  341             .addGroup(globalSettingsPanelLayout.createSequentialGroup()
 
  343                 .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  344                     .addGroup(globalSettingsPanelLayout.createSequentialGroup()
 
  346                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  348                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  350                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
 
  352                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  354                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  356                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
 
  358                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  360                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
 
  364                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  366                     .addGroup(globalSettingsPanelLayout.createSequentialGroup()
 
  368                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  370                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  372                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
 
  374                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  376                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  378                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  379                         .addComponent(
jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  380                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  382                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  384                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
 
  391             public void actionPerformed(java.awt.event.ActionEvent evt) {
 
  398         currentCaseSettingsPanelLayout.setHorizontalGroup(
 
  399             currentCaseSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  400             .addGroup(currentCaseSettingsPanelLayout.createSequentialGroup()
 
  403                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
 
  405         currentCaseSettingsPanelLayout.setVerticalGroup(
 
  406             currentCaseSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  407             .addGroup(currentCaseSettingsPanelLayout.createSequentialGroup()
 
  408                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  416             public void actionPerformed(java.awt.event.ActionEvent evt) {
 
  423         currentSessionSettingsPanelLayout.setHorizontalGroup(
 
  424             currentSessionSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  425             .addGroup(currentSessionSettingsPanelLayout.createSequentialGroup()
 
  428                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
 
  430         currentSessionSettingsPanelLayout.setVerticalGroup(
 
  431             currentSessionSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  432             .addGroup(currentSessionSettingsPanelLayout.createSequentialGroup()
 
  433                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  437         javax.swing.GroupLayout viewPreferencesPanelLayout = 
new javax.swing.GroupLayout(
viewPreferencesPanel);
 
  439         viewPreferencesPanelLayout.setHorizontalGroup(
 
  440             viewPreferencesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  441             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, viewPreferencesPanelLayout.createSequentialGroup()
 
  443                 .addGroup(viewPreferencesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
 
  444                     .addComponent(
currentSessionSettingsPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  445                     .addComponent(
currentCaseSettingsPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  446                     .addComponent(
globalSettingsPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
 
  449         viewPreferencesPanelLayout.setVerticalGroup(
 
  450             viewPreferencesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  451             .addGroup(viewPreferencesPanelLayout.createSequentialGroup()
 
  452                 .addComponent(
globalSettingsPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  453                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
 
  454                 .addComponent(
currentCaseSettingsPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  455                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
 
  456                 .addComponent(
currentSessionSettingsPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  457                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
 
  462         javax.swing.GroupLayout layout = 
new javax.swing.GroupLayout(
this);
 
  463         this.setLayout(layout);
 
  464         layout.setHorizontalGroup(
 
  465             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  466             .addComponent(
viewPreferencesScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  468         layout.setVerticalGroup(
 
  469             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  470             .addComponent(
viewPreferencesScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  475         if (immediateUpdates) {
 
  478             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
  483         if (immediateUpdates) {
 
  486             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
  494             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
  499         if (immediateUpdates) {
 
  502             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
  507         if (immediateUpdates) {
 
  510             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
  518         if (immediateUpdates) {
 
  521             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
  529         if (immediateUpdates) {
 
  532             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
  537         if (immediateUpdates) {
 
  540             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
  545         if (immediateUpdates) {
 
  548             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
  553         if (immediateUpdates) {
 
  556             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
  561         if (immediateUpdates) {
 
  564             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
  571         if (immediateUpdates) {
 
  574             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
  581         if (immediateUpdates) {
 
  584             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
  589         if (immediateUpdates) {
 
  592             firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
 
javax.swing.JLabel hideKnownFilesLabel
javax.swing.JCheckBox dataSourcesHideKnownCheckbox
final boolean immediateUpdates
javax.swing.JCheckBox viewsHideKnownCheckbox
javax.swing.JPanel currentSessionSettingsPanel
static void setKeepPreferredContentViewer(boolean value)
javax.swing.JRadioButton useLocalTimeRadioButton
javax.swing.JCheckBox commentsOccurencesColumnsCheckbox
javax.swing.JLabel selectFileLabel
javax.swing.JList< String > timeZoneList
static List< String > createTimeZoneList()
static boolean hideSlackFilesInDataSourcesTree()
void keepCurrentViewerRadioButtonActionPerformed(java.awt.event.ActionEvent evt)
void commentsOccurencesColumnsCheckboxActionPerformed(java.awt.event.ActionEvent evt)
static void setDisplayTimesInLocalTime(boolean value)
javax.swing.JCheckBox viewsHideSlackCheckbox
javax.swing.JPanel viewPreferencesPanel
void fileNameTranslationColumnCheckboxActionPerformed(java.awt.event.ActionEvent evt)
void setShowRejectedResults(boolean showRejectedResults)
static void setHideSlackFilesInViewsTree(boolean value)
static boolean keepPreferredContentViewer()
static boolean hideKnownFilesInViewsTree()
void useLocalTimeRadioButtonActionPerformed(java.awt.event.ActionEvent evt)
javax.swing.JRadioButton useBestViewerRadioButton
void hideRejectedResultsCheckboxActionPerformed(java.awt.event.ActionEvent evt)
void dataSourcesHideKnownCheckboxActionPerformed(java.awt.event.ActionEvent evt)
static boolean showOnlyCurrentUserTags()
static synchronized DirectoryTreeTopComponent getDefault()
static void setHideKnownFilesInViewsTree(boolean value)
static TextTranslationService getInstance()
static void setGroupItemsInTreeByDataSource(boolean value)
javax.swing.JLabel translateTextLabel
static String createTimeZoneString(TimeZone timeZone)
static boolean displayTranslatedFileNames()
javax.swing.JLabel displayTimeLabel
static void setTimeZoneForDisplays(String timeZone)
void groupByDataSourceCheckboxActionPerformed(java.awt.event.ActionEvent evt)
javax.swing.JPanel globalSettingsPanel
javax.swing.JLabel hideOtherUsersTagsLabel
static void setDisplayTranslatedFileNames(boolean value)
static void setHideCentralRepoCommentsAndOccurrences(boolean value)
javax.swing.JCheckBox dataSourcesHideSlackCheckbox
javax.swing.JRadioButton keepCurrentViewerRadioButton
static boolean hideSlackFilesInViewsTree()
javax.swing.JPanel currentCaseSettingsPanel
static boolean isEnabled()
ViewPreferencesPanel(boolean immediateUpdates)
void hideOtherUsersTagsCheckboxActionPerformed(java.awt.event.ActionEvent evt)
static Boolean getGroupItemsInTreeByDataSource()
javax.swing.JCheckBox hideOtherUsersTagsCheckbox
static void setHideSlackFilesInDataSourcesTree(boolean value)
static void setHideKnownFilesInDataSourcesTree(boolean value)
void viewsHideKnownCheckboxActionPerformed(java.awt.event.ActionEvent evt)
void useBestViewerRadioButtonActionPerformed(java.awt.event.ActionEvent evt)
javax.swing.JCheckBox groupByDataSourceCheckbox
void useAnotherTimeRadioButtonActionPerformed(java.awt.event.ActionEvent evt)
static boolean hideKnownFilesInDataSourcesTree()
javax.swing.JScrollPane jScrollPane1
static String getTimeZoneForDisplays()
javax.swing.JLabel hideSlackFilesLabel
void timeZoneListValueChanged(javax.swing.event.ListSelectionEvent evt)
boolean getShowRejectedResults()
static void addEventTypeSubscriber(Set< Events > eventTypes, PropertyChangeListener subscriber)
static boolean hideCentralRepoCommentsAndOccurrences()
javax.swing.JCheckBox hideRejectedResultsCheckbox
static void setShowOnlyCurrentUserTags(boolean value)
javax.swing.JLabel commentsOccurencesColumnWrapAroundText
javax.swing.JLabel centralRepoLabel
void dataSourcesHideSlackCheckboxActionPerformed(java.awt.event.ActionEvent evt)
javax.swing.JRadioButton useAnotherTimeRadioButton
javax.swing.JScrollPane viewPreferencesScrollPane
static boolean displayTimesInLocalTime()
static boolean isCaseOpen()
void storeGroupItemsInTreeByDataSource()
void viewsHideSlackCheckboxActionPerformed(java.awt.event.ActionEvent evt)
javax.swing.JCheckBox fileNameTranslationColumnCheckbox