Sign in Join
Wiki copytemporary

Eye-Candy Controls: what changed

Revision 2 to 3. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
11**Eye Candy Controls** (shortly ECControls or EC-Controls) are set of visual controls written for Lazarus. Their design is based on Themes, therefore their look is very native everywhere, no matter what widgetset you use.
22
33Each release is announced on Lazarus Forum in section Third Party Announcements.
44
55There are always attached files `README.txt` (list of all known issues) and `CHANGELOG.txt` (list of all changes from previous release).
66
77License
88
99GNU Lesser General Public License 2.0 with linking exception (a.k.a. Modified LGPL). Each file of EC-Controls contains license header. Also, files `COPYING.modifiedLGPL.txt` and `COPYING.LGPL.txt` are bundled to each archive.
1010
1111Author
1212
1313All components are written by Blaazen. Copyright notice and real name are mentioned in the header of each unit. You can contact author on Lazarus Forum (nickname: Blaazen) in any thread about EC-Controls (email author). If you are logged in to the forum, you can get author's e-mail or send him private message.
1414
1515Credits:
1616
1717Alignment of composite components (TECSpinEdit, TECSpinPosition, TECEditBtn, TECColorBtn, TECComboBtn, TECColorCombo) is based on idea of Flávio published on mailing list [1](http://lists.lazarus.freepascal.org/pipermail/lazarus/2013-March/079971.html)
1818
1919[[TBaseScrollControl]] class is based on [TScrollingControl](https://github.com/theo222/lazarus-thumbviewer/blob/master/scrollingcontrol.pas) by Theo.
2020
2121Download
2222
2323- Latest release: 0.9.60 on 02-May 2023 (without demos); UltraShare is out of order. This release was tested with Lazarus 2.3.
2424- Latest release: 0.9.58 on 16-th April 2022 (without demos); UltraShare is out of order. This release was tested with Lazarus 2.3
2525- Previous release: 0.9.44 on 1-st June 2020 (including demos); UltraShare is out of order. This release was tested with Lazarus 2.1
2626- Previous release: 0.9.30 on 9-th March 2018 (including demos); UltraShare is out of order. This release was tested with Lazarus 1.9 and 1.8
2727- Previous release: 0.9.24.6 on 24-th October 2017 (without demos); TECGrid is *Release candidate*; UltraShare is out of order
2828- Previous release: 0.9.20 on 31-th July 2017 (without demos)
2929- Previous release: 0.9.6 on 24-th May 2016 (including demos)
3030- SourceForge: <https://sourceforge.net/projects/eccontrols/>
3131- UltraShare: <http://ultrashare.net/hosting/fl/8c275ee97f> (direct link to 0.9.6 released on 24-th May 2016; including demos)
3232- UltraShare: <http://ultrashare.net/hosting/fl/a8838060fb> (direct link to 0.9.4.16 released on 9-th April 2016; without demos)
3333- UltraShare: <http://ultrashare.net/hosting/fl/f523032cb4> (direct link to 0.9.4.14 released on 6-th April 2016; without demos)
3434
3535UltraShare is alternative because SourceForge is blocked in some countries. New releases are always announced in the Third Party section of the Lazarus Forum.
3636
3737Install to Lazarus
3838
3939Open menu `Package => Open package File (*.lpk) ...` and select file `eccontrols.lpk`. Click `Compile` (wait a while) and then `Use >> Install`. Lazarus will ask you "Do you want to rebuild Lazarus now?". Click `Yes` to install the package.
4040
4141## Components
4242
4343EC-Controls are installed to the tab EC-C on the Lazarus component palette.
4444
4545![](/wiki-images/3/3b/Ecpalette2.png)
4646
4747New images (from version 0.9.24.6). Resource files (*.lrs) also contains _150 and _200 images for Hi-DPI desktops.
4848
4949![](/wiki-images/7/7e/Eccpalette4.png)
5050
5151Components below are listed in order of their appearance on the component palette. All screenshots are taken from KDE4 or Plasma5 (Lazarus+Qt).
5252
5353### Visual
5454
5555#### TECBevel
5656
5757An alternative to [[TBevel]].
5858
5959![](/wiki-images/0/0e/Tecbevel.png)
6060
6161[[TECBevel]] can draw non-rectangular shapes or non-straight lines.
6262
6363#### TECLink
6464
6565[[TECLink]] provides a weblink. The same links are well known from web-browsers.
6666
6767![](/wiki-images/7/70/Teclink.png)
6868
6969A label which changes its look when hovered by mouse (by default becomes underlined and blue).
7070
7171It can open URL in default browser, default mail client, file in associated application or just trigger OnClick event.
7272
7373#### TECImageMenu
7474
7575A vertical menu with images. Similar component is frequently used in KDE4 applications and Outlook97
7676
7777![](/wiki-images/8/87/Tecimagemenu.png)
7878
7979[[TECImageMenu]] can have focus and can be reached by Tab key (when `TabStop = True`, which is default). Can be controlled by mouse, by keyboard or by code.
8080
8181Mouse
8282
8383- Simply left-click on menu item.
8484- Middle-click or right-click selects an item but does not click.
8585- Mouse wheel moves the selection and does not click.
8686
8787Keyboard
8888
8989- Space nad Enter: click on the selected item.
9090- Arrow Up, Arrow Down, Page Up, Page Down, Home and End: moves the selection but does not click.
9191- Acceleration key (Alt + Key) selects and clicks the relevant item (menu doesn't need to be focused)..
9292
9393#### TECSpinBtns
9494
9595An advanced alternative to [[TUpDown]].
9696
9797![](/wiki-images/b/bb/Tecspinbtns.png)
9898
9999[[TECSpinBtns]] is based on double precision variables.
100100
101101TECSpinBtns cannot have focus. Can be controlled by mouse or by code.
102102
103103Mouse
104104
105105TECSpinBtns consists from 9 small buttons.
106106
107107- Left-click on BtnMin, BtnBigDec, BtnDec, BtnMiddle, BtnMenu, BtnInc, BtnBigInc and BtnMax sets the Value to Min, decreases Value by PageSize, decreases Value by Increment, sets Value to Middle, triggers OnMenuClick event, increases Value by Increment, increases Value by PageSize and sets Value to Max respectively.
108108- Middle-click sets Value to Middle or triggers OnMenuClick - depends on MenuControl property. Other mouse buttons can be used for dragging too, depends on DragControl property. Dragging mainly depends on properties: DragOrientation, MouseIncrementX, MouseIncrementY, MouseStepPixelsX, MouseStepPixelsY and Reversed.
109109
110110Code
111111
112112Simply by assigning any floating-point value to property Value:
113113
114-`Value := 10.5;`
114+``` pascal
115+Value := 10.5;
116+```
115117
116118If the value is out of range (lesser than Min or greater than Max) then Value will be Min or Max.
117119
118120Precendence of drawing:
119121
1201221. The highest precedence has the OnDrawGlyph event.
1211232. The second is Caption. It should be short (one or two characters).
1221243. The third is image from Images. Images must be assigned and ImageIndex must be greater or equal to zero and lesser than Images.Count
1231254. When the OnDrawGlyph is not assigned, Caption is empty string and ImageIndex is -1 then built-in glyph is used. There is five sets of styles, they can be selected with GlyphStyle property.
124126
125127#### TECSpinEdit
126128
127129An advanced alternative to TSpinEdit and TFloatSpinEdit. It is [[TEdit]] joined together with TECSpinBtns.
128130
129131![](/wiki-images/c/c8/Tecspinedit.png)
130132
131133[[TECSpinEdit]] can have focus and can be reached by Tab key (when `TabStop = True`, which is default). Can be controlled by mouse, by keyboard or by code.
132134
133135
134136Mouse
135137
136138See [[TECSpinBtns]].
137139
138140Keyboard
139141
140142(line-edit must be focused)
141143
142144Text value can typed in to the line-edit directly. If entered value is lesser than TECSpinBtnsPlus.MinInEdit or greater than TECSpinBtnsPlus.MaxInEdit then the value will be changed to fit these bounds. Change of Value is done in OnEditingDone event.
143145
144146- Arrow Up/Down do click on BtnInc/BtnDec*.
145147- PgUp/PgDn do click on BtnBigInc/BtnBigDec*.
146148- Ctrl + Home/End do click on BtnMax/BtnMin*.
147149- Ctrl + Space do click BtnMiddle.
148150- Ctrl + Enter do click on BtnMenu.
149151
150152*) valid for Reversed = False. For Reversed = True works oppositely.
151153
152154Code
153155
154156Simply by assigning any floating-point value to property Value:
155157
156-`Value := 10.5;`
158+``` pascal
159+Value := 10.5;
160+```
157161
158162If the value is out of range (lesser than Min or greater than Max) then Value will be Min or Max.
159163
160164#### TECSwitch
161165
162166An alternative to TCheckBox. Similar component exists in GTk3.
163167
164168![](/wiki-images/6/64/Tecswitch.png)
165169
166170[[TECSwitch]] can have focus and can be reached by Tab key (when `TabStop = True`, which is default). Can be controlled by mouse, by keyboard or by code.
167171
168172Mouse
169173
170174- Left-click on switch area (out of knob) will change the State*.
171175- Left-click on the knob and holding the left-mouse button down will capture mouse and knob can be moved even if the mouse-cursor leaves the area of the switch.
172176
173177Keyboard
174178
175179- Space or Enter changes the State* (only when focused).
176180- Acceleration key (Alt + Key) changes the State* (doesn't need to be focused).
177181
178182Code
179183
180184Simply by assigning any State* or Checked property:
181185
182-`Checked := True; //False`\
183-`State := cbChecked; //cbGrayed, cbUnchecked`
186+``` pascal
187+Checked := True; //False
188+State := cbChecked; //cbGrayed, cbUnchecked
189+```
184190
185191*) Property State is always changed from checked to unchecked, from grayed to unchecked or from unchecked to checked.
186192
187193#### TECSpeedBtn
188194
189195A button with some advanced features and built-in glyphs. An alternative to TSpeedButton and TToggleBox.
190196
191197![](/wiki-images/0/04/Tecspeedbtn.png)
192198
193199[[TECSpeedBtn]] cannot have focus.
194200
195201Features and differences from [[TSpeedButton]]:
196202
197203- TSpeedButton has property Glyph: TBitmap. TECSpeedBtn has properties ImageIndex: Integer and Images: [[TImageList]] instead.
198204- TECSpeedBtn has property Delay and built-in timer. Therefore it can work as a delay-button (Delay\>0) or toggle-box (Delay\<0).
199205- TECSpeedBtn has more than 80 built-in glyph (painted via [[TCanvas]] helper). Glyphs can be various for checked and unchecked state.
200206- Similarly to TSpeedButton, TECSpeedBtn has properties GroupIndex, Checked and AllowAllUp so buttons can be grouped to radio-group.
201207- TECSpeedBtn cannot obtain focus but can be pressed by acceleration key (Alt+ \[underlined key\]).
202208- TECSpeedBtn can be linked with [[TAction]] too.
203209
204210Precendence of drawing:
205211
2062121. The highest precedence has the OnDrawGlyph event.
2072132. The second is Caption and image from Images. Images must be assigned and at least on of ImageIndex and ImageIndexChecked must be greater or equal to zero and lesser than Images.Count.
2082143. When the OnDrawGlyph is not assigned and both ImageIndex and ImageIndexChecked are -1 then built-in glyph is used (properties GlyphDesign and GlyphDesignChecked). When ImageIndex is valid Image and ImageIndexChecked is -1 or only GlyphDesign is some glyph and GlyphDesignChecked is egdNone then ImageIndex or GlyphDesign is used for checked state too (and vice versa).
209215
210216#### TECBitBtn
211217
212218The same as TECSpeedBtn but derived from TCustomControl, therefore it can have focus. An alternative to TBitBtn and TToggleBox.
213219
214220![](/wiki-images/5/5c/Tecbitbtn.png)
215221
216222#### TECEditBtn
217223
218224An alternative to [[TEditButton]]. It is [[TEdit]] joined together with [[TECSpeedBtn]].
219225
220226![](/wiki-images/5/5d/Teceditbtn.png)
221227
222228#### TECColorBtn
223229
224230Visual component for selecting color. Line edit displays color code in various formats and associated button triggers color dialog.
225231
226232![](/wiki-images/a/ab/Teccolorbtn.png)
227233
228234Color of the glyph on the button corresponds with the color in the line-edit.
229235
230236Property Text is not published. If Text is changed via code, EditingDone must be called to validate the change.
231237
232238#### TECComboBtn
233239
234240A combobox with associated button. It is [[TComboBox]] joined together with [[TECSpeedBtn]].
235241
236242![](/wiki-images/9/9e/Teccombobtn.png)
237243
238244#### TECColorCombo
239245
240246Visual component for selecting color. Combobox contains colors in various formats and associated button triggers color dialog.
241247
242248![](/wiki-images/4/43/Teccolorcombo.png)
243249
244250Color of the glyph on the button corresponds with the color selected in the combobox.
245251
246252Property Text is not published. If Text is changed via code, Validate must be called to validate the change.
247253
248254#### TECHeader
249255
250256An alternative to [[THeader]].
251257
252258![](/wiki-images/a/a1/Techeader.png)
253259
254260Main feature is ability to have columns aligned to the left and to the right at a time. This components is designed for TECCheckListBox.
255261
256262#### TECCheckListBox
257263
258264An alternative to [[TCheckListBox]].
259265
260266![](/wiki-images/0/02/Tecchecklistbox.png)
261267
262268Can have multiple checkable columns.
263269
264270Currently, property Sorted is not supported.
265271
266272#### TECSlider
267273
268274An advanced alternative to [[TTrackBar]].
269275
270276![](/wiki-images/e/e0/Tecslider.png)
271277
272278TECSlider can have focus and can be reached by Tab key (when `TabStop = True`, which is default).
273279
274280TECSlider is based on double precision variables. TECSlider can be controlled by mouse, by keyboard or by code.
275281
276282Mouse
277283
278284- Left-click on Slider area (out of Knob) will move the knob by PageSize (or less, if mouse cursor is nearer).
279285- Double-click or Middle-click will move the knob immediately to the mouse cursor (or to the Min/Max, if click is done out of groove and scale area).
280286- Left-click on the knob and holding the left-mouse button down will capture mouse and knob can be moved even if the mouse-cursor leaves the area of the slider.
281287- Mouse wheel moves knob up/down regardless of the Reversed property. In case of horizontal slider rolling up/down moves knob to the left/right, again, regardless of the Reversed property.
282288
283289The increment is:
284290
285291- Mouse wheel: Increment*Mouse.WheelScrollLines
286292- Ctrl + mouse wheel: Increment.
287293
288294Keyboard
289295
290296- Space: moves knob to the middle of the groove or to the ProgressMiddlePos in case of ProgressFromMiddle = True
291297- 0-9: moves the knob to position which is the integer multiplier of the PageSize (i.e. 0, 10, ..., 90 for PageSize = 10).
292298- PgUp: decreases Position by PageSize
293299- PgUp: increases Position by PageSize
294300- Home: moves the Knob to Min
295301- End: moves the Knob to Max
296302- +: increases Position by Increment
297303- -: decreases Position by Increment
298304- Ctrl + ArrowUp: decreases* Position by Increment
299305- Ctrl + ArrowLeft: decreases* Position by Increment
300306- Ctrl + ArrowDown: increases* Position by Increment
301307- Ctrl + ArrowRight: increases* Position by Increment
302308
303309*) valid for `Reversed = False`. When `Reversed = True` works oppositely.
304310
305311Code
306312
307313Simply by assigning any floating-point value to property Position:
308314
309-`Position := 10.5; `
315+``` pascal
316+Position := 10.5;
317+```
310318
311319If the value is out of range (lesser than Min or greater than Max) then Position will be Min or Max.
312320
313321#### TECProgressBar
314322
315323An advanced alternative to [[TProgressBar]].
316324
317325![](/wiki-images/6/62/Tecprogressbar.png)
318326
319327TECProgressBar is based on double precision variables. TECProgressBar cannot have focus. It can be controlled by code only.
320328
321329#### TECPositionBar
322330
323331An alternative to [[TTrackBar]] or [[TScrollBar]]. Similar components are used in [[Blender]] (3D graphics software).
324332
325333![](/wiki-images/6/61/Tecpositionbar.png)
326334
327335[[TECPositionBar]] cannot have focus and is based on double precision variables. TECPositionBar can be controlled by mouse or by code.
328336
329337Mouse
330338
331339- Left-click will set the position immediately to the mouse cursor (or to the Min/Max, if click is done out of groove and scale area).
332340- Middle-click: moves knob to the middle of the groove or to the ProgressMiddlePos in case of ProgressFromMiddle = True
333341- Left-click on the end of the progress on and holding the left-mouse button down will capture mouse and position can be moved even if the mouse cursor leaves the area of a position bar.
334342- Dragging is affected by MouseDragPixels (alone left mouse button) and MouseDragPixelsFine (Ctrl + left mouse button). Deafult values are 1 and 10, i.e. progress will change by one pixel when mouse cursor moves by one pixel (or by 10 pixels in case of dragging with Ctrl key pressed).
335343- Mouse wheel moves knob up/down regardless of the Reversed property. In case of horizontal slider rolling up/down moves knob to the left/right, again, regardless of the Reversed property.
336344
337345The increment is:
338346
339347- Mouse wheel: MouseDragPixels*Mouse.WheelScrollLines
340348- Ctrl + mouse wheel: (MouseDragPixels/MouseDragPixelsFine)*Mouse.WheelScrollLines
341349
342350Code
343351
344352Simply by assigning any floating-point value to property Position:
345353
346-`Position := 10.5; `
354+``` pascal
355+Position := 10.5;
356+```
347357
348358If the value is out of range (lesser than Min or greater than Max) then Position will be Min or Max.
349359
350360#### TECSpinPosition
351361
352362An alternative to [[TTrackBar]] or [[TScrollBar]]. Similar components are used in Krita (2D graphics software).
353363
354364![](/wiki-images/6/67/Tecspinposition.png)
355365
356366#### TECRuler
357367
358368An advanced ruler.
359369
360370![](/wiki-images/d/d0/Tecruler.png)
361371
362372[[TECRuler]] cannot have focus. It just displays scale. Can have fixed or movable pointer optionally.
363373
364374#### TECRadioGroup
365375
366376An alternative to TRadioGroup.
367377
368378![](/wiki-images/3/3a/Tecradiogroup.png)
369379
370380[[TECRadioGroup]] can have focus and can be reached by Tab key (when `TabStop = True`, which is not default). Can be controlled by mouse, by keyboard or by code.
371381
372382Mouse
373383
374384- Left-click on any item (out of knob) changes its Checked property to True (or to False if this item is already checked*).
375385- Left-click on the TECRadioGroup out of items sets focus to component only.
376386
377387Keyboard
378388
379389- 0: deselects all*
380390- 1-9: selects (or deselects*) item 1-9
381391- Acceleration key (Alt + Key) changes the Checked property to True or False* (radio group doesn't have to be focused).
382392
383393*) Depends whether egoAllowAllUp is in Options.
384394
385395Code
386396
387397Simply by assigning any ItemIndex or Items\[\].Checked property:
388398
389-`ItemIndex := 1; //selects the second item`\
390-`Items[1].Checked := False; //deselects the second item, regardless of the egoAllowAllUp in Options`
399+``` pascal
400+ItemIndex := 1; //selects the second item
401+Items[1].Checked := False; //deselects the second item, regardless of the egoAllowAllUp in Options
402+```
391403
392404#### TECCheckGroup
393405
394406An alternative to TCheckGroup.
395407
396408![](/wiki-images/7/7b/Teccheckgroup.png)
397409
398410TECCheckGroup can have focus and can be reached by Tab key (when `TabStop = True`, which is not default). Can be controlled by mouse, by keyboard or by code.
399411
400412Mouse
401413
402414- Left-click on any item (out of knob) changes its Checked property to True (or to False if this item is already checked*).
403415- Left-click on the TECCheckGroup out of items sets focus to component only.
404416
405417Keyboard
406418
407419- 0: deselects all*
408420- 1-9: selects (or deselects*) item 1-9
409421- Acceleration key (Alt + Key) changes the Checked property to True/False* (check group doesn't have to be focused).
410422
411423*) Depends whether egoAllowAllUp is in Options.
412424
413425Code
414426
415427Simply by assigning any Checked\[\] or Items\[\].Checked property:
416428
417-`Checked[1] := True; //selects the second item`\
418-`Items[1].Checked := False; //deselects the second item, regardless of the egoAllowAllUp in Options.`
429+``` pascal
430+Checked[1] := True; //selects the second item
431+Items[1].Checked := False; //deselects the second item, regardless of the egoAllowAllUp in Options.
432+```
419433
420434#### TECTabCtrl
421435
422436See: [[TECTabCtrl]]
423437
424438#### TECAccordion
425439
426440[[TECAccordion]] is a side menu, works similarly to [[TPageControl]].
427441
428442![](/wiki-images/3/37/Tecaccordion.png)
429443
430444TECAccordion can have focus and can be reached by Tab key (when `TabStop = True`, which is not default). Can be controlled by mouse, by keyboard or by code.
431445
432446Mouse
433447
434448Left-click on any item opens/closes it.
435449
436450Keyboard
437451
438452Acceleration key (Alt + Key) changes the item (component doesn't have to be focused).
439453
440454Code
441455
442456Simply by setting ItemIndex property.
443457
444458#### TECTriangle
445459
446460A balance of three values. This is not a color picker!
447461
448462![](/wiki-images/a/a8/Tectriangle.png)
449463
450464[[TECTriangle]] cannot have focus and cannot be reached by Tab key. Can be controlled by mouse only.
451465
452466Mouse
453467
454468- Left-click on triangle area.
455469- Left-click and hold the pointer can drag.
456470- Left-click on a mark sets more exact value, for example \[0,333..., 0.333..., 0.333...\].
457471- Mouse wheel can roll the pointer up and down.
458472
459473Code
460474
461475By calling overloaded SetValues method. Parameters can be 1) X and Y coordinates or 2) "Top" and "Bottom" values (the thirds value "Side" is calculated so the sum of the values is always equal to 1).
462476
463477#### TECGrid
464478
465479See: [[TECGrid]]
466480
467481#### TECLightView
468482
469483See: [[TECLightView]]
470484
471485#### TECConfCurve
472486
473487Component for Configuration.
474488
475489![](/wiki-images/1/1e/Tecconfcurve.png)
476490
477491User can configure polyline or Bezier curve with multiple points.
478492
479493Can be aligned with vertical and/or horizontal ruler (TECRuler).
480494
481495See ECConfCurve-Demo.
482496
483497#### TECScheme
484498
485499An advanced component for configuration of general scheme.
486500
487501![](/wiki-images/6/65/Tecscheme.png)
488502
489503User can add multiple blocks and connect them.
490504
491505This component is highly configurable. See SchemeDesigner and ECSchemeDesc bundled with EC-Controls.
492506
493507### Non-visual components
494508
495509#### TECSpinController
496510
497511Designed for controlling properties of multiple TECSpinBtns and TECSpinEdit.
498512
499513![](/wiki-images/7/79/Tecspincontrollericon.png)
500514
501515[[TECSpinBtns]] and [[TECSpinEdit]] have properties Controller. When some SpinController is assigned to this property then this Controller can change selected properties of all assigned TECSpinEdits and TECSpinBtns at a time. Adjustable properties are - for example - TimerDelay, TimerRepeat, widths of individual buttons, GlyphsStyle and others.
502516
503517Project can have multiple SpinControllers.
504518
505519#### TECTimer
506520
507521An advanced timer.
508522
509523![](/wiki-images/2/23/Tectimericon.png)
510524
511525Main feature is that the first interval (property Delay) can differ from all following intervals (property Repeat).
512526
513527### Other parts of EC-Controls
514528
515529#### Class TECScale
516530
517531A scale. It is not a component but can draw itself to any canvas.
518532
519533This class is used in TECRuler, TECSlider, TECProgressBar, TECPositionBar and TECSpinPosition.
520534
521535See demo ECScale-Demo.
522536
523537#### Unit ECTypes
524538
525539Base types and classes for Eye Candy Controls (EC-C).
526540
527541If you use EC-Controls in your project you may need to add this unit to your **uses** section.
528542
529543This unit contains many declarations, color-conversion routines and base classes, for example TBaseScrollControl.
530544
531545#### TBaseScrollControl
532546
533547is base class for scrolling components (TECScheme is its descendant).
534548
535549You can derive your own scrolling component from TBaseScrollControl. [[TECScheme]] and [[TECGrid]] are based on this class.
536550
537551## Demos
538552
539553EC-Controls come with several demos. If some of following demos is missing in archive, it may mean that there were no changes and the demo was not included. In that case use the demo from previous release.
540554
541555#### ECC-Demo
542556
543557This demo shows all EC-Controls in various configurations.
544558
545559#### ECScale-Demo
546560
547561This demo shows how you can use [[TECScale]] in our own visual component.
548562
549563#### ECConfCurve-Demo
550564
551565This demo shows capabilities of [[TECConfCurve]].
552566
553567#### ECSchemeDesc
554568
555569This demo shows how you can create descendant component from [[TCustomECScheme]].
556570
557571#### SchemeDesigner
558572
559573SchemeDesigner is more than a demo. It shows you how you can create TECScheme configurator in your own application but it can be also used to create your own configurations and store them in *.xml format.
560574
561575---
562576*From the Free Pascal wiki, page "Eye-Candy Controls", as it stood on 2023-05-02 after a change by Blaazen, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history