Base class for TECSliderKnob and TECSwitchKnob.
Base abstract class for TBaseECSlider, TCustomECRuler, TCustomECSwitch.
This class contains many abstract classes. Do not instantiate.
Enumerated type denoting state of TECSpeedBtn, TECSpinBtns or TECGroupCtrls.
Item or Button is pushed but not enabled.
Enumerated type selecting the built-in glyph of canvas helper class.
No built-in glyph selected.
Color rectangle, frame is 3D lowered.
Color rectangle, frame is drawn with clBtnText.
Enumerated type denoting mode of TECSlider or TECSpinBtns.
Control in mode eimContinuous can hold any floating point value between Min and Max.

Control in mode eimDiscret can hold only integer multipliers of DiscreteChange (i.e. 0.1, 0.2, 0.3 ... for DiscreteChange = 0.1; it can never be 0.05, 0.15, 0.25).
TECSlider or TECSpinBtns can hold any floating-point value between Min and Max.
TECSlider or TECSpinBtns can only hold integer multiples of DiscreteChange.
Enumerated type denoting horizontal or vertical orientation of visual component.
Enumerated type denoting position of the element (Caption, Image) within the visual component.
Enumerated type denoting the style of visual component.
Component is drawn as a PushButton using ThemeServices.
Component is drawn as a panel using 3D-lowered or 3D-raised frames.
Enumerated type designed for efficient repainting of complex visual components.
For higher efficiency, TBaseECSlider derived components are drawn to bitmaps and these bitmaps (or their parts) are copied to component's Canvas on Paint method.
Only Knob of ECSlider is repainted.
Knob is moved from A to B. Rectangle determined by A, B and space between them is repainted.
The most common value. Whole component is repainted. Value can fall to lower state (ermHoverKnob or ermMoveKnob).
Internal bitmaps are repainted. Whole component is repainted. Value cannot fall to lower states.
Component is recalculated. Internal bitmaps are repainted. Whole component is repainted. Value cannot fall to lower states.
Enumerated type denoting design of ticks (ticks of TECScale or ticks on Knob of TECSlider or TECSwitch).
Enumerated type denoting position of the element (Caption, Scale) within the visual component.
This type is simpilfied. Depends on orientation of object.
Position is Top (in case of horizontal component) or Left (in case of vertical component).
Position is Bottom (in case of horizontal component) or Right (in case of vertical component).
Enumerated type denoting style of ticks on the Knob of TECSlider or TECSwitch.
Enumerated type denoting visibility of values (numbers) of TECScale.
No values are displayed.
Only bound values are displayed.
Only regular values are displayed.
Regular and bound values are displayed (useful when bound values are not regular).
Helper class; it can paint built-in glyphs of TECpeedBtn or backgrounds for many EC controls.
Draws Button like background on the canvas. Uses ThemeServices.
Draws built-in glyphs on the canvas.
Draws panel-like background on the canvas.
Returns size of glyph.
Set glyph color. clDefault is clBtnText for Enabled = True. For Enabled = False is color merged: 67% glyph color and 33% background.
Fills bitmap with transparent color.
Class is used as a subclass for visual components.
Visual component has sometimes more text elements which need to have different font parameters. Implementing new TFont instance is exaggerating (memory consuming). TFontOptions is used instead.
Alternative color of parent's font.
Alternative font-size of parent's font.
Alternative font-styles of parent's font.
Increases UpdateCount. It reduces number of internal redraws when more than one visual property (color, bevel ...) is changed at a time.
Decreases UpdateCount.
When UpdateCount is decreased to 0 then depends on Recalculate:
True: calls
False: calls
Recalculates and redraws internal bitmaps. Abstract method.
Redraws internal bitmaps. Abstract method.
Only calls Invalidate (if UpdateCount = 0). This method does not Redraw internal bitmaps.
Style of inner bevel. Applies only when Style = eosPanel.
Style of outer bevel. Applies only when Style = eosPanel.
Space between inner and outer bevel. Applies only when Style = eosPanel.
Width of inner and outer bevel. Inner and outer bevel cannot have different width. Applies only when Style = eosPanel.
Color of shadowed patrs of the bevel. Applies only when Style = eosPanel.
Color of enlighted parts of the bevel. Applies only when Style = eosPanel.
Denotes whether the visual component is oriented vertically or horizontally.
Denotes the style (button-like, panel-like) of the visual component.
Counter of updates. UpdateCount > 0 means that component is being updated.
Redraws those parts of internal bitmaps, which are drawn by Color3DDark or Color3DLight. Abstract method.
Returns True when visual component has any caption.
Returns width of border, i.e. inner bevel width + bevel space + outer bevel width.
Triggered when Orientation changed.
Triggered when Style changed.
Abstract method.
Bevel width. Applies only when Style = eosPanel.
Color of the knob.
clDefault is:
clBtnFace when Style = eosButton.
Parent's color when Style = eosPanel.
Denotes the style (button-like, panel-like) of the knob.
Height of the knob.
Width of the knob.
TECSlider changes cursor (crHandPoint is default) when knob is hovered. TECSwitch doesn't.
Number of ticks on the knob.
Design of the ticks (etdSimple, etdThick, etd3DLowered or etd3DRaised).
Style of the ticks (solid or dotted lines).
Spacing (number of pixels) around ticks.
Sets unique transparent color for internal bitmaps.
Draws normal, disabled and highlighted knobs to internal bitmaps.
Changes size of internal bitmaps and redraws them.
Triggers parent's RecalcRedraw method.
Converts separate 8-bit alpha, red, green and blue values to 32-bit TColor.
Splits 32-bit TColor to separate 8-bit alpha, red, green and blue values.
Returns color but avoids clDefault because it is a system constant.
Returns ASourceColor if it is not clDefault. If yes, returns ADefColor.
Returns color but avoids clDefault because it is a system constant. Color is monochromatic when AEnabled = False.
Returns ASourceColor if it is not clDefault. If yes, returns ADefColor. If AEnabled = False, returned color is monochromatic.
Returns monochromatic color with the same intensity as AColor.
Merges two colors with defined proportion.
AProportion should be between 0 and 1.
Proportion 1 returns AColor.
Proportion 0 returns BColor.
Returns True if AValue is in interval (including endpoint).
Regardless the order of endpoints, i.e IsInRange(2, 1, 3) and IsInRange (2, 3, 1) gives the same result (True).
Converts linear position on the logarithmic scale to the logarithmic value.
Note: Negative bounds are set to 0.
Base types and classes for Eye Candy Controls (EC-C).
Alias for the simpliest method without any parmeters.
Item or Button is not enabled and not pushed.
Item or Button is enabled and is hovered by mouse.
Item or Button is enabled and not hovered by mouse.
Item or Button is enabled, pushed and not hovered by mouse.
Item or Button is enabled, pushed and hovered by mouse.
Set of TItemState.
Images of TECSpeedBtn and TECGroupCtrls are stored in internal bitmaps. This type denotes which states are actually needed (i.e. [eisHighlighted, eisEnabled, eisPushed, eisPushedHihlighted] when Enabled = True and [eisDisabled, eisPushedDisabled] when Enabled = False). This type was introduced for optimalization. It reduces overhead these controls stores 4 or 2 bitmaps instead of 6.
Simple line 1 pixel wide.
Simple line 2 pixels wide.
Two lines with different colors simulate lowered bevel.
Two lines with different colors simulate raised bevel.
Method used for grouped controls. Parameters are mouse-button and shift-state.
Event. Can be used for modify values of TECScale for custom-drawn scales.
Sets basic properties for bitmaps used in many EC-Controls.
Parent of the class. Is responsible for freeing.
Method that is called when parent component needs to be recalculated (when font-size is changed).
Method that is called when parent component needs to be redrawn (when font-color is changed).
Invalidates component only when UpdateCount = 0.
Invalidates custom rectangle, i.e. when knob of slider is moved.
This message method resolves difference between Paints invoked by InvalidateRect and by system. It prevents controls from unwanted vanishing.
Redraw mode of TECBaseControl.