19 package org.sleuthkit.autopsy.casemodule.multiusercasesbrowser;
 
   21 import java.util.HashMap;
 
   22 import java.util.List;
 
   24 import javax.swing.ListSelectionModel;
 
   25 import javax.swing.event.ListSelectionListener;
 
   26 import org.netbeans.swing.outline.DefaultOutlineModel;
 
   27 import org.netbeans.swing.outline.Outline;
 
   28 import org.openide.explorer.ExplorerManager;
 
   29 import org.openide.util.NbBundle;
 
   30 import org.openide.explorer.view.OutlineView;
 
   42 @SuppressWarnings(
"PMD.SingularField") 
 
   45     private static final long serialVersionUID = 1L;
 
   63         this.explorerManager = explorerManager;
 
   64         this.customizer = customizer;
 
   66         outlineView = 
new org.openide.explorer.view.OutlineView();
 
   67         outline = this.outlineView.getOutline();
 
   68         configureOutlineView();
 
   69         caseTableScrollPane.add(outlineView);
 
   70         caseTableScrollPane.setViewportView(outlineView);
 
   71         this.setVisible(
true);
 
   76         return explorerManager;
 
   86         Map<Column, SortColumn> sortColumns = 
new HashMap<>();
 
   88             sortColumns.put(sortColumn.column(), sortColumn);
 
   90         ((DefaultOutlineModel) outline.getOutlineModel()).setNodesColumnLabel(
Column.
DISPLAY_NAME.getDisplayName());
 
   95         List<Column> sheetProperties = customizer.
getColumns();
 
   96         for (
int index = 0; index < sheetProperties.size(); ++index) {
 
   97             Column property = sheetProperties.get(index);
 
   99             outlineView.addPropertyColumn(propertyName, propertyName, propertyName);
 
  100             if (sortColumns.containsKey(property)) {
 
  101                 SortColumn sortColumn = sortColumns.get(property);
 
  109         outline.setRootVisible(
false);
 
  110         outline.setSelectionMode(customizer.
allowMultiSelect() ? ListSelectionModel.MULTIPLE_INTERVAL_SELECTION : ListSelectionModel.SINGLE_SELECTION);
 
  119         outline.getSelectionModel().addListSelectionListener(listener);
 
  127         "MultiUserCasesBrowserPanel.waitNode.message=Please Wait..." 
  130         explorerManager.setRootContext(
new MultiUserCasesRootNode(customizer));
 
  138     @SuppressWarnings(
"unchecked")
 
  140     private 
void initComponents() {
 
  142         caseTableScrollPane = 
new javax.swing.JScrollPane();
 
  144         setMinimumSize(
new java.awt.Dimension(0, 5));
 
  145         setPreferredSize(
new java.awt.Dimension(5, 5));
 
  146         setLayout(
new java.awt.BorderLayout());
 
  148         caseTableScrollPane.setHorizontalScrollBarPolicy(javax.swing.ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
 
  149         caseTableScrollPane.setMinimumSize(
new java.awt.Dimension(0, 5));
 
  150         caseTableScrollPane.setOpaque(
false);
 
  151         caseTableScrollPane.setPreferredSize(
new java.awt.Dimension(500, 500));
 
  152         add(caseTableScrollPane, java.awt.BorderLayout.CENTER);
 
List< SortColumn > getSortColumns()
ExplorerManager getExplorerManager()
boolean allowMultiSelect()
final MultiUserCaseBrowserCustomizer customizer
final OutlineView outlineView
void configureOutlineView()
final ExplorerManager explorerManager
final boolean sortAscending
javax.swing.JScrollPane caseTableScrollPane
MultiUserCasesBrowserPanel(ExplorerManager explorerManager, MultiUserCaseBrowserCustomizer customizer)
void addListSelectionListener(ListSelectionListener listener)
List< Column > getColumns()