Class: ScaleViewController

ScaleViewController(uiState, container, decompViewDict) → {ScaleViewController}

ScaleViewController

Alters the scale of points displayed on the screen.

Constructor

new ScaleViewController(uiState, container, decompViewDict) → {ScaleViewController}

Parameters:
Name Type Description
uiState UIState

The shared state

container Node

Container node to create the controller in.

decompViewDict Object

This object is keyed by unique identifiers and the values are DecompositionView objects referring to a set of objects presented on screen. This dictionary will usually be shared by all the tabs in the application. This argument is passed by reference. Note that only the decompositions of type 'scatter' will be controlled, other types will be ignored.

Source:
Returns:
Type
ScaleViewController

Extends

Members

$body :Node

jQuery element for the body, which contains the lowermost elementsdisplayed in tab. This goes below the header.

Type:
  • Node
Inherited From:
Source:

$canvas :Node

jQuery element for the canvas, which contains the header and the body.

Type:
  • Node
Inherited From:
Source:

$container :Node

jQuery element for the parent container.

Type:
  • Node
Inherited From:
Source:

$globalDiv :Node

jQuery node for global scale bar container div

Type:
  • Node
Inherited From:
Source:

$gridDiv :Node

jQuery element for the div containing the slickgrid of sample information

Type:
  • Node
Inherited From:
Source:

$header :Node

jQuery element for the header which contains the uppermost elementsdisplayed in a tab.

Type:
  • Node
Inherited From:
Source:

$scaledLabel :Node

jQuery node for label of $scaledValues

Type:
  • Node
Inherited From:
Source:

$scaledValue :Node

jQuery node for checkbox controlling whether to scale by values or not

Type:
  • Node
Inherited From:
Source:

$sliderGlobal :Node

jQuery node for global scale bar

Type:
  • Node
Inherited From:
Source:

active :Boolean

Indicates whether the tab is front most

Type:
  • Boolean
Inherited From:
Default Value:
  • false
Source:

bodyGrid :Slick.Grid

Container that lists the metadata categories described under themetadata column and the attribute that can be modified.

Type:
  • Slick.Grid
Inherited From:
Source:

decompViewDict :Object

This is object is keyed by unique identifiers and the values areDecompositionView objects referring to a set of objects presented onscreen. This dictionary will usually be shared by all the tabs in theapplication. This argument is passed by reference.

Type:
  • Object
Inherited From:
Source:

description :String

Human-readable description of the tab.

Type:
  • String
Inherited From:
Source:

enabled :Boolean

Indicates if tab can be accessed.

Type:
  • Boolean
Inherited From:
Default Value:
  • true
Source:

identifier :String

Unique hash identifier for the tab instance.

Type:
  • String
Inherited From:
Default Value:
  • "EMPtab-xxxxxxx"
Source:

ready :function

Callback to execute when all the elements in the UI for this controllerhave been loaded. Note, that this functionality needs to be implementedby subclasses, as EmperorViewController does not have any UI components.

Type:
  • function
Inherited From:
Source:

title :String

Human-readable title of the tab.

Type:
  • String
Inherited From:
Source:

UIState :UIState

The shared state

Type:
  • UIState
Inherited From:
Source:

Methods

decompositionName()

Get the name of the decomposition selected in the metadata menu.

Inherited From:
Source:

forceRefresh()

Writes the current settings to the active decomposition view(s). Will be called when the decomposition view is swapped out for a different view type.

Inherited From:
Source:

fromJSON(Parsed)

Decodes JSON string and modifies its own instance variables accordingly.

Parameters:
Name Type Description
Parsed Object

JSON string representation of self.

Inherited From:
Source:

getMetadataField()

Get the name of the selected category in the metadata menu.

Inherited From:
Source:

getScale(values, scaled)

Helper function to get the scale for each metadata value

Parameters:
Name Type Description
values Array.<String>

The values to get scale for

scaled Boolean

Whether or not to scale by values or just reset to standard scale (1.0)

Inherited From:
Source:
Throws:

No or one numeric value in category and trying to scale by value

Type
Error

getSlickGridDataset() → {Array}

Retrieves the underlying data in the slick grid

Inherited From:
Source:
Returns:

Returns an array of objects displayed by the body grid.

Type
Array

getView()

Get the view that's currently selected by the metadata menu.

Inherited From:
Source:

hasMetadataField(m) → {Bool}

Check if a metadata field is present

Parameters:
Name Type Description
m String

Metadata column to check if is present.

Inherited From:
Source:
Returns:

Whether or not the metadata field is present.

Type
Bool

refreshMetadata()

Update the metadata selection menu.

Performs some additional logic to avoid duplicating decomposition names.

Note that decompositions won't be updated if they have the same name and same metadata headers, if the only things changing are coordinates, or metadata values, the changes should be performed directly on the objects themselves.

Inherited From:
Source:

resize(width, height)

Resizes the container and the individual elements.

Note, the consumer of this class, likely the main controller should call the resize function any time a resizing event happens.

Parameters:
Name Type Description
width float

the container width.

height float

the container height.

Inherited From:
Source:

scaleValue(val, min, range) → {float}

Scaling function to use when sample scaling is based on a metadata category.

Parameters:
Name Type Description
val float

The metadata value for the current sample.

min float

The minimum metadata value in the dataset.

range float

The span of the metadata values.

Overrides:
Source:
Returns:

Scale value for a given sample.

Type
float

setActive(trulse)

Sets whether or not the tab is visible.

Parameters:
Name Type Description
trulse Boolean

option to activate tab (i.e. move tab to foreground).

Inherited From:
Source:

setAllPlottableAttributes(value)

Modify the scale of all the markers in the current view

Parameters:
Name Type Description
value float

The new opacity of the lements in the current view. Should be a value between 0.1 and 5 (inclusive).

Overrides:
Source:

setEnabled(trulse)

Sets whether or not elements in the tab can be modified.

Parameters:
Name Type Description
trulse Boolean

option to enable elements.

Inherited From:
Source:

setMetadataField(m)

Changes the selected value in the metadata menu.

Parameters:
Name Type Description
m String

Metadata column name to control. When the category is null, the metadata selector is set to an empty value, the body grid is emptied, and all the markers are reset to a default state (depends on the subclass).

Inherited From:
Source:
Throws:

Argument m must be a metadata category in one of the decomposition views.

Type
Error

setPlottableAttributes(scope, scale, group)

Helper function to set the scale of plottable

Parameters:
Name Type Description
scope Object

The scope where the plottables exist

scale Boolean

New scaling factor of the plottables (1.0 being standard scale)

group Array.<Object>

list of mesh objects that should be changed in scope

Overrides:
Source:

setSlickGridDataset(data)

Changes the underlying data in the slick grid

Parameters:
Name Type Description
data Array

data.

Inherited From:
Source:

toJSON() → {Object}

Converts the current instance into a JSON string.

Inherited From:
Source:
Returns:

JSON ready representation of self.

Type
Object