Skip to main content

BaseLinearDisplay

Note: this document is automatically generated from mobx-state-tree objects in our source code. See Core concepts and intro to pluggable elements for more info

Source file

plugins/linear-genome-view/src/BaseLinearDisplay/models/BaseLinearDisplayModel.tsx

BaseLinearDisplay is used as the basis for many linear genome view tracks. It is block based, and can use 'static blocks' or 'dynamic blocks'

extends

BaseLinearDisplay - Properties

property: blockState

updated via autorun

// type signature
IMapType<IModelType<{ key: ISimpleType<string>; region: IModelType<{ refName: ISimpleType<string>; start: ISimpleType<number>; end: ISimpleType<number>; reversed: IOptionalIType<...>; } & { ...; }, { ...; }, _NotCustomized, _NotCustomized>; reloadFlag: IType<...>; isLeftEndOfDisplayedRegion: IType<...>; isRightEndOf...
// code
blockState: types.map(BlockState)

property: configuration

// type signature
ConfigurationSchemaType<{ maxFeatureScreenDensity: { type: string; description: string; defaultValue: number; }; fetchSizeLimit: { type: string; defaultValue: number; description: string; }; height: { type: string; defaultValue: number; description: string; }; mouseover: { ...; }; }, ConfigurationSchemaOptions<...>>
// code
configuration: ConfigurationReference(configSchema)

BaseLinearDisplay - Getters

getter: blockType

// type
'staticBlocks' | 'dynamicBlocks'

getter: blockDefinitions

// type
any

getter: renderDelay

how many milliseconds to wait for the display to "settle" before re-rendering a block

// type
number

getter: TooltipComponent

// type
React.FC<any>

getter: selectedFeatureId

returns a string feature ID if the globally-selected object is probably a feature

// type
string

getter: DisplayMessageComponent

if a display-level message should be displayed instead of the blocks, make this return a react component

// type
any

getter: features

a CompositeMap of featureId -> feature obj that just looks in all the block data for that feature

// type
CompositeMap<unknown, unknown>

getter: featureUnderMouse

// type
any

getter: getFeatureOverlapping

// type
(blockKey: string, x: number, y: number) => string

getter: getFeatureByID

// type
(blockKey: string, id: string) => LayoutRecord

getter: searchFeatureByID

// type
(id: string) => LayoutRecord

BaseLinearDisplay - Methods

method: trackMenuItems

// type signature
trackMenuItems: () => MenuItem[]

method: contextMenuItems

// type signature
contextMenuItems: () => MenuItem[]

method: renderProps

// type signature
renderProps: () => any

method: renderSvg

// type signature
renderSvg: (opts: ExportSvgDisplayOptions) => Promise<Element>

BaseLinearDisplay - Actions

action: addBlock

// type signature
addBlock: (key: string, block: BaseBlock) => void

action: deleteBlock

// type signature
deleteBlock: (key: string) => void

action: selectFeature

// type signature
selectFeature: (feature: Feature) => void

action: clearFeatureSelection

// type signature
clearFeatureSelection: () => void

action: setFeatureIdUnderMouse

// type signature
setFeatureIdUnderMouse: (feature?: string) => void

action: setContextMenuFeature

// type signature
setContextMenuFeature: (feature?: Feature) => void

action: reload

// type signature
reload: () => Promise<void>