igniteui-angular-gauges
Version:
Ignite UI Angular gauge components.
1,920 lines • 78.7 kB
JavaScript
/*
THIS INFRAGISTICS ULTIMATE SOFTWARE LICENSE AGREEMENT ("AGREEMENT") LOCATED HERE:
https://www.infragistics.com/legal/license/igultimate-la
https://www.infragistics.com/legal/license/igultimate-eula
GOVERNS THE LICENSING, INSTALLATION AND USE OF INFRAGISTICS SOFTWARE. BY DOWNLOADING AND/OR INSTALLING AND USING INFRAGISTICS SOFTWARE: you are indicating that you have read and understand this Agreement, and agree to be legally bound by it on behalf of the yourself and your company.
*/
import { EventEmitter, Output, Component, ViewChild, ContentChildren, Input, ChangeDetectionStrategy, ViewContainerRef } from '@angular/core';
import { AngularRenderer } from "igniteui-angular-core";
import { TypeRegistrar } from "igniteui-angular-core";
import { XamRadialGauge } from './XamRadialGauge';
import { CollectionAdapter, brushToString, stringToBrush, toPoint, fromPoint, fromBrushCollection, toBrushCollection, ensureBool, ensureEnum, toSpinal, initializePropertiesFromCss, NamePatcher, arrayFindByName } from "igniteui-angular-core";
import { delegateCombine } from "igniteui-angular-core";
import { NotifyCollectionChangedAction } from "igniteui-angular-core";
import { SweepDirection_$type } from "igniteui-angular-core";
import { RadialGaugeNeedleShape_$type } from './RadialGaugeNeedleShape';
import { RadialGaugePivotShape_$type } from './RadialGaugePivotShape';
import { RadialGaugeScaleOversweepShape_$type } from './RadialGaugeScaleOversweepShape';
import { RadialGaugeBackingShape_$type } from './RadialGaugeBackingShape';
import { RadialGaugeDuplicateLabelOmissionStrategy_$type } from './RadialGaugeDuplicateLabelOmissionStrategy';
import { IgxFormatRadialGaugeLabelEventArgs } from './igx-format-radial-gauge-label-event-args';
import { IgxAlignRadialGaugeLabelEventArgs } from './igx-align-radial-gauge-label-event-args';
import { RadialGaugeStylingDefaults } from './RadialGaugeStylingDefaults';
import { IgxRadialGaugeRangeComponent } from './igx-radial-gauge-range-component';
import { IgxRadialGaugeRangeCollection } from './igx-radial-gauge-range-collection';
import { IgxDoubleValueChangedEventArgs } from "igniteui-angular-core";
import { FontInfo } from "igniteui-angular-core";
import { HighlightedValueDisplayMode_$type } from "igniteui-angular-core";
import * as i0 from "@angular/core";
/**
* A radial gauge for displaying a single value on a defined scale.
*/
export let IgxRadialGaugeComponent = /*@__PURE__*/ (() => {
class IgxRadialGaugeComponent {
constructor(_renderer, _elRef, _ngZone, _componentFactoryResolver, _injector) {
this._renderer = _renderer;
this._elRef = _elRef;
this._ngZone = _ngZone;
this._componentFactoryResolver = _componentFactoryResolver;
this._injector = _injector;
/**
* The ranges actually present in the chart. Do not directly modify this array.
* This array's contents can be modified by causing Angular to reproject the child content.
* Or adding and removing ranges from the manual ranges collection on the ranges property.
*/
this.actualRanges = [];
this._ranges = null;
this._rangesAdapter = null;
this._zoneRunner = null;
this.__p = null;
this._hasUserValues = new Set();
this._stylingContainer = null;
this._stylingParent = null;
this._inStyling = false;
this._alignTitle = null;
this._alignSubtitle = null;
this._alignHighlightLabel = null;
this._formatTitle = null;
this._formatSubtitle = null;
this._formatHighlightLabel = null;
this._formatLabel = null;
this._alignLabel = null;
this._valueChanged = null;
this._highlightValueChanged = null;
this._actualMinimumValueChange = null;
this._actualMaximumValueChange = null;
//super();
if (this._styling) {
NamePatcher.ensureStylablePatched(Object.getPrototypeOf(this));
}
this._zoneRunner = (act) => this._ngZone.run(act);
this._implementation = this.createImplementation();
this._container = _renderer.createElement("div");
_renderer.appendChild(_elRef.element.nativeElement, this._container);
_renderer.setStyle(this._container, "display", "block");
_renderer.setStyle(this._container, "width", "100%");
_renderer.setStyle(this._container, "height", "100%");
var root;
root = this._container;
if (this._container.nativeElement != null) {
root = this._container.nativeElement;
}
var ren = new AngularRenderer(root, this._renderer, window.document, this._ngZone, true, RadialGaugeStylingDefaults);
this._root = root;
this._wrapper = ren;
var gauge = this.i;
this._gauge = gauge;
this._rangesAdapter = new CollectionAdapter([], this.i.ranges, this.actualRanges, (c) => c.i, (i) => {
i._provideRenderer(this._wrapper);
if (this._root && this._root.parentElement) {
i._styling(this._root, this, this);
}
}, (i) => { i._provideRenderer(null); });
gauge.provideContainer(ren);
ren.addSizeWatcher(() => {
this._gauge.containerResized();
});
}
set height(value) {
this._height = value;
this._renderer.setStyle(this._elRef.element.nativeElement, "height", value);
this._gauge.containerResized();
}
get height() {
return this._height;
}
set width(value) {
this._width = value;
this._renderer.setStyle(this._elRef.element.nativeElement, "width", value);
this._gauge.containerResized();
}
get width() {
return this._width;
}
/**
* A collection or manually added axes for the chart.
*/
get ranges() {
if (this._ranges === null) {
let coll = new IgxRadialGaugeRangeCollection();
let inner = coll._innerColl;
inner.addListener((sender, e) => {
switch (e.action) {
case NotifyCollectionChangedAction.Add:
this._rangesAdapter.insertManualItem(e.newStartingIndex, e.newItems.item(0));
break;
case NotifyCollectionChangedAction.Remove:
this._rangesAdapter.removeManualItemAt(e.oldStartingIndex);
break;
case NotifyCollectionChangedAction.Replace:
this._rangesAdapter.removeManualItemAt(e.oldStartingIndex);
this._rangesAdapter.insertManualItem(e.newStartingIndex, e.newItems.item(0));
break;
case NotifyCollectionChangedAction.Reset:
this._rangesAdapter.clearManualItems();
break;
}
});
this._ranges = coll;
}
return this._ranges;
}
ngOnDestroy() {
this._gauge.destroy();
this._wrapper.destroy();
}
createImplementation() {
return new XamRadialGauge();
}
ngAfterContentInit() {
this._rangesAdapter.updateQuery(this.contentRanges);
}
ngAfterViewInit() {
this.updateStyle();
this.i.containerResized();
}
updateStyle() {
this._styling(this._container, this);
if (this.actualRanges && this.actualRanges.length > 0) {
var currRange = this.actualRanges;
for (var i = 0; i < currRange.length; i++) {
currRange[i]._styling(this._root, this, this);
}
}
}
_runInZone(act) {
if (this._zoneRunner != null) {
this._zoneRunner(act);
}
else {
act();
}
}
/**
* @hidden
*/
get i() {
return this._implementation;
} /**
* @hidden
*/
static _createFromInternal(internal) {
if (!internal) {
return null;
}
if (!internal.$type) {
return null;
}
let name = internal.$type.name;
let externalName = "Igx" + name + "Component";
if (!TypeRegistrar.isRegistered(externalName)) {
return null;
}
return TypeRegistrar.create(externalName);
}
/**
* Gets or sets a collection of brushes to be used as the palette for gauge ranges.
*/
get rangeBrushes() {
return fromBrushCollection(this.i.ak);
}
set rangeBrushes(v) {
this.i.ak = toBrushCollection(v);
}
/**
* Gets or sets a collection of brushes to be used as the palette for gauge outlines.
*/
get rangeOutlines() {
return fromBrushCollection(this.i.al);
}
set rangeOutlines(v) {
this.i.al = toBrushCollection(v);
}
/**
* Gets or sets the minimum value of the scale.
*/
get minimumValue() {
return this.i.dz;
}
set minimumValue(v) {
this.i.dz = +v;
}
/**
* Gets the resolved minimum value of the scale.
*/
get actualMinimumValue() {
return this.i.da;
}
set actualMinimumValue(v) {
this.i.da = +v;
}
/**
* Gets or sets the maximum value of the scale.
*/
get maximumValue() {
return this.i.dx;
}
set maximumValue(v) {
this.i.dx = +v;
}
/**
* Gets the resolved maximum value of the scale.
*/
get actualMaximumValue() {
return this.i.c9;
}
set actualMaximumValue(v) {
this.i.c9 = +v;
}
/**
* Gets or sets the interval to use for the scale.
*/
get interval() {
return this.i.dt;
}
set interval(v) {
this.i.dt = +v;
}
/**
* Gets or sets the x position of the center of the gauge with the value ranging from 0 to 1.
*/
get centerX() {
return this.i.dl;
}
set centerX(v) {
this.i.dl = +v;
}
/**
* Gets or sets the y position of the center of the gauge with the value ranging from 0 to 1.
*/
get centerY() {
return this.i.dm;
}
set centerY(v) {
this.i.dm = +v;
}
/**
* Gets or sets the value at which to point the needle of the gauge.
*/
get value() {
return this.i.ff;
}
set value(v) {
this.i.ff = +v;
}
/**
* Gets or sets the highlight value at which to point the secondary needle of the gauge.
*/
get highlightValue() {
return this.i.dr;
}
set highlightValue(v) {
this.i.dr = +v;
}
/**
* Gets the actual opacity of the primary needle while highlighting
*/
get actualHighlightValueOpacity() {
return this.i.c8;
}
set actualHighlightValueOpacity(v) {
this.i.c8 = +v;
}
/**
* Gets or sets the opacity of the primary needle while highlighting
*/
get highlightValueOpacity() {
return this.i.ds;
}
set highlightValueOpacity(v) {
this.i.ds = +v;
}
/**
* Gets whether and how to display the highlighted value.
*/
get actualHighlightValueDisplayMode() {
return this.i.bu;
}
set actualHighlightValueDisplayMode(v) {
this.i.bu = ensureEnum(HighlightedValueDisplayMode_$type, v);
}
/**
* Gets or sets whether and how to display the highlighted value.
*/
get highlightValueDisplayMode() {
return this.i.bv;
}
set highlightValueDisplayMode(v) {
this.i.bv = ensureEnum(HighlightedValueDisplayMode_$type, v);
}
/**
* Gets or sets the start angle for the scale in degrees.
*/
get scaleStartAngle() {
return this.i.ez;
}
set scaleStartAngle(v) {
this.i.ez = +v;
}
/**
* Gets or sets the end angle for the scale in degrees.
*/
get scaleEndAngle() {
return this.i.eu;
}
set scaleEndAngle(v) {
this.i.eu = +v;
}
/**
* Gets or sets the direction in which the scale sweeps around the center from the start angle to end angle.
*/
get scaleSweepDirection() {
return this.i.mi;
}
set scaleSweepDirection(v) {
this.i.mi = ensureEnum(SweepDirection_$type, v);
}
/**
* Gets or sets the number of milliseconds over which changes to the gauge should be animated.
*/
get transitionDuration() {
return this.i.fg;
}
set transitionDuration(v) {
this.i.fg = +v;
}
/**
* Gets or sets the brush to use when rendering the fill of the needle.
*/
get needleBrush() {
return brushToString(this.i.ma);
}
set needleBrush(v) {
this.i.ma = stringToBrush(v);
}
/**
* Gets or sets the brush to use when rendering the outline of the needle.
*/
get needleOutline() {
return brushToString(this.i.mb);
}
set needleOutline(v) {
this.i.mb = stringToBrush(v);
}
/**
* Gets or sets the extent (from -1 to 1) at which to start rendering the needle, measured from the center of the gauge.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get needleStartExtent() {
return this.i.ei;
}
set needleStartExtent(v) {
this.i.ei = +v;
}
/**
* Gets or sets the extent (from -1 to 1) at which to end rendering the needle, measured from the center of the gauge.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get needleEndExtent() {
return this.i.ea;
}
set needleEndExtent(v) {
this.i.ea = +v;
}
/**
* Gets or sets the shape to use when rendering the needle from a number of options.
*/
get needleShape() {
return this.i.a5;
}
set needleShape(v) {
this.i.a5 = ensureEnum(RadialGaugeNeedleShape_$type, v);
}
/**
* Gets or sets the width of the needle at its point using a value from (0 to 1). Note: Only some needle shapes respect this property.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get needleStartWidthRatio() {
return this.i.ej;
}
set needleStartWidthRatio(v) {
this.i.ej = +v;
}
/**
* Gets or sets the width of the needle at its point using a value from (0 to 1). Note: Only some needle shapes respect this property.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get needleEndWidthRatio() {
return this.i.eb;
}
set needleEndWidthRatio(v) {
this.i.eb = +v;
}
/**
* Gets or sets the width of the needle at its feature which is closest to the base (e.g. a bulb) with a value from 0 to 1. Note: Only some needle shapes respect this property, namely: NeedleWithBulb, RectangleWithBulb, TrapezoidWithBulb, and TriangleWithBulb.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get needleBaseFeatureWidthRatio() {
return this.i.d9;
}
set needleBaseFeatureWidthRatio(v) {
this.i.d9 = +v;
}
/**
* Gets or sets the extent of the feature which is closest to the base (e.g. a bulb) with a value from -1 to 1. Note: Only some needle shapes respect this property, namely: NeedleWithBulb, RectangleWithBulb, TrapezoidWithBulb, and TriangleWithBulb.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get needleBaseFeatureExtent() {
return this.i.d8;
}
set needleBaseFeatureExtent(v) {
this.i.d8 = +v;
}
/**
* Gets or sets the width of the needle at its feature which is closest to the point (e.g. the tapering point of a needle) with a value from 0 to 1. Note: Only some needle shapes respect this property.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get needlePointFeatureWidthRatio() {
return this.i.eh;
}
set needlePointFeatureWidthRatio(v) {
this.i.eh = +v;
}
/**
* Gets or sets the extent of the feature which is closest to the point (e.g. the tapering point of a needle) with a value from -1 to 1. Note: Only some needle shapes respect this property.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get needlePointFeatureExtent() {
return this.i.eg;
}
set needlePointFeatureExtent(v) {
this.i.eg = +v;
}
/**
* Gets or sets the width of the cap of the needle with a value from 0 to 1. Note: Will only take effect if you have a cap set on the needle.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get needlePivotWidthRatio() {
return this.i.ef;
}
set needlePivotWidthRatio(v) {
this.i.ef = +v;
}
/**
* Gets or sets the width of the inner cutout section of the needle cap with a value from 0 to 1. Note: Will only take effect if you have a cap set on the needle that has a cutout section.
*/
get needlePivotInnerWidthRatio() {
return this.i.ec;
}
set needlePivotInnerWidthRatio(v) {
this.i.ec = +v;
}
/**
* Gets or sets the shape to use for the needle cap.
*/
get needlePivotShape() {
return this.i.a6;
}
set needlePivotShape(v) {
this.i.a6 = ensureEnum(RadialGaugePivotShape_$type, v);
}
/**
* Gets or sets the position at which to start rendering the scale, measured from the center of the gauge as a value from 0 to 1.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get scaleStartExtent() {
return this.i.e0;
}
set scaleStartExtent(v) {
this.i.e0 = +v;
}
/**
* Gets or sets the brush to use for filling the needle cap. Note: this only applies to certain cap shapes.
*/
get needlePivotBrush() {
return brushToString(this.i.mc);
}
set needlePivotBrush(v) {
this.i.mc = stringToBrush(v);
}
/**
* Gets or sets the brush to use for the outlines of the needle cap.
*/
get needlePivotOutline() {
return brushToString(this.i.md);
}
set needlePivotOutline(v) {
this.i.md = stringToBrush(v);
}
/**
* Gets or sets the stroke thickness of the needle outline.
*/
get needleStrokeThickness() {
return this.i.ek;
}
set needleStrokeThickness(v) {
this.i.ek = +v;
}
/**
* Gets or sets the stroke thickness to use for the outline of the needle cap.
*/
get needlePivotStrokeThickness() {
return this.i.ed;
}
set needlePivotStrokeThickness(v) {
this.i.ed = +v;
}
/**
* Gets or sets the position at which to stop rendering the scale as a value from 0 to 1 measured from the center of the gauge.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get scaleEndExtent() {
return this.i.ev;
}
set scaleEndExtent(v) {
this.i.ev = +v;
}
/**
* Gets or sets the position at which to put the labels as a value from 0 to 1, measured form the center of the gauge.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get labelExtent() {
return this.i.du;
}
set labelExtent(v) {
this.i.du = +v;
}
/**
* Gets or sets the interval to use for rendering labels. This defaults to be the same interval as the tickmarks on the scale.
*/
get labelInterval() {
return this.i.dw;
}
set labelInterval(v) {
this.i.dw = +v;
}
/**
* Gets or sets the position at which to start rendering the major tickmarks as a value from 0 to 1, measured from the center of the gauge.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get tickStartExtent() {
return this.i.e7;
}
set tickStartExtent(v) {
this.i.e7 = +v;
}
/**
* Gets or sets the position at which to stop rendering the major tickmarks as a value from 0 to 1, measured from the center of the gauge.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get tickEndExtent() {
return this.i.e5;
}
set tickEndExtent(v) {
this.i.e5 = +v;
}
/**
* Gets or sets the stroke thickness to use when rendering ticks.
*/
get tickStrokeThickness() {
return this.i.e9;
}
set tickStrokeThickness(v) {
this.i.e9 = +v;
}
/**
* Gets or sets the brush to use for the major tickmarks.
*/
get tickBrush() {
return brushToString(this.i.mg);
}
set tickBrush(v) {
this.i.mg = stringToBrush(v);
}
/**
* Gets or sets the brush to use for the label font.
*/
get fontBrush() {
return brushToString(this.i.l6);
}
set fontBrush(v) {
this.i.l6 = stringToBrush(v);
}
/**
* Gets or sets the position at which to start rendering the minor tickmarks as a value from 0 to 1, measured from the center of the gauge.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get minorTickStartExtent() {
return this.i.d4;
}
set minorTickStartExtent(v) {
this.i.d4 = +v;
}
/**
* Gets or sets the position at which to stop rendering the minor tickmarks as a value from 0 to 1, measured from the center of the gauge.
* Values further from zero than 1 can be used to make this extend further than the normal radius of the gauge.
*/
get minorTickEndExtent() {
return this.i.d2;
}
set minorTickEndExtent(v) {
this.i.d2 = +v;
}
/**
* Gets or sets the stroke thickness to use when rendering minor ticks.
*/
get minorTickStrokeThickness() {
return this.i.d6;
}
set minorTickStrokeThickness(v) {
this.i.d6 = +v;
}
/**
* Gets or sets the brush to use for the minor tickmarks.
*/
get minorTickBrush() {
return brushToString(this.i.l9);
}
set minorTickBrush(v) {
this.i.l9 = stringToBrush(v);
}
/**
* Gets or sets the number of minor tickmarks to place between major tickmarks.
*/
get minorTickCount() {
return this.i.d1;
}
set minorTickCount(v) {
this.i.d1 = +v;
}
/**
* Gets or sets the brush to use to fill the background of the scale.
*/
get scaleBrush() {
return brushToString(this.i.me);
}
set scaleBrush(v) {
this.i.me = stringToBrush(v);
}
/**
* Gets or sets the brush to use to fill the backing of the gauge.
*/
get backingBrush() {
return brushToString(this.i.l4);
}
set backingBrush(v) {
this.i.l4 = stringToBrush(v);
}
/**
* Gets or sets the brush to use for the outline of the backing.
*/
get backingOutline() {
return brushToString(this.i.l5);
}
set backingOutline(v) {
this.i.l5 = stringToBrush(v);
}
/**
* Gets or sets the stroke thickness of the backing outline.
*/
get backingStrokeThickness() {
return this.i.dj;
}
set backingStrokeThickness(v) {
this.i.dj = +v;
}
/**
* Gets or sets the outer extent of the gauge backing.
*/
get backingOuterExtent() {
return this.i.dg;
}
set backingOuterExtent(v) {
this.i.dg = +v;
}
/**
* Gets or sets the over sweep angle to apply to the backing if it is displaying fitted (in degrees). Must be greater or equal to 0.
*/
get backingOversweep() {
return this.i.di;
}
set backingOversweep(v) {
this.i.di = +v;
}
/**
* Gets or sets the extra degrees of sweep to apply to the scale background. Must be greater or equal to 0.
*/
get scaleOversweep() {
return this.i.ex;
}
set scaleOversweep(v) {
this.i.ex = +v;
}
/**
* Gets or sets the oversweep shape to use for the excess fill area for the scale.
*/
get scaleOversweepShape() {
return this.i.a8;
}
set scaleOversweepShape(v) {
this.i.a8 = ensureEnum(RadialGaugeScaleOversweepShape_$type, v);
}
/**
* Gets or sets the corner rounding radius to use for the fitted scale backings.
*/
get backingCornerRadius() {
return this.i.dc;
}
set backingCornerRadius(v) {
this.i.dc = +v;
}
/**
* Gets or sets the inner extent of the gauge backing.
*/
get backingInnerExtent() {
return this.i.de;
}
set backingInnerExtent(v) {
this.i.de = +v;
}
/**
* Gets or sets the type of shape to use for the backing of the gauge.
*/
get backingShape() {
return this.i.a0;
}
set backingShape(v) {
this.i.a0 = ensureEnum(RadialGaugeBackingShape_$type, v);
}
/**
* Gets or sets the multiplying factor to apply to the normal radius of the gauge.
* The radius of the gauge is defined by the minimum of the width and height of the control divided by 2.0.
* This introduces a multiplicative factor to that value.
*/
get radiusMultiplier() {
return this.i.ep;
}
set radiusMultiplier(v) {
this.i.ep = +v;
}
/**
* Gets or sets the strategy to use for omitting labels if the first and last label have the same value.
*/
get duplicateLabelOmissionStrategy() {
return this.i.a1;
}
set duplicateLabelOmissionStrategy(v) {
this.i.a1 = ensureEnum(RadialGaugeDuplicateLabelOmissionStrategy_$type, v);
}
/**
* Gets or sets whether needle dragging is enabled or not.
*/
get isNeedleDraggingEnabled() {
return this.i.cf;
}
set isNeedleDraggingEnabled(v) {
this.i.cf = ensureBool(v);
}
/**
* Gets or sets whether the needle is constrained within the minimum and maximum value range during dragging.
*/
get isNeedleDraggingConstrained() {
return this.i.ce;
}
set isNeedleDraggingConstrained(v) {
this.i.ce = ensureBool(v);
}
/**
* Gets or sets whether needle dragging is enabled or not.
*/
get isHighlightNeedleDraggingEnabled() {
return this.i.cd;
}
set isHighlightNeedleDraggingEnabled(v) {
this.i.cd = ensureBool(v);
}
/**
* Gets or sets whether the needle is constrained within the minimum and maximum value range during dragging.
*/
get isHighlightNeedleDraggingConstrained() {
return this.i.cc;
}
set isHighlightNeedleDraggingConstrained(v) {
this.i.cc = ensureBool(v);
}
/**
* Gets or sets the font.
*/
get font() {
return this.i.fv;
}
set font(v) {
this.i.fv = v;
}
/**
* Gets or sets the label composite format used when creating label values.
*/
get labelFormat() {
return this.i.gi;
}
set labelFormat(v) {
this.i.gi = v;
}
/**
* Gets or sets the format specifiers to use with the LabelFormat string.
*/
get labelFormatSpecifiers() {
return this.i.ah;
}
set labelFormatSpecifiers(v) {
if (v && !Array.isArray(v) && typeof (v) == "string") {
const re = /\s*(?:,|\s|$)\s*/gm;
v = v.split(re);
}
this.i.ah = v;
}
/**
* Gets a value indicating whether the radial gauge is currently animating.
*/
get animating() {
return this.i.b5;
}
/**
* Gets the transition progress of the animation when the control is animating.
*/
get transitionProgress() {
return this.i.fd;
}
set transitionProgress(v) {
this.i.fd = +v;
}
/**
* Gets or sets the scaling value used to affect the pixel density of the control.
* A higher scaling ratio will produce crisper visuals at the expense of memory. Lower values will cause the control
* to appear blurry.
*/
get pixelScalingRatio() {
return this.i.eo;
}
set pixelScalingRatio(v) {
this.i.eo = +v;
}
/**
* Gets the actual pixel scaling ratio used to affect the pixel density of the control.
* A higher scaling ratio will produce crisper visuals at the expense of memory. Lower values will cause the control
* to appear blurry.
*/
get actualPixelScalingRatio() {
return this.i.db;
}
set actualPixelScalingRatio(v) {
this.i.db = +v;
}
/**
* Gets the optical scaling ratio calculated by dividing minimum gauge size by value of OpticalScalingSize property.
*/
get opticalScalingRatio() {
return this.i.em;
}
set opticalScalingRatio(v) {
this.i.em = +v;
}
/**
* Gets or sets the title uses optical scaling when the gauge is resized.
*/
get opticalScalingEnabled() {
return this.i.ck;
}
set opticalScalingEnabled(v) {
this.i.ck = ensureBool(v);
}
/**
* Gets or sets the size at which labels have 100% optical scaling, e.g. labels will have larger fonts when gauge's size is larger
* - labels will have 200% larger fonts when gauge's size is 1000 and this property is set to 500
* - labels will have 50% smaller fonts when gauge's size is 250 and this property is set to 500
*/
get opticalScalingSize() {
return this.i.en;
}
set opticalScalingSize(v) {
this.i.en = +v;
}
/**
* Gets or sets the text displayed in the title of the gauge.
*/
get titleText() {
return this.i.id;
}
set titleText(v) {
this.i.id = v;
}
/**
* Gets or sets the text displayed in the subtitle of the gauge.
*/
get subtitleText() {
return this.i.hy;
}
set subtitleText(v) {
this.i.hy = v;
}
/**
* Gets or sets the angle for the inner label in degrees.
*/
get titleAngle() {
return this.i.fb;
}
set titleAngle(v) {
this.i.fb = +v;
}
/**
* Gets or sets the angle for the inner label in degrees.
*/
get subtitleAngle() {
return this.i.e3;
}
set subtitleAngle(v) {
this.i.e3 = +v;
}
/**
* Gets or sets the angle for the inner label in degrees.
*/
get titleExtent() {
return this.i.fc;
}
set titleExtent(v) {
this.i.fc = +v;
}
/**
* Gets or sets the angle for the inner label in degrees.
*/
get subtitleExtent() {
return this.i.e4;
}
set subtitleExtent(v) {
this.i.e4 = +v;
}
/**
* Gets or sets the brush to use for rendering inner unit text
*/
get titleBrush() {
return brushToString(this.i.mh);
}
set titleBrush(v) {
this.i.mh = stringToBrush(v);
}
/**
* Gets or sets the brush to use for rendering inner unit text
*/
get subtitleBrush() {
return brushToString(this.i.mf);
}
set subtitleBrush(v) {
this.i.mf = stringToBrush(v);
}
/**
* Gets or sets the title show values of the gauge.
*/
get titleDisplaysValue() {
return this.i.co;
}
set titleDisplaysValue(v) {
this.i.co = ensureBool(v);
}
/**
* Gets or sets the subtitle show values of the gauge.
*/
get subtitleDisplaysValue() {
return this.i.cm;
}
set subtitleDisplaysValue(v) {
this.i.cm = ensureBool(v);
}
/**
* Gets or sets whether or not the title should snap angle position to needle pivot (opposite of needle pointer).
*/
get titleSnapsToNeedlePivot() {
return this.i.cp;
}
set titleSnapsToNeedlePivot(v) {
this.i.cp = ensureBool(v);
}
/**
* Gets or sets whether or not the subtitle should snap angle position to needle pivot (opposite of needle pointer).
*/
get subtitleSnapsToNeedlePivot() {
return this.i.cn;
}
set subtitleSnapsToNeedlePivot(v) {
this.i.cn = ensureBool(v);
}
/**
* Gets or sets the subtitle format used when creating subtitle label.
*/
get subtitleFormat() {
return this.i.hu;
}
set subtitleFormat(v) {
this.i.hu = v;
}
/**
* Gets or sets the format specifiers to use with the SubtitleFormat string.
*/
get subtitleFormatSpecifiers() {
return this.i.ai;
}
set subtitleFormatSpecifiers(v) {
if (v && !Array.isArray(v) && typeof (v) == "string") {
const re = /\s*(?:,|\s|$)\s*/gm;
v = v.split(re);
}
this.i.ai = v;
}
/**
* Gets or sets the title format used when creating title label.
*/
get titleFormat() {
return this.i.h9;
}
set titleFormat(v) {
this.i.h9 = v;
}
/**
* Gets or sets the format specifiers to use with the TitleFormat string.
*/
get titleFormatSpecifiers() {
return this.i.aj;
}
set titleFormatSpecifiers(v) {
if (v && !Array.isArray(v) && typeof (v) == "string") {
const re = /\s*(?:,|\s|$)\s*/gm;
v = v.split(re);
}
this.i.aj = v;
}
/**
* Gets or sets the text displayed for the highlight label of the gauge.
*/
get highlightLabelText() {
return this.i.f6;
}
set highlightLabelText(v) {
this.i.f6 = v;
}
/**
* Gets or sets the angle for the highlight label in degrees.
*/
get highlightLabelAngle() {
return this.i.dp;
}
set highlightLabelAngle(v) {
this.i.dp = +v;
}
/**
* Gets or sets the angle for the highlight label in degrees.
*/
get highlightLabelExtent() {
return this.i.dq;
}
set highlightLabelExtent(v) {
this.i.dq = +v;
}
/**
* Gets or sets the brush to use for rendering highlight text
*/
get highlightLabelBrush() {
return brushToString(this.i.l8);
}
set highlightLabelBrush(v) {
this.i.l8 = stringToBrush(v);
}
/**
* Gets or sets the highlight label shows values of the gauge.
*/
get highlightLabelDisplaysValue() {
return this.i.b7;
}
set highlightLabelDisplaysValue(v) {
this.i.b7 = ensureBool(v);
}
/**
* Gets or sets whether or not the highlight label should snap angle position to needle pivot (opposite of needle pointer).
*/
get highlightLabelSnapsToNeedlePivot() {
return this.i.b8;
}
set highlightLabelSnapsToNeedlePivot(v) {
this.i.b8 = ensureBool(v);
}
/**
* Gets or sets the format used when creating highlight label.
*/
get highlightLabelFormat() {
return this.i.f2;
}
set highlightLabelFormat(v) {
this.i.f2 = v;
}
/**
* Gets or sets the format specifiers to use with the HighlightLabelFormat string.
*/
get highlightLabelFormatSpecifiers() {
return this.i.ag;
}
set highlightLabelFormatSpecifiers(v) {
if (v && !Array.isArray(v) && typeof (v) == "string") {
const re = /\s*(?:,|\s|$)\s*/gm;
v = v.split(re);
}
this.i.ag = v;
}
/**
* Gets or Sets the style to use for the units text.
*/
get highlightLabelTextStyle() {
if (this.i.bq == null) {
return null;
}
return this.i.bq.fontString;
}
set highlightLabelTextStyle(v) {
let fi = new FontInfo();
fi.fontString = v;
this.i.bq = fi;
}
/**
* Gets or Sets the style to use for the units text.
*/
get subtitleTextStyle() {
if (this.i.br == null) {
return null;
}
return this.i.br.fontString;
}
set subtitleTextStyle(v) {
let fi = new FontInfo();
fi.fontString = v;
this.i.br = fi;
}
/**
* Gets or Sets the style to use for the units text.
*/
get titleTextStyle() {
if (this.i.bs == null) {
return null;
}
return this.i.bs.fontString;
}
set titleTextStyle(v) {
let fi = new FontInfo();
fi.fontString = v;
this.i.bs = fi;
}
findByName(name) {
if (this.findEphemera) {
if (name && name.indexOf("@@e:") == 0) {
return this.findEphemera(name);
}
}
if (this.ranges != null && this.ranges.findByName && this.ranges.findByName(name)) {
return this.ranges.findByName(name);
}
if (this.labelFormatSpecifiers != null && arrayFindByName(this.labelFormatSpecifiers, name)) {
return arrayFindByName(this.labelFormatSpecifiers, name);
}
if (this.subtitleFormatSpecifiers != null && arrayFindByName(this.subtitleFormatSpecifiers, name)) {
return arrayFindByName(this.subtitleFormatSpecifiers, name);
}
if (this.titleFormatSpecifiers != null && arrayFindByName(this.titleFormatSpecifiers, name)) {
return arrayFindByName(this.titleFormatSpecifiers, name);
}
if (this.highlightLabelFormatSpecifiers != null && arrayFindByName(this.highlightLabelFormatSpecifiers, name)) {
return arrayFindByName(this.highlightLabelFormatSpecifiers, name);
}
return null;
}
get hasUserValues() {
return this._hasUserValues;
}
__m(propertyName) {
if (!this._inStyling) {
this._hasUserValues.add(propertyName);
}
}
_styling(container, component, parent) {
if (this._inStyling) {
return;
}
this._inStyling = true;
this._stylingContainer = container;
this._stylingParent = component;
let genericPrefix = "";
let typeName = this.i.$type.name;
if (typeName.indexOf("Xam") === 0) {
typeName = typeName.substring(3);
}
genericPrefix = toSpinal("RadialGaugeComponent");
let additionalPrefixes = [];
let prefix = toSpinal(typeName);
additionalPrefixes.push(prefix + "-");
let b = this.i.$type.baseType;
while (b && b.name != "Object" &&
b.name != "Base" &&
b.name != "Control" &&
b.Name != "DependencyObject" &&
b.Name != "FrameworkElement") {
typeName = b.name;
if (typeName.indexOf("Xam") === 0) {
typeName = typeName.substring(3);
}
let basePrefix = toSpinal(typeName);
additionalPrefixes.push(basePrefix + "-");
b = b.baseType;
}
if (parent) {
let parentTypeName = parent.i.$type.name;
if (parentTypeName.indexOf("Xam") === 0) {
parentTypeName = parentTypeName.substring(3);
}
let parentPrefix = toSpinal(parentTypeName);
additionalPrefixes.push(parentPrefix + "-" + genericPrefix + "-");
additionalPrefixes.push(parentPrefix + "-" + prefix + "-");
}
initializePropertiesFromCss(container, this, genericPrefix + "-", this.hasUserValues, false, additionalPrefixes);
if (this._otherStyling) {
this._otherStyling(container, component, parent);
}
this._inStyling = false;
}
/**
* Scales a value on the gauge's main scale to an angle around the center point of the gauge, in radians.
* @param value * The value to scale.
*/
scaleValue(value) {
let iv = this.i.e2(value);
return (iv);
}
/**
* Unscales a value from an angle in radians to the represented value along the main scale of the gauge.
* @param angle * The angle in radians to unscale to a value.
*/
unscaleValue(angle) {
let iv = this.i.fe(angle);
return (iv);
}
/**
* Gets the value for the main scale of the gauge for a given point within the bounds of the gauge.
* @param point * The point for which to retrieve the associated value.
*/
getValueForPoint(point) {
let iv = this.i.dn(toPoint(point));
return (iv);
}
getPointForValue(value, extent) {
let iv = this.i.mk(value, extent);
return fromPoint(iv);
}
styleUpdated() {
this.i.je();
}
needleContainsPoint(point, isFinger) {
let iv = this.i.needleContainsPoint(toPoint(point), isFinger);
return (iv);
}
highlightNeedleContainsPoint(point, isFinger) {
let iv = this.i.highlightNeedleContainsPoint(toPoint(point), isFinger);
return (iv);
}
/**
* Called by the UI framework to provide a UI container for rendering this control.
* @param container * The UI container element.
*/
provideContainer(container) {
this.i.provideContainer(container);
}
containerResized() {
this.i.containerResized();
}
/**
* Use to force the radial gauge to finish any deferred work before printing or evaluating its visual.
* This should only be called if the visual of the radial gauge needs to be synchronously saved or evaluated.
* Calling this method too often will hinder the performance of the radial gauge.
*/
flush() {
this.i.ir();
}
/**
* Returns visuals as a serialized string.
*/
exportSerializedVisualData() {
let iv = this.i.fu();
return (iv);
}
/**
* Event which is raised when a title of the gauge is aligned and styled.
* Function takes first argument null and second argument ui.
* Use ui.owner to obtain reference to gauge widget.
* Use ui.actualMinimumValue to obtain the minimum value of gauge scale.
* Use ui.actualMaximumValue to obtain the maximum value of gauge scale.
* Use ui.startAngle to obtain the starting angle of gauge scale.
* Use ui.endAngle to obtain the ending angle of gauge scale.
* Use ui.angle to obtain the angle on the gauge scale at which the label will be located.
* Use ui.value to obtain the value on the gauge scale associated with the label.
* Use ui.label to obtain the string value of the label.
*/
get alignTitle() {
if (this._alignTitle == null) {
this._alignTitle = new EventEmitter();
this.i.alignTitle = delegateCombine(this.i.alignTitle, (o, e) => {
this._runInZone(() => {
let outerArgs = new IgxAlignRadialGaugeLabelEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeAlignTitle) {
this.beforeAlignTitle(this, outerArgs);
}
this._alignTitle.emit({
sender: this,
args: outerArgs
});
});
});
}
return this._alignTitle;
}
/**
* Event which is raised when a subtitle of the gauge is aligned and styled.
* Function takes first argument null and second argument ui.
* Use ui.owner to obtain reference to gauge widget.
* Use ui.actualMinimumValue to obtain the minimum value of gauge scale.
* Use ui.actualMaximumValue to obtain the maximum value of gauge scale.
* Use ui.startAngle to obtain the starting angle of gauge scale.
* Use ui.endAngle to obtain the ending angle of gauge scale.
* Use ui.angle to obtain the angle on the gauge scale at which the label will be located.
* Use ui.value to obtain the value on the gauge scale associated with the label.
* Use ui.label to obtain the string value of the label.
*/
get alignSubtitle() {
if (this._alignSubtitle == null) {
this._alignSubtitle = new EventEmitter();
this.i.alignSubtitle = delegateCombine(this.i.alignSubtitle, (o, e) => {
this._runInZone(() => {
let outerArgs = new IgxAlignRadialGaugeLabelEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeAlignSubtitle) {
this.beforeAlignSubtitle(this, outerArgs);
}
this._alignSubtitle.emit({
sender: this,
args: outerArgs
});
});
});
}
return this._alignSubtitle;
}
/**
* Event which is raised when a highlight label of the gauge is aligned and styled.
* Function takes first argument null and second argument ui.
* Use ui.owner to obtain reference to gauge widget.
* Use ui.actualMinimumValue to obtain the minimum value of gauge scale.
* Use ui.actualMaximumValue to obtain the maximum value of gauge scale.
* Use ui.startAngle to obtain the starting angle of gauge scale.
* Use ui.endAngle to obtain the ending angle of gauge scale.
* Use ui.angle to obtain the angle on the gauge scale at which the label will be located.
* Use ui.value to obtain the value on the gauge scale associated with the label.
* Use ui.label to obtain the string value of the label.
*/
get alignHighlightLabel() {
if (this._alignHighlightLabel == null) {
this._alignHighlightLabel = new EventEmitter();
this.i.alignHighlightLabel = delegateCombine(this.i.alignHighlightLabel, (o, e) => {
this._runInZone(() => {
let outerArgs = new IgxAlignRadialGaugeLabelEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeAlignHighlightLabel) {
this.beforeAlignHighlightLabel(this, outerArgs);
}
this._alignHighlightLabel.emit({
sender: this,
args: outerArgs
});
});
});
}
return this._alignHighlightLabel;
}
/**
* Event which is raised when a title of the gauge is formatted.
* Function takes first argument null and second argument ui.
* Use ui.owner to obtain reference to gauge widget.
* Use ui.actualMinimumValue to obtain the minimum value of gauge scale.
* Use ui.actualMaximumValue to obtain the maximum value of gauge scale.
* Use ui.startAngle to obtain the starting angle of gauge scale.
* Use ui.endAngle to obtain the ending angle of gauge scale.
* Use ui.angle to obtain the angle on the gauge scale at which the title will be located.
* Use ui.value to obtain the value on the gauge scale associated with the title.
* Use ui.label to obtain the string value of the title.
*/
get formatTitle() {
if (this._formatTitle == null) {
this._formatTitle = new EventEmitter();
this.i.formatTitle = delegateCombine(this.i.formatTitle, (o, e) => {
this._runInZone(() => {
let outerArgs = new IgxFormatRadialGaugeLabelEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeFormatTitle) {
this.beforeFormatTitle(this, outerArgs);
}
this._formatTitle.emit({
sender: this,
args: outerArgs
});
});
});
}
return this._formatTitle;
}
/**
* Event which is raised when a subtitle of the gauge is formatted.
* Function takes first argument null and second argument ui.
* Use ui.owner to obtain reference to gauge widget.
* Use ui.actualMinimumValue to obtain the minimum value of gauge scale.
* Use ui.actualMaximumValue to obtain the maximum value of gauge scale.
* Use ui.startAngle to obtain the starting angle of gauge scale.
* Use ui.endAngle to obtain the ending angle of gauge scale.
* Use ui.angle to obtain the angle on the gauge scale at which the subtitle will be located.
* Use ui.value to obtain the value on the gauge scale associated with the subtitle.
* Use ui.label to obtain the string value of the subtitle.
*/
get formatSubtitle() {
if (this._formatSubtitle == null) {
this._formatSubtitle = new EventEmitter();
this.i.formatSubtitle = delegateCombine(this.i.formatSubtitle, (o, e) => {
this._runInZone(() => {
let outerArgs = new IgxFormatRadialGaugeLabelEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeFormatSubtitle) {
this.beforeFormatSubtitle(this, outerArgs);
}
this._formatSubtitle.emit({
sender: this,
args: outerArgs
});
});
});
}
return this._formatSubtitle;
}
/**
* Event which is raised when a highlight label of the gauge is formatted.
* Function takes first argument null and second argument ui.
* Use ui.owner to obtain reference to gauge widget.
* Use ui.actualMinimumValue to obtain the minimum value of gauge scale.
* Use ui.actualMaximumValue to obtain the maximum value of gauge scale.
* Use ui.startAngle to obtain the starting angle of gauge scale.
* Use ui.endAngle to obtain the ending angle of gauge scale.
* Use ui.angle to obtain the angle on the gauge scale at which the title will be located.
* Use ui.value to obtain the value on the gauge scale associated with the title.
* Use ui.label to obtain the string value of the title.
*/
get formatHighlightLabel() {
if (this._formatHighlightLabel == null) {
this._formatHighlightLabel = new EventEmitter();
this.i.formatHighlightLabel = delegateCombine(this.i.formatHighlightLabel, (o, e) => {
this._runInZone(() => {
let outerArgs = new IgxFormatRadialGaugeLabelEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeFormatHighlightLabel) {
this.beforeFormatHighlightLabel(this, outerArgs);
}
this._formatHighlightLabel.emit({
sender: this,
args: outerArgs
});
});
});
}
return this._formatHighlightLabel;
}
/**
* Event which is raised when a label of the gauge is formatted.
* Function takes first argument null and second argument ui.
* Use ui.owner to obtain reference to gauge widget.
* Use ui.actualMinimumValue to obtain the minimum value of gauge scale.
* Use ui.actualMaximumValue to obtain the maximum value of gauge scale.
* Use ui.startAngle to obtain the starting angle of gauge scale.
* Use ui.endAngle to obtain the ending angle of gauge scale.
* Use ui.angle to obtain the angle on the gauge scale at which the label will be located.
* Use ui.value to obtain the value on the gauge scale associated with the label.
* Use ui.label to obtain the string value of the label.
*/
get formatLabel() {
if (this._formatLabel == null) {
this._formatLabel = new EventEmitter();
this.i.formatLabel = delegateCombine(this.i.formatLabel, (o, e) => {
this._runInZone(() => {
let outerArgs = new IgxFormatRadialGaugeLabelEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeFormatLabel) {
this.beforeFormatLabel(this, outerArgs);
}
this._formatLabel.emit({
sender: this,
args: outerArgs
});
});
});
}
return this._formatLabel;
}
/**
* Event which is raised when a label of the gauge is aligned along the scale.
* Function takes first argument null and second argument ui.
* Use ui.owner to obtain reference to gauge widget.
* Use ui.actualMinimumValue to obtain the minimum value of gauge scale.
* Use ui.actualMaximumValue to obtain the maximum value of gauge scale.
* Use ui.startAngle to obtain the starting angle of gauge scale.
* Use ui.endAngle to obtain the ending angle of gauge scale.
* Use ui.angle to obtain the angle on the gauge scale at which the label will be located.
* Use ui.value to obtain the value on the gauge scale associated with the label.
* Use ui.label to obtain the string value of the label.
* Use ui.width to obtain the width of the label.
* Use ui.height to obtain the height of the label.
* Use ui.offsetX to obtain the X offset of the label on the gauge scale.
* Use ui.offsetY to obtain the Y offset of the label on the gauge scale.
*/
get alignLabel() {
if (this._alignLabel == null) {
this._alignLabel = new EventEmitter();
this.i.alignLabel = delegateCombine(this.i.alignLabel, (o, e) => {
this._runInZone(() => {
let outerArgs = new IgxAlignRadialGaugeLabelEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeAlignLabel) {
this.beforeAlignLabel(this, outerArgs);
}
this._alignLabel.emit({
sender: this,
args: outerArgs
});
});
});
}
return this._alignLabel;
}
/**
* Occurs when the Value property changes.
*/
get valueChanged() {
if (this._valueChanged == null) {
this._valueChanged = new EventEmitter();
this.i.valueChanged = delegateCombine(this.i.valueChanged, (o, e) => {
let outerArgs = new IgxDoubleValueChangedEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeValueChanged) {
this.beforeValueChanged(this, outerArgs);
}
this._valueChanged.emit({
sender: this,
args: outerArgs
});
});
}
return this._valueChanged;
}
/**
* Occurs when the Hightlight Value property changes.
*/
get highlightValueChanged() {
if (this._highlightValueChanged == null) {
this._highlightValueChanged = new EventEmitter();
this.i.highlightValueChanged = delegateCombine(this.i.highlightValueChanged, (o, e) => {
let outerArgs = new IgxDoubleValueChangedEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeHighlightValueChanged) {
this.beforeHighlightValueChanged(this, outerArgs);
}
this._highlightValueChanged.emit({
sender: this,
args: outerArgs
});
});
}
return this._highlightValueChanged;
}
get actualMinimumValueChange() {
if (this._actualMinimumValueChange == null) {
this._actualMinimumValueChange = new EventEmitter();
this.i.propertyChanged = delegateCombine(this.i.propertyChanged, (o, e) => {
let iv = e;
let ext = this.actualMinimumValue;
if (this.beforeActualMinimumValueChange) {
this.beforeActualMinimumValueChange(this, ext);
}
this._actualMinimumValueChange.emit(ext);
});
}
return this._actualMinimumValueChange;
}
get actualMaximumValueChange() {
if (this._actualMaximumValueChange == null) {
this._actualMaximumValueChange = new EventEmitter();
this.i.propertyChanged = delegateCombine(this.i.propertyChanged, (o, e) => {
let iv = e;
let ext = this.actualMaximumValue;
if (this.beforeActualMaximumValueChange) {
this.beforeActualMaximumValueChange(this, ext);
}
this._actualMaximumValueChange.emit(ext);
});
}
return this._actualMaximumValueChange;
}
}
IgxRadialGaugeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: IgxRadialGaugeComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: i0.NgZone }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
IgxRadialGaugeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: IgxRadialGaugeComponent, selector: "igx-radial-gauge", inputs: { height: "height", width: "width", rangeBrushes: "rangeBrushes", rangeOutlines: "rangeOutlines", minimumValue: "minimumValue", actualMinimumValue: "actualMinimumValue", maximumValue: "maximumValue", actualMaximumValue: "actualMaximumValue", interval: "interval", centerX: "centerX", centerY: "centerY", value: "value", highlightValue: "highlightValue", actualHighlightValueOpacity: "actualHighlightValueOpacity", highlightValueOpacity: "highlightValueOpacity", actualHighlightValueDisplayMode: "actualHighlightValueDisplayMode", highlightValueDisplayMode: "highlightValueDisplayMode", scaleStartAngle: "scaleStartAngle", scaleEndAngle: "scaleEndAngle", scaleSweepDirection: "scaleSweepDirection", transitionDuration: "transitionDuration", needleBrush: "needleBrush", needleOutline: "needleOutline", needleStartExtent: "needleStartExtent", needleEndExtent: "needleEndExtent", needleShape: "needleShape", needleStartWidthRatio: "needleStartWidthRatio", needleEndWidthRatio: "needleEndWidthRatio", needleBaseFeatureWidthRatio: "needleBaseFeatureWidthRatio", needleBaseFeatureExtent: "needleBaseFeatureExtent", needlePointFeatureWidthRatio: "needlePointFeatureWidthRatio", needlePointFeatureExtent: "needlePointFeatureExtent", needlePivotWidthRatio: "needlePivotWidthRatio", needlePivotInnerWidthRatio: "needlePivotInnerWidthRatio", needlePivotShape: "needlePivotShape", scaleStartExtent: "scaleStartExtent", needlePivotBrush: "needlePivotBrush", needlePivotOutline: "needlePivotOutline", needleStrokeThickness: "needleStrokeThickness", needlePivotStrokeThickness: "needlePivotStrokeThickness", scaleEndExtent: "scaleEndExtent", labelExtent: "labelExtent", labelInterval: "labelInterval", tickStartExtent: "tickStartExtent", tickEndExtent: "tickEndExtent", tickStrokeThickness: "tickStrokeThickness", tickBrush: "tickBrush", fontBrush: "fontBrush", minorTickStartExtent: "minorTickStartExtent", minorTickEndExtent: "minorTickEndExtent", minorTickStrokeThickness: "minorTickStrokeThickness", minorTickBrush: "minorTickBrush", minorTickCount: "minorTickCount", scaleBrush: "scaleBrush", backingBrush: "backingBrush", backingOutline: "backingOutline", backingStrokeThickness: "backingStrokeThickness", backingOuterExtent: "backingOuterExtent", backingOversweep: "backingOversweep", scaleOversweep: "scaleOversweep", scaleOversweepShape: "scaleOversweepShape", backingCornerRadius: "backingCornerRadius", backingInnerExtent: "backingInnerExtent", backingShape: "backingShape", radiusMultiplier: "radiusMultiplier", duplicateLabelOmissionStrategy: "duplicateLabelOmissionStrategy", isNeedleDraggingEnabled: "isNeedleDraggingEnabled", isNeedleDraggingConstrained: "isNeedleDraggingConstrained", isHighlightNeedleDraggingEnabled: "isHighlightNeedleDraggingEnabled", isHighlightNeedleDraggingConstrained: "isHighlightNeedleDraggingConstrained", font: "font", labelFormat: "labelFormat", labelFormatSpecifiers: "labelFormatSpecifiers", transitionProgress: "transitionProgress", pixelScalingRatio: "pixelScalingRatio", actualPixelScalingRatio: "actualPixelScalingRatio", opticalScalingRatio: "opticalScalingRatio", opticalScalingEnabled: "opticalScalingEnabled", opticalScalingSize: "opticalScalingSize", titleText: "titleText", subtitleText: "subtitleText", titleAngle: "titleAngle", subtitleAngle: "subtitleAngle", titleExtent: "titleExtent", subtitleExtent: "subtitleExtent", titleBrush: "titleBrush", subtitleBrush: "subtitleBrush", titleDisplaysValue: "titleDisplaysValue", subtitleDisplaysValue: "subtitleDisplaysValue", titleSnapsToNeedlePivot: "titleSnapsToNeedlePivot", subtitleSnapsToNeedlePivot: "subtitleSnapsToNeedlePivot", subtitleFormat: "subtitleFormat", subtitleFormatSpecifiers: "subtitleFormatSpecifiers", titleFormat: "titleFormat", titleFormatSpecifiers: "titleFormatSpecifiers", highlightLabelText: "highlightLabelText", highlightLabelAngle: "highlightLabelAngle", highlightLabelExtent: "highlightLabelExtent", highlightLabelBrush: "highlightLabelBrush", highlightLabelDisplaysValue: "highlightLabelDisplaysValue", highlightLabelSnapsToNeedlePivot: "highlightLabelSnapsToNeedlePivot", highlightLabelFormat: "highlightLabelFormat", highlightLabelFormatSpecifiers: "highlightLabelFormatSpecifiers", highlightLabelTextStyle: "highlightLabelTextStyle", subtitleTextStyle: "subtitleTextStyle", titleTextStyle: "titleTextStyle" }, outputs: { alignTitle: "alignTitle", alignSubtitle: "alignSubtitle", alignHighlightLabel: "alignHighlightLabel", formatTitle: "formatTitle", formatSubtitle: "formatSubtitle", formatHighlightLabel: "formatHighlightLabel", formatLabel: "formatLabel", alignLabel: "alignLabel", valueChanged: "valueChanged", highlightValueChanged: "highlightValueChanged", actualMinimumValueChange: "actualMinimumValueChange", actualMaximumValueChange: "actualMaximumValueChange" }, host: { classAttribute: "igx-radial-gauge ig-radial-gauge" }, providers: [], queries: [{ propertyName: "contentRanges", predicate: IgxRadialGaugeRangeComponent }], viewQueries: [{ propertyName: "_dynamicContent", first: true, predicate: ["dynamicContent"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: `<ng-container #dynamicContent></ng-container>`, isInline: true, styles: ["\n\t\t:host {\n\t\t\tdisplay: block;\n\t\t}\n\t"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
return IgxRadialGaugeComponent;
})();
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: IgxRadialGaugeComponent, decorators: [{
type: Component,
args: [{
selector: 'igx-radial-gauge',
template: `<ng-container #dynamicContent></ng-container>`,
changeDetection: ChangeDetectionStrategy.OnPush,
providers: [],
host: { 'class': 'igx-radial-gauge ig-radial-gauge' },
styles: [`
:host {
display: block;
}
`]
}]
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i0.NgZone }, { type: i0.ComponentFactoryResolver }, { type: i0.Injector }]; }, propDecorators: { _dynamicContent: [{
type: ViewChild,
args: ["dynamicContent", { read: ViewContainerRef, static: true }]
}], height: [{
type: Input
}], width: [{
type: Input
}], contentRanges: [{
type: ContentChildren,
args: [IgxRadialGaugeRangeComponent]
}], rangeBrushes: [{
type: Input
}], rangeOutlines: [{
type: Input
}], minimumValue: [{
type: Input
}], actualMinimumValue: [{
type: Input
}], maximumValue: [{
type: Input
}], actualMaximumValue: [{
type: Input
}], interval: [{
type: Input
}], centerX: [{
type: Input
}], centerY: [{
type: Input
}], value: [{
type: Input
}], highlightValue: [{
type: Input
}], actualHighlightValueOpacity: [{
type: Input
}], highlightValueOpacity: [{
type: Input
}], actualHighlightValueDisplayMode: [{
type: Input
}], highlightValueDisplayMode: [{
type: Input
}], scaleStartAngle: [{
type: Input
}], scaleEndAngle: [{
type: Input
}], scaleSweepDirection: [{
type: Input
}], transitionDuration: [{
type: Input
}], needleBrush: [{
type: Input
}], needleOutline: [{
type: Input
}], needleStartExtent: [{
type: Input
}], needleEndExtent: [{
type: Input
}], needleShape: [{
type: Input
}], needleStartWidthRatio: [{
type: Input
}], needleEndWidthRatio: [{
type: Input
}], needleBaseFeatureWidthRatio: [{
type: Input
}], needleBaseFeatureExtent: [{
type: Input
}], needlePointFeatureWidthRatio: [{
type: Input
}], needlePointFeatureExtent: [{
type: Input
}], needlePivotWidthRatio: [{
type: Input
}], needlePivotInnerWidthRatio: [{
type: Input
}], needlePivotShape: [{
type: Input
}], scaleStartExtent: [{
type: Input
}], needlePivotBrush: [{
type: Input
}], needlePivotOutline: [{
type: Input
}], needleStrokeThickness: [{
type: Input
}], needlePivotStrokeThickness: [{
type: Input
}], scaleEndExtent: [{
type: Input
}], labelExtent: [{
type: Input
}], labelInterval: [{
type: Input
}], tickStartExtent: [{
type: Input
}], tickEndExtent: [{
type: Input
}], tickStrokeThickness: [{
type: Input
}], tickBrush: [{
type: Input
}], fontBrush: [{
type: Input
}], minorTickStartExtent: [{
type: Input
}], minorTickEndExtent: [{
type: Input
}], minorTickStrokeThickness: [{
type: Input
}], minorTickBrush: [{
type: Input
}], minorTickCount: [{
type: Input
}], scaleBrush: [{
type: Input
}], backingBrush: [{
type: Input
}], backingOutline: [{
type: Input
}], backingStrokeThickness: [{
type: Input
}], backingOuterExtent: [{
type: Input
}], backingOversweep: [{
type: Input
}], scaleOversweep: [{
type: Input
}], scaleOversweepShape: [{
type: Input
}], backingCornerRadius: [{
type: Input
}], backingInnerExtent: [{
type: Input
}], backingShape: [{
type: Input
}], radiusMultiplier: [{
type: Input
}], duplicateLabelOmissionStrategy: [{
type: Input
}], isNeedleDraggingEnabled: [{
type: Input
}], isNeedleDraggingConstrained: [{
type: Input
}], isHighlightNeedleDraggingEnabled: [{
type: Input
}], isHighlightNeedleDraggingConstrained: [{
type: Input
}], font: [{
type: Input
}], labelFormat: [{
type: Input
}], labelFormatSpecifiers: [{
type: Input
}], transitionProgress: [{
type: Input
}], pixelScalingRatio: [{
type: Input
}], actualPixelScalingRatio: [{
type: Input
}], opticalScalingRatio: [{
type: Input
}], opticalScalingEnabled: [{
type: Input
}], opticalScalingSize: [{
type: Input
}], titleText: [{
type: Input
}], subtitleText: [{
type: Input
}], titleAngle: [{
type: Input
}], subtitleAngle: [{
type: Input
}], titleExtent: [{
type: Input
}], subtitleExtent: [{
type: Input
}], titleBrush: [{
type: Input
}], subtitleBrush: [{
type: Input
}], titleDisplaysValue: [{
type: Input
}], subtitleDisplaysValue: [{
type: Input
}], titleSnapsToNeedlePivot: [{
type: Input
}], subtitleSnapsToNeedlePivot: [{
type: Input
}], subtitleFormat: [{
type: Input
}], subtitleFormatSpecifiers: [{
type: Input
}], titleFormat: [{
type: Input
}], titleFormatSpecifiers: [{
type: Input
}], highlightLabelText: [{
type: Input
}], highlightLabelAngle: [{
type: Input
}], highlightLabelExtent: [{
type: Input
}], highlightLabelBrush: [{
type: Input
}], highlightLabelDisplaysValue: [{
type: Input
}], highlightLabelSnapsToNeedlePivot: [{
type: Input
}], highlightLabelFormat: [{
type: Input
}], highlightLabelFormatSpecifiers: [{
type: Input
}], highlightLabelTextStyle: [{
type: Input
}], subtitleTextStyle: [{
type: Input
}], titleTextStyle: [{
type: Input
}], alignTitle: [{
type: Output
}], alignSubtitle: [{
type: Output
}], alignHighlightLabel: [{
type: Output
}], formatTitle: [{
type: Output
}], formatSubtitle: [{
type: Output
}], formatHighlightLabel: [{
type: Output
}], formatLabel: [{
type: Output
}], alignLabel: [{
type: Output
}], valueChanged: [{
type: Output
}], highlightValueChanged: [{
type: Output
}], actualMinimumValueChange: [{
type: Output
}], actualMaximumValueChange: [{
type: Output
}] } });