Detailed Description

Extends the CSS Value object with a function for obtaining OpenType features.

This represents a parsed value of a css property.

Inheritance diagram for Css.Value:
Css.CssKeyword Css.CssUnit Css.Functions.CalcOperator Css.TextureNodeValue Css.Units.FontFamilyUnit Css.Units.TransformValue Css.Units.WritingSystemMap Css.After Css.Before Css.FirstLetter Css.IsChecked Css.IsDefault Css.IsDisabled Css.IsEmpty Css.IsEnabled Css.IsFirstChild Css.IsFocused Css.IsFullscreen Css.IsHover Css.IsIndeterminate Css.IsInRange Css.IsInvalid Css.IsLastChild Css.IsLeft Css.IsLink Css.IsMainUI Css.IsOnlyChild Css.IsOptional Css.IsOutOfRange Css.IsReadWrite Css.IsRequired Css.IsRight Css.IsRoot Css.IsScope Css.IsTarget Css.IsValid Css.IsVisited Css.IsWorldUI Css.Keywords.Absolute Css.Keywords.Auto Css.Keywords.Baseline Css.Keywords.Bevel Css.Keywords.Block Css.Keywords.Bold Css.Keywords.Bolder Css.Keywords.Both Css.Keywords.Bottom Css.Keywords.BreakWord Css.Keywords.Butt Css.Keywords.Capitalize Css.Keywords.Center Css.Keywords.CloseQuote Css.Keywords.Collapse Css.Keywords.Condensed Css.Keywords.Contents Css.Keywords.CoverKeyword Css.Keywords.CurrentColor Css.Keywords.Dashed Css.Keywords.Disc Css.Keywords.Ease Css.Keywords.EaseIn Css.Keywords.EaseInOut Css.Keywords.EaseOut Css.Keywords.Ellipsis Css.Keywords.End Css.Keywords.Even Css.Keywords.Expanded Css.Keywords.ExtraCondensed Css.Keywords.ExtraExpanded Css.Keywords.FalseKeyword Css.Keywords.Fixed Css.Keywords.Flex Css.Keywords.Flow Css.Keywords.FlowRoot Css.Keywords.Grid Css.Keywords.Hidden Css.Keywords.HistoricalForms Css.Keywords.ImportantKeyword Css.Keywords.Inherit Css.Keywords.Initial Css.Keywords.Inline Css.Keywords.InlineBlock Css.Keywords.InlineEnd Css.Keywords.InlineFlex Css.Keywords.InlineListItem Css.Keywords.InlineStart Css.Keywords.InlineTable Css.Keywords.IsActive Css.Keywords.Italic Css.Keywords.Justify Css.Keywords.Large Css.Keywords.Larger Css.Keywords.Left Css.Keywords.Lighter Css.Keywords.Linear Css.Keywords.LineThrough Css.Keywords.ListItem Css.Keywords.Lowercase Css.Keywords.Ltr Css.Keywords.Medium Css.Keywords.Middle Css.Keywords.Miter Css.Keywords.None Css.Keywords.Normal Css.Keywords.NoWrap Css.Keywords.Oblique Css.Keywords.Odd Css.Keywords.OpenQuote Css.Keywords.Overline Css.Keywords.Pre Css.Keywords.PreLine Css.Keywords.PreWrap Css.Keywords.Relative Css.Keywords.Right Css.Keywords.Round Css.Keywords.Rtl Css.Keywords.Ruby Css.Keywords.RubyBase Css.Keywords.RubyBaseContainer Css.Keywords.RubyText Css.Keywords.RubyTextContainer Css.Keywords.RunIn Css.Keywords.Scroll Css.Keywords.SemiCondensed Css.Keywords.SemiExpanded Css.Keywords.Small Css.Keywords.Smaller Css.Keywords.Solid Css.Keywords.SparkAbsolute Css.Keywords.SparkAbsoluteFixed Css.Keywords.SparkCenter Css.Keywords.SparkClassSpecifity Css.Keywords.SparkIDSpecifity Css.Keywords.SparkTagSpecifity Css.Keywords.Square Css.Keywords.Start Css.Keywords.Static Css.Keywords.StepEnd Css.Keywords.StepStart Css.Keywords.Sticky Css.Keywords.Sub Css.Keywords.Super Css.Keywords.Table Css.Keywords.TableBottom Css.Keywords.TableCaption Css.Keywords.TableCell Css.Keywords.TableColumn Css.Keywords.TableColumnGroup Css.Keywords.TableFooterGroup Css.Keywords.TableHeaderGroup Css.Keywords.TableMiddle Css.Keywords.TableRow Css.Keywords.TableRowGroup Css.Keywords.TableTop Css.Keywords.TextBottom Css.Keywords.TextTop Css.Keywords.Thick Css.Keywords.Thin Css.Keywords.Top Css.Keywords.TrueKeyword Css.Keywords.UltraCondensed Css.Keywords.UltraExpanded Css.Keywords.Underline Css.Keywords.Uppercase Css.Keywords.Visible Css.Keywords.XLarge Css.Keywords.XSmall Css.Keywords.XXLarge Css.Keywords.XXSmall Css.Marker Css.MathMLAnonymousBlock Css.OnlyOfType Css.Units.AtRuleUnit Css.Units.DecimalUnit Css.Units.SelectorBlockUnit Css.Units.SquareBracketUnit Css.Units.TextUnit Css.ValueSet Css.Functions.CalcAdd Css.Functions.CalcDivide Css.Functions.CalcMultiply Css.Functions.CalcSubtract

Public Member Functions

virtual Loonim.TextureNode ToLoonimNode (RenderableData context)
 Converts this to a Loonim node. More...
 
virtual void GetOpenTypeFeatures (TextRenderingProperty trp, List< OpenTypeFeature > features)
 
 Value ()
 Creates a new empty value. More...
 
Value GetByType (ValueType type)
 Some CSS values are sets of entries. This attempts to select the first entry of the given type. More...
 
virtual Value ReadStartValue (CssLexer lexer)
 When a unit declares that it has a start identifier, such as #, this reads the rest of it's value. More...
 
Value GetByTypes (params ValueType[] types)
 Some CSS values are sets of entries. This attempts to select the first entry of the given type. More...
 
Value GetEntryWithoutAttribute (string funcName)
 Some CSS values are sets of entries. This attempts to select the entry without the named attribute. More...
 
Value GetEntryWithAttribute (string funcName, params string[] values)
 Some CSS values are sets of entries. This attempts to select the entry which has an attribute which matches one of the given values. More...
 
void SetSpecifity (int val)
 Sets the specifity for this and all child values. More...
 
void SetImportant (bool important)
 Sets this and all child values as being important. More...
 
virtual bool IsType (Type type)
 Checks if this is a particular type. Note that this is always false for inherit/ initial (as they pass the type through them). More...
 
virtual void OnValueReady (CssLexer lexer)
 Called after a value has been loaded from the stream. Functions etc get it too. This is used to, for example, map a value to a faster internal representation. More...
 
Value Copy ()
 Copies this value. More...
 
virtual float GetRawDecimal ()
 Obtains the underlying decimal value, if there is one. More...
 
virtual void SetRawDecimal (float value)
 Sets a raw decimal value to this object. Used by the animation system. More...
 
virtual float GetDecimal (RenderableData context, CssProperty property)
 If this is a decimal, the raw decimal value. This is generally the main output. More...
 
float GetDecimal (RenderableData context, ValueAxis axis)
 If this is a decimal, the raw decimal value. This is generally the main output. This overload explicitly tells it to use the vertical axis or not (e.g. when resolving %). More...
 
float GetDecimal (RenderableData context, bool verticalAxis)
 If this is a decimal, the raw decimal value. This is generally the main output. This overload explicitly tells it to use the vertical axis or not (e.g. when resolving %). More...
 
virtual string GetText (RenderableData context, CssProperty property)
 If this is a text value, e.g. "auto", the raw text value. More...
 
virtual bool GetBoolean (RenderableData context, CssProperty property)
 If this is a boolean, the raw bool value. More...
 
int GetInteger (RenderableData context, CssProperty property)
 If this is a pixel integer, the raw pixel value. More...
 
virtual bool Equals (Value value)
 Checks if two values are equal. More...
 
ValueSet ToSet ()
 Make this value a set. If it is already a set, the value is returned unchanged. Otherwise, a set of 1 is created. More...
 
Vector3 GetVector (RenderableData context, CssProperty property)
 Converts this value to a Unity Vector3. More...
 
Quaternion GetQuaternion (RenderableData context, CssProperty property)
 Converts this value to a Unity Quaternion. More...
 
virtual ImageFormat GetImage (RenderableData context, CssProperty property)
 Gets the value as an image, if it is one. More...
 
virtual SelectorMatcher GetSelectorMatcher ()
 Converts this value into a suitable selector matcher. Typically either a local matcher or a structural one. More...
 
virtual Blaze.VectorPath GetPath (RenderableData context, CssProperty property)
 Gets this value as a vector path (or null if it isn't one). More...
 
Color GetColour ()
 Converts this value to a context-free Unity colour. More...
 
Color GetColour (RenderableData context, CssProperty property)
 Converts this value to a Unity colour. More...
 
bool FunctionalEquals (Css.Value other)
 Checks if this is the same set of one or more functions as the other value. Note that this only checks if they are the same functions in the same order. It's not a complete equiv check (and its used by the animation system to interpolate CSS transform). More...
 
override string ToString ()
 Converts this value to a css useable string. More...
 
bool AllSameValues ()
 Are all entries in this rectangle the same? More...
 
virtual IEnumerator< ValueGetEnumerator ()
 
virtual ShapeProvider ToShape (SVGElement context, RenderContext renderer, out Css.Value value)
 Gets the shape that this CSS value represents. More...
 

Static Public Member Functions

static Css.Value Load (string text)
 

Public Attributes

bool Important
 True if this value is important. More...
 
int Specifity =1<<28
 How specific this value is. A low specifity value should never overwrite a high specifity one. By default it's a very high specifity (but not so high that it overflows if it's "important"!) More...
 

Protected Member Functions

virtual Value Clone ()
 Duplicates this value. More...
 

Protected Attributes

ValueType Type_ =ValueType.Null
 The type of value this is. More...
 

Static Package Attributes

static readonly Value Empty =new Units.DecimalUnit(0)
 Represents an empty value. More...
 

Properties

ValueType Type [get, set]
 
bool IsCommaArray [get]
 Checks if this value is a,comma,array. More...
 
virtual bool IsFunction [get]
 Checks if this is a function. More...
 
virtual bool IsAuto [get]
 Checks if this is the 'auto' keyword More...
 
virtual bool IsColour [get]
 Checks if this is a suitable colour. More...
 
virtual bool IsCached [get]
 True if this is a 'cached' value. See CachedIntegerUnit. More...
 
virtual Css.Value CachedOrigin [get]
 The original value of a cached object. More...
 
virtual bool IsAbsolute [get]
 Checks if this is an absolute value and is not a percentage/em/ rectangle containing percents. More...
 
virtual string Identifier [get]
 Used for locating e.g. a function contained within a set. More...
 
string Hash [get]
 Text is e.g. "afile.svg#something". This is either 'something' or null. More...
 
string Text [get]
 Gets context-free text such as font family names. More...
 
virtual int Count [get, set]
 The number of internal values. More...
 
virtual Value this[int index] [get, set]
 
virtual Value this[string index] [get, set]
 
virtual bool IsInherit [get]
 Is this an inheriting value? More...
 
virtual Css.Value Computed [get]
 Resolves through e.g. inherit and initial. More...
 
virtual string HexString [get]
 Converts this value into a hex string that is 2 characters long. More...
 

Private Member Functions

IEnumerator IEnumerable. GetEnumerator ()
 

Static Private Member Functions

static void CreateAxisProperties ()
 Creates vertical and horizontal CSS properties which are used when needing to specify which axis a % value is relative to. More...
 

Static Private Attributes

static CssProperty VerticalProperty
 A vertical CSS property. Used when needing to specify that a % is on Y. More...
 
static CssProperty HorizontalProperty
 A horizontal CSS property. Used when needing to specify that a % is on X. More...
 
static CssProperty DepthProperty
 A depth CSS property. Used when needing to specify that a % is on Z. More...
 

Constructor & Destructor Documentation

Css.Value.Value ( )
inline

Creates a new empty value.

Member Function Documentation

bool Css.Value.AllSameValues ( )
inline

Are all entries in this rectangle the same?

virtual Value Css.Value.Clone ( )
inlineprotectedvirtual

Duplicates this value.

Returns
A duplicated copy of this value. Note that if this value has inner values, they are copied too.

Reimplemented in Css.InterpolationMatrix3D, Css.Functions.LinearGradientFunction, Css.InterpolationMatrix, Css.ValueSet, Css.Keywords.Inherit, Css.Units.TextUnit, Css.Functions.SVGUrlFunction, Css.Units.SelectorBlockUnit, Css.Units.ColourUnit, Css.Functions.SVGRectFunction, Css.Functions.Rotate, Css.Functions.MatrixFunction, Css.Functions.Steps, Css.Functions.Hsla, Css.Units.DecimalUnit, Css.Units.SquareBracketUnit, Css.Functions.RgbaFunction, Css.Functions.Skew, Css.Units.AtRuleUnit, Css.Functions.NthChildFunction, Css.Functions.NthLastChildFunction, Css.Functions.NthLastOfTypeFunction, Css.Functions.NthOfTypeFunction, Css.Functions.CubicBezier, Css.Functions.Translate, Css.Units.CachedIntegerUnit, Css.Functions.Calc, Css.Functions.Scale, Css.Units.FontUnit, Css.Units.ViewPortMaxUnit, Css.Units.ViewPortMinUnit, Css.Functions.Perspective, Css.Functions.VarFunction, Css.Units.DegreesUnit, Css.Units.PercentUnit, Css.Functions.SkewZ, Css.Functions.UrlFunction, Css.Functions.SkewX, Css.Functions.SkewY, Css.ShaderSetFunction, Css.Functions.TranslateX, Css.Functions.TranslateY, Css.Functions.TranslateZ, Css.Units.ChUnit, Css.Units.ExUnit, Css.Functions.ScaleX, Css.Functions.ScaleY, Css.Functions.ScaleZ, Css.Keywords.Initial, Css.Units.ViewPortHeightUnit, Css.Units.ViewPortWidthUnit, Css.Units.IntegerUnit, Css.Functions.MatchesFunction, Css.Functions.NotFunction, Css.Functions.RotateX, Css.Functions.RotateY, Css.Functions.RotateZ, Css.Functions.EqFunction, Css.Functions.GtFunction, Css.Functions.LtFunction, Css.Units.GradiansUnit, Css.Units.TurnUnit, Css.Functions.DirFunction, Css.Functions.LangFunction, Css.Units.CmUnit, Css.Units.DpcmUnit, Css.Units.DppxUnit, Css.Units.InchUnit, Css.Units.KhzUnit, Css.Units.MmUnit, Css.Units.MsUnit, Css.Units.PcUnit, Css.Units.PointUnit, Css.Functions.RectFunction, Css.Units.PropertyMapUnit, Css.Functions.Attr, Css.Functions.Format, Css.Functions.SymbolsFunction, Css.Functions.Annotation, Css.Functions.CharacterVariant, Css.Functions.Ornaments, Css.Functions.StyleSet, Css.Functions.Stylistic, Css.Functions.Swash, Css.Units.EmUnit, Css.Units.PxUnit, Css.CssKeyword, Css.Functions.BlurFunction, Css.Functions.BrightnessFunction, Css.Functions.ContrastFunction, Css.Functions.DropShadowFunction, Css.Functions.GrayscaleFunction, Css.Functions.HueRotateFunction, Css.Functions.InvertFunction, Css.Functions.OpacityFunction, Css.Functions.SaturateFunction, Css.Functions.SepiaFunction, Css.Units.RadiansUnit, Css.Units.RemUnit, Css.Units.LengthUnit, Css.Units.NUnit, Css.Keywords.HistoricalForms, Css.Units.ViewPortUnit, Css.Units.DpiUnit, Css.Units.FpxUnit, Css.Units.HzUnit, Css.Units.SecondsUnit, Css.Keywords.CloseQuote, Css.Keywords.OpenQuote, Css.Units.AngleUnit, Css.Units.FrequencyUnit, Css.Units.ResolutionUnit, and Css.Units.TimeUnit.

Value Css.Value.Copy ( )
inline

Copies this value.

static void Css.Value.CreateAxisProperties ( )
inlinestaticprivate

Creates vertical and horizontal CSS properties which are used when needing to specify which axis a % value is relative to.

virtual bool Css.Value.Equals ( Value  value)
inlinevirtual

Checks if two values are equal.

Parameters
valueThe value to check for equality with this. Always returns false if null.
Returns
True if this and the given value are equal; false otherwise.

Reimplemented in Css.ValueSet, Css.Units.DecimalUnit, and Css.Units.TextUnit.

bool Css.Value.FunctionalEquals ( Css.Value  other)
inline

Checks if this is the same set of one or more functions as the other value. Note that this only checks if they are the same functions in the same order. It's not a complete equiv check (and its used by the animation system to interpolate CSS transform).

Value Css.Value.GetByType ( ValueType  type)
inline

Some CSS values are sets of entries. This attempts to select the first entry of the given type.

Value Css.Value.GetByTypes ( params ValueType[]  types)
inline

Some CSS values are sets of entries. This attempts to select the first entry of the given type.

Color Css.Value.GetColour ( )
inline

Converts this value to a context-free Unity colour.

Returns
The unity colour represented by this value.
Color Css.Value.GetColour ( RenderableData  context,
CssProperty  property 
)
inline

Converts this value to a Unity colour.

Returns
The unity colour represented by this value.
virtual float Css.Value.GetDecimal ( RenderableData  context,
CssProperty  property 
)
inlinevirtual

If this is a decimal, the raw decimal value. This is generally the main output.

Reimplemented in Css.Keywords.Flow, Css.Keywords.FlowRoot, Css.Keywords.RubyTextContainer, Css.Keywords.RubyBaseContainer, Css.Keywords.RubyText, Css.Keywords.RubyBase, Css.Keywords.Ruby, Css.Keywords.Contents, Css.Keywords.TextBottom, Css.Keywords.Grid, Css.Keywords.TextTop, Css.Keywords.TableCaption, Css.Keywords.Super, Css.Keywords.TableColumn, Css.Keywords.Inherit, Css.Keywords.Sub, Css.Keywords.TableColumnGroup, Css.Keywords.Baseline, Css.Keywords.TableCell, Css.Keywords.Middle, Css.Keywords.TableRow, Css.Keywords.TableMiddle, Css.Keywords.TableFooterGroup, Css.Functions.Calc, Css.Keywords.TableTop, Css.Keywords.TableHeaderGroup, Css.Keywords.TableBottom, Css.Keywords.TableRowGroup, Css.Units.TextUnit, Css.Keywords.Bottom, Css.Keywords.Table, Css.Keywords.Top, Css.Keywords.ListItem, Css.Keywords.InlineListItem, Css.Keywords.UltraExpanded, Css.Keywords.Larger, Css.ValueSet, Css.Keywords.End, Css.Keywords.InlineTable, Css.Keywords.ExtraExpanded, Css.Keywords.Smaller, Css.Keywords.Sticky, Css.Keywords.InlineFlex, Css.Keywords.Start, Css.Keywords.Expanded, Css.Keywords.XXLarge, Css.Keywords.Relative, Css.Keywords.Flex, Css.Keywords.Bevel, Css.Keywords.SparkCenter, Css.Keywords.SemiExpanded, Css.Keywords.XLarge, Css.Keywords.SparkAbsoluteFixed, Css.Keywords.Initial, Css.Keywords.InlineBlock, Css.Units.DecimalUnit, Css.Keywords.Miter, Css.Keywords.SemiCondensed, Css.Keywords.Lighter, Css.Functions.Attr, Css.Keywords.Center, Css.Keywords.Large, Css.Keywords.SparkAbsolute, Css.Keywords.Scroll, Css.Keywords.NoWrap, Css.Functions.VarFunction, Css.Keywords.SparkIDSpecifity, Css.Units.PercentUnit, Css.Keywords.RunIn, Css.Keywords.Both, Css.Keywords.Square, Css.Keywords.Condensed, Css.Keywords.Justify, Css.Keywords.Small, Css.Keywords.Absolute, Css.Keywords.LineThrough, Css.Keywords.Lowercase, Css.Keywords.Collapse, Css.Keywords.PreWrap, Css.Keywords.SparkClassSpecifity, Css.Keywords.Block, Css.Units.EmUnit, Css.Keywords.InlineEnd, Css.Keywords.Bolder, Css.Units.ViewPortMaxUnit, Css.Units.ViewPortMinUnit, Css.Keywords.Round, Css.Keywords.ExtraCondensed, Css.Keywords.Oblique, Css.Units.ViewPortHeightUnit, Css.Units.ViewPortWidthUnit, Css.Keywords.Left, Css.Keywords.CoverKeyword, Css.Keywords.Rtl, Css.Keywords.FalseKeyword, Css.Keywords.XSmall, Css.Keywords.Fixed, Css.Keywords.Overline, Css.Keywords.Uppercase, Css.Keywords.TrueKeyword, Css.Keywords.Hidden, Css.Keywords.PreLine, Css.Keywords.Solid, Css.Units.ChUnit, Css.Units.ExUnit, Css.Units.RemUnit, Css.Keywords.Inline, Css.Keywords.InlineStart, Css.Keywords.Butt, Css.Keywords.UltraCondensed, Css.Keywords.Italic, Css.Functions.CalcAdd, Css.Functions.CalcDivide, Css.Functions.CalcMultiply, Css.Functions.CalcSubtract, Css.Keywords.Right, Css.Keywords.Ltr, Css.Keywords.XXSmall, Css.Keywords.Bold, Css.Keywords.Medium, Css.Keywords.Normal, Css.Keywords.BreakWord, Css.Keywords.Static, Css.Keywords.SparkTagSpecifity, Css.Keywords.Underline, Css.Keywords.Capitalize, Css.Keywords.Thick, Css.Keywords.Thin, Css.Keywords.Visible, Css.Keywords.Pre, Css.Keywords.Disc, Css.Units.LengthUnit, and Css.Keywords.Dashed.

float Css.Value.GetDecimal ( RenderableData  context,
ValueAxis  axis 
)
inline

If this is a decimal, the raw decimal value. This is generally the main output. This overload explicitly tells it to use the vertical axis or not (e.g. when resolving %).

float Css.Value.GetDecimal ( RenderableData  context,
bool  verticalAxis 
)
inline

If this is a decimal, the raw decimal value. This is generally the main output. This overload explicitly tells it to use the vertical axis or not (e.g. when resolving %).

Value Css.Value.GetEntryWithAttribute ( string  funcName,
params string[]  values 
)
inline

Some CSS values are sets of entries. This attempts to select the entry which has an attribute which matches one of the given values.

Value Css.Value.GetEntryWithoutAttribute ( string  funcName)
inline

Some CSS values are sets of entries. This attempts to select the entry without the named attribute.

IEnumerator IEnumerable. Css.Value.GetEnumerator ( )
inlineprivate
virtual IEnumerator<Value> Css.Value.GetEnumerator ( )
inlinevirtual
virtual ImageFormat Css.Value.GetImage ( RenderableData  context,
CssProperty  property 
)
inlinevirtual

Gets the value as an image, if it is one.

int Css.Value.GetInteger ( RenderableData  context,
CssProperty  property 
)
inline

If this is a pixel integer, the raw pixel value.

virtual void Css.Value.GetOpenTypeFeatures ( TextRenderingProperty  trp,
List< OpenTypeFeature features 
)
inlinevirtual
virtual Blaze.VectorPath Css.Value.GetPath ( RenderableData  context,
CssProperty  property 
)
inlinevirtual
Quaternion Css.Value.GetQuaternion ( RenderableData  context,
CssProperty  property 
)
inline

Converts this value to a Unity Quaternion.

virtual float Css.Value.GetRawDecimal ( )
inlinevirtual

Obtains the underlying decimal value, if there is one.

Reimplemented in Css.ValueSet, and Css.Units.DecimalUnit.

Vector3 Css.Value.GetVector ( RenderableData  context,
CssProperty  property 
)
inline

Converts this value to a Unity Vector3.

virtual bool Css.Value.IsType ( Type  type)
inlinevirtual

Checks if this is a particular type. Note that this is always false for inherit/ initial (as they pass the type through them).

Returns
True if this value is of the given type.

Reimplemented in Css.Keywords.Inherit, and Css.Keywords.Initial.

static Css.Value Css.Value.Load ( string  text)
inlinestatic
virtual Value Css.Value.ReadStartValue ( CssLexer  lexer)
inlinevirtual

When a unit declares that it has a start identifier, such as #, this reads the rest of it's value.

Reimplemented in Css.Units.SelectorBlockUnit, Css.Units.ColourUnit, Css.Units.TextUnit, Css.Units.SquareBracketUnit, and Css.Units.AtRuleUnit.

void Css.Value.SetImportant ( bool  important)
inline

Sets this and all child values as being important.

virtual void Css.Value.SetRawDecimal ( float  value)
inlinevirtual

Sets a raw decimal value to this object. Used by the animation system.

Reimplemented in Css.ValueSet, Css.Units.DecimalUnit, and Css.Units.IntegerUnit.

void Css.Value.SetSpecifity ( int  val)
inline

Sets the specifity for this and all child values.

virtual Loonim.TextureNode Css.Value.ToLoonimNode ( RenderableData  context)
inlinevirtual

Converts this to a Loonim node.

Reimplemented in Css.Functions.SaturateFunction.

ValueSet Css.Value.ToSet ( )
inline

Make this value a set. If it is already a set, the value is returned unchanged. Otherwise, a set of 1 is created.

virtual ShapeProvider Css.Value.ToShape ( SVGElement  context,
RenderContext  renderer,
out Css.Value  value 
)
inlinevirtual

Gets the shape that this CSS value represents.

Reimplemented in Css.Functions.SVGUrlFunction, Css.Functions.UrlFunction, Css.Functions.SVGRectFunction, and Css.Functions.RectFunction.

override string Css.Value.ToString ( )
inline

Converts this value to a css useable string.

Returns
A css formatted string.

Member Data Documentation

CssProperty Css.Value.DepthProperty
staticprivate

A depth CSS property. Used when needing to specify that a % is on Z.

readonly Value Css.Value.Empty =new Units.DecimalUnit(0)
staticpackage

Represents an empty value.

CssProperty Css.Value.HorizontalProperty
staticprivate

A horizontal CSS property. Used when needing to specify that a % is on X.

bool Css.Value.Important

True if this value is important.

int Css.Value.Specifity =1<<28

How specific this value is. A low specifity value should never overwrite a high specifity one. By default it's a very high specifity (but not so high that it overflows if it's "important"!)

ValueType Css.Value.Type_ =ValueType.Null
protected

The type of value this is.

CssProperty Css.Value.VerticalProperty
staticprivate

A vertical CSS property. Used when needing to specify that a % is on Y.

Property Documentation

virtual Css.Value Css.Value.CachedOrigin
get

The original value of a cached object.

virtual Css.Value Css.Value.Computed
get

Resolves through e.g. inherit and initial.

virtual int Css.Value.Count
getset

The number of internal values.

string Css.Value.Hash
get

Text is e.g. "afile.svg#something". This is either 'something' or null.

virtual string Css.Value.HexString
get

Converts this value into a hex string that is 2 characters long.

virtual string Css.Value.Identifier
get

Used for locating e.g. a function contained within a set.

virtual bool Css.Value.IsAbsolute
get

Checks if this is an absolute value and is not a percentage/em/ rectangle containing percents.

Returns
True if this value is absolute; false if it is relative.
virtual bool Css.Value.IsAuto
get

Checks if this is the 'auto' keyword

Returns
True if this value is 'auto'.
virtual bool Css.Value.IsCached
get

True if this is a 'cached' value. See CachedIntegerUnit.

virtual bool Css.Value.IsColour
get

Checks if this is a suitable colour.

bool Css.Value.IsCommaArray
get

Checks if this value is a,comma,array.

virtual bool Css.Value.IsFunction
get

Checks if this is a function.

Returns
True if this value is a function.
virtual bool Css.Value.IsInherit
get

Is this an inheriting value?

string Css.Value.Text
get

Gets context-free text such as font family names.

virtual Value Css.Value.this[int index]
getset
virtual Value Css.Value.this[string index]
getset
ValueType Css.Value.Type
getset