constants RadialCustomPropertyEnum
The RadialCustomPropertyEnum type defines the properties of the custom control. The BrowseCustom property gets or sets a value for specified property, when browsing custom control. 

The properties prefixed with:

The RadialCustomPropertyEnum type supports the following values:

NameValueDescription
exRadialCustomSliderMinValue1 By default, the exRadialCustomSliderMinValue is 0. Specifies the minimum value of the slider.

(double expression)

exRadialCustomSliderMaxValue2 By default, the exRadialCustomSliderMaxValue is 100. Specifies the maximum value.

(double expression)

exRadialCustomSliderTickFrequency3 By default, the exRadialCustomSliderTickFrequency is 10. If 0, no ticks are shown. Gets or sets the interval between tick marks.

(double expression)

exRadialCustomSliderStartAngle4 By default, the exRadialCustomSliderStartAngle is 135 degree. Indicates the angle to start the scale, from first radial line, in degree .

(double expression)

exRadialCustomSliderSweepAngle5 By default, the exRadialCustomSliderSweepAngle is 270 degree. Indicates the angle to end the scale, to second radial line, in degree.

(double expression)

exRadialCustomSliderScaleColor6 By default, the exRadialCustomSliderScaleColor is RGB(128,128,128). Gets or sets the color to display the scale.

(long expression )

exRadialCustomSliderScaleAlpha7 By default, the exRadialCustomSliderScaleAlpha is 255. Gets or sets the transparency byte to display the scale.

(byte expression)

exRadialCustomSliderScaleGradient8 By default, the exRadialCustomSliderScaleGradient is True. Specifies whether the scale is shown in gradient.

(boolean expression)

exRadialCustomSliderValue9 By default, the exRadialCustomSliderValue is 0. Gets or sets the radial slider's value.

(double expression)

exRadialCustomSliderNeedleColor10 By default, the exRadialCustomSliderNeedleColor is RGB(64,64,64). Gets or sets the color to display the needle.

(long expression)

exRadialCustomSliderNeedleAlpha11 By default, the exRadialCustomSliderNeedleAlpha is 255. Gets or sets the transparency byte to display the needle.

(byte expression)

exRadialCustomSliderLocked12 By default, the exRadialCustomSliderLocked is False. Specifies whether the radial slider is read-only or locked.

(boolean expression)

exRadialCustomSliderShowHandCursor13 By default, the exRadialCustomSliderShowHandCursor is True. Indicates whether the hand cursor is shown, when the cursor hovers the needle.

(boolean expression)

exRadialCustomSliderAdjustValue14 By default, the exRadialCustomSliderAdjustValue is "value".

The exRadialCustomSliderAdjustValue expression supports the following keywords:

  • value, indicates the current value of the slider, exRadialCustomSliderValue
  • vmin, specifies the minimum value of the slider, exRadialCustomSliderMinValue
  • vmax, specifies the maximum value of the slider, exRadialCustomSliderMaxValue
  • tick, indicates the interval between tick marks, exRadialCustomSliderTickFrequency

The expression supports constants, operators and functions defined here.

Gets or sets the expression that determines the valid values of the radial slider.

(string expression)

exRadialCustomSliderLabelTick15 By default, the exRadialCustomSliderLabelTick is "`<fgcolor 808080>` + (((value = vmin) or (value = vmax)) ? `<b>` : ``) + (value format `0`) ".

The exRadialCustomSliderLabelTick expression supports the following keywords:

  • value, indicates the current value of the slider, exRadialCustomSliderValue
  • vmin, specifies the minimum value of the slider, exRadialCustomSliderMinValue
  • vmax, specifies the maximum value of the slider, exRadialCustomSliderMaxValue
  • tick, indicates the interval between tick marks, exRadialCustomSliderTickFrequency

The expression supports constants, operators and functions defined here.

Specifies the labels to be shown on tick marks.

(string expression)

exRadialCustomSliderLabelValue16 By default, the exRadialCustomSliderLabelValue is "`<b><font ;6>` + (value format ``)".

The exRadialCustomSliderLabelValue expression supports the following keywords:

  • value, indicates the current value of the slider, exRadialCustomSliderValue
  • vmin, specifies the minimum value of the slider, exRadialCustomSliderMinValue
  • vmax, specifies the maximum value of the slider, exRadialCustomSliderMaxValue
  • tick, indicates the interval between tick marks, exRadialCustomSliderTickFrequency

The expression supports constants, operators and functions defined here.

Specifies the label to be shown on the current value.

(string expression)

exRadialCustomSliderWheelAdvance17 By default, the exRadialCustomSliderLabelValue is 1. Gets or sets a value that indicates the advancement to be added to the current value, when mouse's wheel is rotated.

(double expression)

exRadialCustomGaugeHandle256 By default, the exRadialCustomGaugeHandle is 0. Specifies the handle of the inside control to be shown instead. This property must be specified if the BrowseType property is exBrowseItemCustom, and BrowseCustomType property is exRadialCustomGauge. The hWnd property of the eXGauge must be passed to the BrowseCustom( exRadialCustomGaugeHandle ) property. The Microsoft Windows operating environment identifies each form and control in an application by assigning it a handle, or hWnd.

(long expression)

The expression supports the following constants, operators and functions:

The constants are ( DPI-Aware components ):

The supported binary arithmetic operators are:

The supported unary boolean operators are:

The supported binary boolean operators are:

The supported binary boolean operators, all these with the same priority 0, are :

The supported binary range operators, all these with the same priority 5, are :

The supported binary operators, all these with the same priority 0, are :

The supported ternary operators, all these with the same priority 0, are :

expression ? true_part : false_part

, while it executes and returns the true_part if the expression is true, else it executes and returns the false_part. For instance, the %0 = 1 ? 'One' : (%0 = 2 ? 'Two' : 'not found') returns 'One' if the value is 1, 'Two' if the value is 2, and 'not found' for any other value. A n-ary equivalent operation is the case() statement, which is available in newer versions of the component.

The supported n-ary operators are (with priority 5):

expression array (c1,c2,c3,...cn)

, where the c1, c2, ... are constant elements. The constant elements could be numeric, date or string expressions. For instance the month(value)-1 array ('J','F','M','A','M','Jun','J','A','S','O','N','D') is equivalent with month(value)-1 case (default:''; 0:'J';1:'F';2:'M';3:'A';4:'M';5:'Jun';6:'J';7:'A';8:'S';9:'O';10:'N';11:'D')

expression in (c1,c2,c3,...cn)

, where the c1, c2, ... are constant elements. The constant elements could be numeric, date or string expressions. For instance the value in (11,22,33,44,13) is equivalent with (expression = 11) or (expression = 22) or (expression = 33) or (expression = 44) or (expression = 13). The in operator is not a time consuming as the equivalent or version is, so when you have large number of constant elements it is recommended using the in operator. Shortly, if the collection of elements has 1000 elements the in operator could take up to 8 operations in order to find if an element fits the set, else if the or statement is used, it could take up to 1000 operations to check, so by far, the in operator could save time on finding elements within a collection.

expression switch (default,c1,c2,c3,...,cn)

, where the c1, c2, ... are constant elements, and the default is a constant element being returned when the element is not found in the collection. The constant elements could be numeric, date or string expressions.  The equivalent syntax is "%0 = c 1 ? c 1 : ( %0 = c 2 ? c 2 : ( ... ? . : default) )". The switch operator is very similar with the in operator excepts that the first element in the switch is always returned by the statement if the element is not found,  while the returned value is the value itself instead -1. For instance, the %0 switch ('not found',1,4,7,9,11) gets 1, 4, 7, 9 or 11, or 'not found' for any other value. As the in operator the switch operator uses binary searches for fitting the element, so it is quicker that iif (immediate if operator) alterative.

expression case ([default : default_expression ; ] c1 : expression1 ; c2 : expression2 ; c3 : expression3 ;....)

If the default part is missing, the case() operator returns the value of the expression if it is not found in the collection of cases ( c1, c2, ...). For instance, if the value of expression is not any of c1, c2, .... the default_expression is executed and returned. If the value of the expression is c1, then the case() operator executes and returns the expression1. The default, c1, c2, c3, ... must be constant elements as numbers, dates or strings. For instance, the date(shortdate(value)) case (default:0 ; #1/1/2002#:1 ; #2/1/2002#:1; #4/1/2002#:1; #5/1/2002#:1) indicates that only #1/1/2002#, #2/1/2002#,  #4/1/2002# and  #5/1/2002# dates returns 1, since the others returns 0. For instance the following sample specifies the hour being non-working for specified dates: date(shortdate(value)) case(default:0;#4/1/2009# : hour(value) >= 6 and hour(value) <= 12 ; #4/5/2009# : hour(value) >= 7 and hour(value) <= 10 or hour(value) in(15,16,18,22); #5/1/2009# : hour(value) <= 8) statement indicates the working hours for dates as follows:

  • #4/1/2009#, from hours 06:00 AM to 12:00 PM
  • #4/5/2009#, from hours 07:00 AM to 10:00 AM and hours 03:00PM, 04:00PM, 06:00PM and 10:00PM
  • #5/1/2009#, from hours 12:00 AM to 08:00 AM

The in, switch and case() use binary search to look for elements so they are faster then using iif and or expressions. Obviously, the priority of the operations inside the expression is determined by ( ) parenthesis and the priority for each operator. 

The supported conversion unary operators are:

Other known operators for numbers are:

Other known operators for strings are:

Other known operators for dates are:

The Exontrol's eXPression component is a syntax-editor that helps you to define, view, edit and evaluate expressions. Using the eXPression component you can easily view or check if the expression you have used is syntactically correct, and you can evaluate what is the result you get giving different values to be tested. The Exontrol's eXPression component can be used as an user-editor, to configure your applications.