Autopsy  3.1
Graphical digital forensics platform for The Sleuth Kit and other tools.
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, > Class Template Referenceabstract

Inherits BorderPane, and org.sleuthkit.autopsy.timeline.TimeLineView.

Inherited by org.sleuthkit.autopsy.timeline.ui.countsview.CountsViewPane, and org.sleuthkit.autopsy.timeline.ui.detailview.DetailViewPane.

Classes

class  TwoPartDateTime
 

Public Member Functions

ReadOnlyListProperty< N > getSelectedNodes ()
 
synchronized void update ()
 
synchronized void dispose ()
 
synchronized void setController (TimeLineController controller)
 
synchronized void setModel (FilteredEventsModel filteredEvents)
 
synchronized void layoutDateLabels ()
 
void setModel (final FilteredEventsModel filteredEvents)
 

Protected Member Functions

List< Node > getSettingsNodes ()
 
abstract Boolean isTickBold (X value)
 
abstract void applySelectionEffect (N node, Boolean applied)
 
abstract Task< Boolean > getUpdateTask ()
 
abstract Effect getSelectionEffect ()
 
abstract String getTickMarkLabel (X tickValue)
 
abstract double getTickSpacing ()
 
abstract Axis< X > getXAxis ()
 
abstract Axis< Y > getYAxis ()
 
 AbstractVisualization (Pane partPane, Pane contextPane, Region spacer)
 
void setChartClickHandler ()
 

Protected Attributes

final SimpleBooleanProperty hasEvents = new SimpleBooleanProperty(true)
 
final ObservableList< BarChart.Series< X, Y > > dataSets = FXCollections.<BarChart.Series<X, Y>>observableArrayList()
 
chart
 
final Region spacer
 
TimeLineController controller
 
FilteredEventsModel filteredEvents
 
ReadOnlyListWrapper< N > selectedNodes = new ReadOnlyListWrapper<>(FXCollections.observableArrayList())
 
List< Node > settingsNodes
 
InvalidationListener invalidationListener
 

Private Member Functions

synchronized void assignLeafLabel (String labelText, double labelWidth, double labelX, boolean bold)
 
synchronized void assignBranchLabel (String labelText, double labelWidth, double labelX)
 

Private Attributes

final Pane leafPane
 
final Pane branchPane
 
Task< Boolean > updateTask
 

Detailed Description

Abstract base class for Chart based TimeLineViews used in the main visualization area.

Parameters
<X>the type of data plotted along the x axis
<Y>the type of data plotted along the y axis
<N>the type of nodes used to represent data items
<C>the type of the XYChart<X,Y> this class uses to plot the data.

TODO: this is becoming (too?) closely tied to the notion that their is a XYChart doing the rendering. Is this a good idea? -jm TODO: pull up common history context menu items out of derived classes? -jm

Definition at line 71 of file AbstractVisualization.java.

Constructor & Destructor Documentation

org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.AbstractVisualization ( Pane  partPane,
Pane  contextPane,
Region  spacer 
)
protected

Definition at line 189 of file AbstractVisualization.java.

Member Function Documentation

abstract void org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.applySelectionEffect ( node,
Boolean  applied 
)
abstractprotected

apply this visualization's 'selection effect' to the given node

Parameters
nodethe node to apply the 'effect' to
appliedtrue if the effect should be applied, false if the effect should
synchronized void org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.assignBranchLabel ( String  labelText,
double  labelWidth,
double  labelX 
)
private

add a Label node to the branch container for the decluttered axis labels

Parameters
labelTextthe string to add
labelWidththe width of the space to use for the label
labelXthe horizontal position in the partPane of the text

Definition at line 361 of file AbstractVisualization.java.

synchronized void org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.assignLeafLabel ( String  labelText,
double  labelWidth,
double  labelX,
boolean  bold 
)
private

add a Text node to the leaf container for the decluttered axis labels

Parameters
labelTextthe string to add
labelWidththe width of the space available for the text
labelXthe horizontal position in the partPane of the text
boldtrue if the text should be bold, false otherwise

Definition at line 332 of file AbstractVisualization.java.

synchronized void org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.dispose ( )

Definition at line 181 of file AbstractVisualization.java.

ReadOnlyListProperty<N> org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.getSelectedNodes ( )
abstract Effect org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.getSelectionEffect ( )
abstractprotected
Returns
return the Effect applied to 'selected nodes' in this visualization, or null if selection is visualized via another mechanism
List<Node> org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.getSettingsNodes ( )
protected
Returns
the list of nodes containing settings widgets to insert into this visualization's header

Definition at line 105 of file AbstractVisualization.java.

abstract String org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.getTickMarkLabel ( tickValue)
abstractprotected
Parameters
tickValue
Returns
a String to use for a tick mark label given a tick value
abstract double org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.getTickSpacing ( )
abstractprotected

the spacing (in pixels) between tick marks of the horizontal axis. This will be used to layout the decluttered replacement labels.

Returns
the spacing in pixels between tick marks of the horizontal axis
abstract Task<Boolean> org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.getUpdateTask ( )
abstractprotected
Returns
a task to execute on a background thread to reload this visualization with different data.

Referenced by org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< DateTime, AggregateEvent, AggregateEventNode, EventDetailChart >.update().

abstract Axis<X> org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.getXAxis ( )
abstractprotected
Returns
the horizontal axis used by this Visualization's chart
abstract Axis<Y> org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.getYAxis ( )
abstractprotected
Returns
the vertical axis used by this Visualization's chart
abstract Boolean org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.isTickBold ( value)
abstractprotected
Parameters
valuea value along this visualization's x axis
Returns
true if the tick label for the given value should be bold ( has relevant data), false* otherwise
synchronized void org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.layoutDateLabels ( )

iterate through the list of tick-marks building a two level structure of replacement tick marl labels. (Visually) upper level has most detailed/highest frequency part of date/time. Second level has rest of date/time grouped by unchanging part. eg:

october-30_october-31_september-01_september-02_september-03

becomes

_________30_________31___________01___________02___________03

_________october___________|_____________september___________

NOTE: This method should only be invoked on the JFX thread

Definition at line 247 of file AbstractVisualization.java.

Referenced by org.sleuthkit.autopsy.timeline.ui.countsview.CountsViewPane.CountsViewPane(), and org.sleuthkit.autopsy.timeline.ui.countsview.CountsViewPane.getUpdateTask().

void org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.setChartClickHandler ( )
protected
synchronized void org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.setController ( TimeLineController  controller)
void org.sleuthkit.autopsy.timeline.TimeLineView.setModel ( final FilteredEventsModel  filteredEvents)
inherited
synchronized void org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.setModel ( FilteredEventsModel  filteredEvents)

Definition at line 218 of file AbstractVisualization.java.

synchronized void org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.update ( )
  • update this visualization based on current state of zoom / filters.Primarily this invokes the background Task returned by getUpdateTask() which derived classes must implement.

Definition at line 155 of file AbstractVisualization.java.

Referenced by org.sleuthkit.autopsy.timeline.ui.countsview.CountsViewPane.CountsViewPane().

Member Data Documentation

final Pane org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.branchPane
private

Definition at line 82 of file AbstractVisualization.java.

C org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.chart
protected
TimeLineController org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.controller
protected
final ObservableList<BarChart.Series<X, Y> > org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.dataSets = FXCollections.<BarChart.Series<X, Y>>observableArrayList()
protected
FilteredEventsModel org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.filteredEvents
protected
final SimpleBooleanProperty org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.hasEvents = new SimpleBooleanProperty(true)
protected

Definition at line 73 of file AbstractVisualization.java.

InvalidationListener org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.invalidationListener
protected
final Pane org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.leafPane
private

Definition at line 80 of file AbstractVisualization.java.

ReadOnlyListWrapper<N> org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.selectedNodes = new ReadOnlyListWrapper<>(FXCollections.observableArrayList())
protected
List<Node> org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.settingsNodes
protected

list of Nodes to insert into the toolbar. This should be set in an implementations constructor.

Definition at line 101 of file AbstractVisualization.java.

Referenced by org.sleuthkit.autopsy.timeline.ui.countsview.CountsViewPane.CountsViewPane(), and org.sleuthkit.autopsy.timeline.ui.detailview.DetailViewPane.DetailViewPane().

final Region org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.spacer
protected
Task<Boolean> org.sleuthkit.autopsy.timeline.ui.AbstractVisualization< X, Y, N extends Node, >.updateTask
private

task used to reload the content of this visualization

Definition at line 87 of file AbstractVisualization.java.


The documentation for this class was generated from the following file:

Copyright © 2012-2015 Basis Technology. Generated on: Mon Oct 19 2015
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.