webglimpse
Version:
Webglimpse is a data visualization library for the web.
80 lines (79 loc) • 3.3 kB
TypeScript
import { Color } from '../color';
import { Drawable, Painter } from '../core';
import { TimeAxis1D } from './time_axis';
import { TimelineLaneArray } from './timeline_lanes';
import { TimelineUi } from './timeline_ui';
import { TimelineRowPaneFactory } from './timeline_row';
export interface TimelineEventsPainterOptions {
timelineFont: string;
timelineFgColor: Color;
rowTopPadding: number;
rowBottomPadding: number;
laneHeight: number;
}
export declare type TimelineEventsPainterFactory = (drawable: Drawable, timeAxis: TimeAxis1D, lanes: TimelineLaneArray, ui: TimelineUi, options: TimelineEventsPainterOptions) => Painter;
export interface TimelineEventsRowPaneOptions {
rowTopPadding?: number;
rowBottomPadding?: number;
laneHeight?: number;
allowMultipleLanes?: boolean;
painterFactories?: TimelineEventsPainterFactory[];
}
export declare function newEventsRowPaneFactory(eventsRowOpts?: TimelineEventsRowPaneOptions): TimelineRowPaneFactory;
export interface TimelineEventLimitsPainterOptions {
lineColor?: Color;
lineThickness?: number;
}
export declare function newEventLimitsPainterFactory(limitOpts?: TimelineEventLimitsPainterOptions): TimelineEventsPainterFactory;
export declare enum JointType {
BEVEL = 0,
MITER = 1
}
export interface TimelineEventBarsPainterOptions {
topMargin?: number;
bottomMargin?: number;
borderThickness?: number;
cornerType?: JointType;
defaultColor?: Color;
defaultBorderColor?: Color;
selectedBorderColor?: Color;
dashLength?: number;
stripeWidth?: number;
stripeSecondaryWidth?: number;
stripeSlant?: number;
featherWidth?: number;
minimumVisibleWidth?: number;
}
export declare enum FillPattern {
solid = 0,
stripe = 1,
gradient = 2
}
export declare function newEventStripedBarsPainterFactory(barOpts?: TimelineEventBarsPainterOptions): TimelineEventsPainterFactory;
export declare function newEventDashedBordersPainterFactory(barOpts?: TimelineEventBarsPainterOptions): TimelineEventsPainterFactory;
export interface TimelineEventIconsPainterOptions {
topMargin?: number;
bottomMargin?: number;
vAlign?: number;
}
export declare function newEventIconsPainterFactory(iconOpts?: TimelineEventIconsPainterOptions): TimelineEventsPainterFactory;
export interface TimelineEventLabelOptions {
topMargin?: number;
bottomMargin?: number;
leftMargin?: number;
rightMargin?: number;
vAlign?: number;
spacing?: number;
extendBeyondBar?: boolean;
textMode?: string;
iconsEnabled?: boolean;
iconsForceWidth?: any;
iconsForceHeight?: any;
iconsSizeFactor?: number;
textEnabled?: boolean;
textDefaultColor?: Color;
textFont?: string;
}
export declare function newEventLabelsPainterFactory(labelOpts?: TimelineEventLabelOptions): TimelineEventsPainterFactory;
export declare function newEventBarsPainterFactory(barOpts?: TimelineEventBarsPainterOptions): TimelineEventsPainterFactory;
export declare function newCombinedEventPainterFactory(barOpts?: TimelineEventBarsPainterOptions, labelOpts?: TimelineEventLabelOptions, iconOpts?: TimelineEventIconsPainterOptions): TimelineEventsPainterFactory;