Options
All
  • Public
  • Public/Protected
  • All
Menu

Class CalloutMarker

Hierarchy

Index

Constructors

constructor

  • new CalloutMarker(container: SVGGElement, overlayContainer: HTMLDivElement, settings: Settings): CalloutMarker
  • Creates a new marker.

    Parameters

    • container: SVGGElement

      SVG container to hold marker's visual.

    • overlayContainer: HTMLDivElement

      overlay HTML container to hold additional overlay elements while editing.

    • settings: Settings

      settings object containing default markers settings.

    Returns CalloutMarker

Properties

Protected _container

_container: SVGGElement

Protected _isSelected

_isSelected: boolean = false

Is this marker selected?

since

2.16.0

Protected _overlayContainer

_overlayContainer: HTMLDivElement

Protected _state

_state: MarkerState = "new"

Protected _suppressMarkerCreateEvent

_suppressMarkerCreateEvent: boolean = false

Protected bgColorPanel

bgColorPanel: ColorPickerPanel

Color picker toolbox panel for the background (fill) color.

Protected bgRectangle

bgRectangle: SVGRectElement

Text background rectangle.

Protected color

color: string = "transparent"

Text color.

Protected colorPanel

colorPanel: ColorPickerPanel

Text color picker toolbox panel.

Protected controlBox

controlBox: SVGGElement

Container for the marker's editing controls.

Protected fontFamily

fontFamily: string

Text's font family.

Protected fontFamilyPanel

fontFamilyPanel: FontFamilyPanel

Text font family toolbox panel.

Protected globalSettings

globalSettings: Settings

Protected height

height: number = 0

Marker height.

Protected left

left: number = 0

x coordinate of the top-left corner.

Protected manipulationStartHeight

manipulationStartHeight: number

Height at the start of manipulation.

Protected manipulationStartLeft

manipulationStartLeft: number

x coordinate of the top-left corner at the start of manipulation.

Protected manipulationStartTop

manipulationStartTop: number

y coordinate of the top-left corner at the start of manipulation.

Protected manipulationStartWidth

manipulationStartWidth: number

Width at the start of manipulation.

Protected manipulationStartX

manipulationStartX: number

x coordinate of the pointer at the start of manipulation.

Protected manipulationStartY

manipulationStartY: number

y coordinate of the pointer at the start of manipulation.

Optional notes

notes: string

Additional information about the marker

Protected offsetX

offsetX: number = 0

Pointer's horizontal distance from the top left corner.

Protected offsetY

offsetY: number = 0

Pointer's vertical distance from the top left corner.

Optional onColorChanged

onColorChanged: (color: string) => void

Method to call when foreground color changes.

Type declaration

    • (color: string): void
    • Parameters

      • color: string

      Returns void

Optional onFillColorChanged

onFillColorChanged: (color: string) => void

Method to call when background/fill color changes.

Type declaration

    • (color: string): void
    • Parameters

      • color: string

      Returns void

onMarkerCreated

onMarkerCreated: (marker: MarkerBase) => void

Method called when marker creation is finished.

Type declaration

Protected padding

padding: number = 5

Padding inside of the marker's bounding box in percents.

Protected rotationAngle

rotationAngle: number = 0

Marker's rotation angle.

Protected textEditDiv

textEditDiv: HTMLDivElement

Div element for the text editor container.

Protected textEditor

textEditor: HTMLDivElement

Editable text element.

Protected textElement

textElement: SVGTextElement

Visual text element.

Protected top

top: number = 0

y coordinate of the top-left corner.

Protected width

width: number = 0

Marker width.

Static icon

icon: string = Icon

SVG icon markup displayed on toolbar buttons.

Static title

title: string = "Callout marker"

Marker type title (display name) used for accessibility and other attributes.

Static typeName

typeName: string = "CalloutMarker"

String type name of the marker type.

Used when adding MarkerArea.availableMarkerTypes via a string and to save and restore state.

Accessors

Protected centerX

  • get centerX(): number

Protected centerY

  • get centerY(): number

container

  • get container(): SVGGElement
  • SVG container object holding the marker's visual.

    Returns SVGGElement

isSelected

  • get isSelected(): boolean
  • Returns true if the marker is currently selected

    since

    2.16.0

    Returns boolean

overlayContainer

  • get overlayContainer(): HTMLDivElement
  • HTML container that can be used to render overlay objects while the marker is active.

    For example, this is used for the text editing layer while editing text in the {@see TextMarker}.

    Returns HTMLDivElement

state

  • Current marker state.

    Both MarkerArea and the marker itself can react differently to different events based on what state the marker is in.

    Returns MarkerState

toolboxPanels

typeName

  • get typeName(): string
  • Instance property returning marker's type name.

    since

    2.16.0

    Returns string

Protected visual

  • get visual(): SVGGraphicsElement
  • set visual(value: SVGGraphicsElement): void

Methods

Protected addMarkerVisualToContainer

  • addMarkerVisualToContainer(element: SVGElement): void

Protected colorChanged

  • colorChanged(color: string): void
  • Called by a marker when its foreground color changes.

    Parameters

    • color: string

    Returns void

Protected createVisual

  • createVisual(): void

dblClick

  • dblClick(point: IPoint, target?: EventTarget): void

deselect

  • deselect(): void

dispose

  • dispose(): void

Protected fillColorChanged

  • fillColorChanged(color: string): void
  • Called by a marker when its background/fill color changes.

    Parameters

    • color: string

    Returns void

getState

Protected hideControlBox

  • hideControlBox(): void

Protected hideVisual

  • hideVisual(): void

manipulate

  • manipulate(point: IPoint): void
  • Handles marker manipulation (move, resize, rotate, etc.).

    Parameters

    • point: IPoint

      event coordinates.

    Returns void

Protected moveVisual

  • moveVisual(point: IPoint): void

ownsTarget

  • ownsTarget(el: EventTarget): boolean
  • Returns true if passed SVG element belongs to the marker. False otherwise.

    Parameters

    • el: EventTarget

      target element.

    Returns boolean

pointerDown

  • pointerDown(point: IPoint, target?: EventTarget): void
  • Handles pointer (mouse, touch, stylus, etc.) down event.

    Parameters

    • point: IPoint

      event coordinates.

    • Optional target: EventTarget

      direct event target element.

    Returns void

pointerUp

  • pointerUp(point: IPoint): void
  • Handles pointer (mouse, touch, stylus, etc.) up event.

    Parameters

    • point: IPoint

      event coordinates.

    Returns void

Protected resize

  • Resize marker based on current pointer coordinates and context.

    Parameters

    Returns void

restoreState

Protected rotatePoint

scale

  • scale(scaleX: number, scaleY: number): void
  • Scales marker. Used after the image resize.

    Parameters

    • scaleX: number

      horizontal scale

    • scaleY: number

      vertical scale

    Returns void

select

  • select(): void
  • Selects this marker and displays appropriate selected marker UI.

    Returns void

Protected setBgColor

  • setBgColor(color: string): void
  • Sets marker's background/fill color.

    Parameters

    • color: string

      new background color.

    Returns void

Protected setColor

  • setColor(color: string): void
  • Sets text color.

    Parameters

    • color: string

      new text color.

    Returns void

Protected setFont

  • setFont(font: string): void
  • Sets font family.

    Parameters

    • font: string

      new font family.

    Returns void

Protected setSize

  • setSize(): void

Protected showControlBox

  • showControlBox(): void

Protected showVisual

  • showVisual(): void

Protected unrotatePoint

Object literals

Protected defaultSize

defaultSize: object

The default marker size when the marker is created with a click (without dragging).

x

x: number = 50

y

y: number = 20

Generated using TypeDoc