Lazarus

Announcements => Third party => Topic started by: Blaazen on June 02, 2020, 02:51:22 am

Title: ANN: Eye-Candy Controls 0.9.44
Post by: Blaazen on June 02, 2020, 02:51:22 am
New version of Eye Candy Controls is released. You can download it at SourceForge:

https://sourceforge.net/projects/eccontrols/files/ecc_20-06-01_0-9-44/ (https://sourceforge.net/projects/eccontrols/files/ecc_20-06-01_0-9-44/)

News:
- added new component TECBitBtn. It is the same as TECSpeedBtn, except it is descendant of TCustomControl, so it can be focused.
- added new component TECLightView. It is a very simple (<1400 lines) control that can display formatted text, links and images. See the bundled demo ECLW.

https://wiki.lazarus.freepascal.org/Eye-Candy_Controls (https://wiki.lazarus.freepascal.org/Eye-Candy_Controls)
I will add page for TECLightView with description of all tags as soon as possible.

Other changes was mainly bugfixes and tweeks. Lazarus trunk removes property TCustomComboBox.ReadOnly, this is fixed here. See CHANGELOG.txt bundled in the *.zip for details.

This version was tested with:
Lazarus 2.1.0 r61214:63249M FPC 3.0.4 x86_64-linux-qt
Lazarus 2.1.0 r61214:63249M FPC 3.3.1 x86_64-linux-qt

P.S.: It's more than two years from the last release, shame on me  :o. Future plans are tweaks for hi-DPI desktop.
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: Thaddy on June 02, 2020, 09:07:38 am
Nice you found the time to update these beauties!
Will test if my old projects still compile with the new version.

Thanks. I always found this one of the most appealing set of extra's and used it even in a commercial app. (industrial controller)
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: af0815 on June 02, 2020, 09:15:46 am
Are the ECC are working with the other widgetsets too (windows, gtk2 ?)
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: PascalDragon on June 02, 2020, 09:44:21 am
Judging by the following text on the Wiki (https://wiki.lazarus.freepascal.org/Eye-Candy_Controls) page I'd say yes:

Quote
Their design is based on Themes, therefore their look is very native everywhere, no matter what widgetset you use.
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: Thaddy on June 02, 2020, 10:56:12 am
Yes. I use them with GTK2. (But I did not test the new release yet)
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: Blaazen on June 02, 2020, 04:19:17 pm
I tried some demo to compile with GTK2 and basicly it worked.
I also sometime try to run the controls on Wine (since I have no Windows and no VM). But I didn't deeply tested this release, just a quick look.
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: Thaddy on June 02, 2020, 04:21:21 pm
It works on GTK2. You are a defensive coder. Everything looks OK here.
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: af0815 on June 03, 2020, 02:43:28 pm
The new version in not in OPM available, because i see only 0.9.30.0 there.

Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: af0815 on June 03, 2020, 04:21:23 pm
Test is not so well of the ECC.

a) Maybe a great error in user

Place a ECSpinEdit on a form, change the Valueformat to evfTime and DateTimeFormat to hh:nn. If i compile, run and use the Buttons, nothing happens.

I think, the increments are not set correct for a timevalue, but where can i set the increments to a hour, a minute (or a second) ?!

b) I can set Buttons to none in the OI and Lazarus crashes full without a message

----
Lazarus 2.0.9 r63081 FPC 3.2.0 i386-win32-win32/win64
----

Edit:
ad a)
PageSize should be 0.04166666667 (=1/24 = hour)
Increment 0.000694444444 (=1/1440 = minute)
Min 0
Max 1

Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: Blaazen on June 03, 2020, 08:32:02 pm
ad b) It is nasty. Qt does not crash but yet this is not wanted. I got fix fot it (eceditbtns.pas line 580):
Code: Pascal  [Select][+][-]
  1. published
  2.     property Button: TECSpeedBtnPlus read FButton{ write FButton};
i.e. make the property read only. Next release will have this fixed for all similar components.

And I made wiki for TECLightView meanwhile: https://wiki.lazarus.freepascal.org/TECLightView (https://wiki.lazarus.freepascal.org/TECLightView)

I will look at the ECSpinEdit with evfTime and DateTimeFormat to hh:nn.
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: af0815 on June 03, 2020, 10:11:12 pm
THX, for the fix.

ad A) I think info in the wiki is okay, i need some time to understood the working oft the parameters for evfTime.
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: Blaazen on June 04, 2020, 02:10:33 am
In this case you should set:
Buttons.PageSize to 1/24 = 0,041666666666667
Buttons.Increment to 1/(24*60) = 0,000694444444444
Buttons.Min = 0
Buttons.Max = 0,999988425925926 (= 23:59:59) or 0,999305555555556 (= 23:59)
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: Bloodbat on June 22, 2020, 03:22:05 pm
Thanks for the update to this great control suite :), however TECTabCtrl seems to have a nasty problem: if the control is dropped on a form and etcoAddTabButton is True, the resulting .exe won't run (it crashes with runtime error 210; followed by EObjectCheck Object reference is nil, and followed by EReadError Object reference is nil if executed under a debugger).  If the project is closed and then loaded in the IDE "Error reading ECTabCtrl1.Options: Object reference is nil" is encountered.
While the program can be... well... bruteforced to start if line 3677 "Transparent:=False;" is commented out in ectabctrl.pas the close tab buttons are displayed using the same glyph as the add tab button and the error when loading a project using TECTabCtrl remains; none of this was a problem in 0.9.30
Lazarus 2.1.0; FPC 3.2.0; Win32.
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: madref on July 14, 2020, 10:10:29 pm
I get an error trying to install the latest version in line 2458 of ECGrid.pas
Code: Pascal  [Select][+][-]
  1.         if bSelectEd and not EditorMode and not (ecoReadOnly in Columns[Col].Options)
  2.           and not (egoReadOnly in Options) and ((Shift*[ssModifier, ssAlt, ssMeta])=[]) then
  3.           begin
  4.             MakeCellFullyVisible(Col, Row, False);
  5.             DoSelectEditor(Col, True, Key);
  6.           end;


Any suggestions?
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: Blaazen on July 14, 2020, 10:43:23 pm
1. What error?
2. What widgetset? I never tested on Carbon nor Cocoa, only Qt4, GTK2 and Wine.
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: madref on July 14, 2020, 11:50:45 pm
Widgetset = Cocoa
Range checking error and/or duplicate something.... (sorry forgot)
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: DonAlfredo on July 15, 2020, 09:05:43 am
In controls.pp defined:
  ssModifier = {$if defined(darwin) or defined(macos) or defined(iphonesim)} ssMeta {$else} ssCtrl {$endif};

This
Code: Pascal  [Select][+][-]
  1. [ssModifier, ssAlt, ssMeta]
Should be
Code: Pascal  [Select][+][-]
  1. [ssModifier, ssAlt]
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: madref on July 15, 2020, 11:25:43 am
Thanks.... now it works
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: Josh on December 31, 2020, 02:38:41 am
Hi

Juat updated trunk to svn 64310

ecdesigntime.pas(543,78) Error: Incompatible type for arg no. 1: Got "<procedure variable type of procedure(const TPersistentSelectionList) of object;Register>", expected "<procedure variable type of procedure(TPersistentSelectionList) of object;Register>"

Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: Blaazen on December 31, 2020, 03:13:15 am
This is from https://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/components/ideintf/propedits.pp?root=lazarus&r1=64300&r2=64299&pathrev=64300 (https://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/components/ideintf/propedits.pp?root=lazarus&r1=64300&r2=64299&pathrev=64300)

It can solved by removing const in ECDesignTime (both declaration and implementation):

Code: Pascal  [Select][+][-]
  1. { THookAccItemSelection }
  2.   THookAccItemSelection = class
  3.   protected
  4.     procedure HookSelection({const} ASelection: TPersistentSelectionList);
  5.   end;

However, is it a solution? I guess there are more affected packages which won't compile now.
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: JuhaManninen on December 31, 2020, 11:32:13 am
However, is it a solution? I guess there are more affected packages which won't compile now.
Oh boy, is it commonly used in 3rd party packages?
In that case the "const" maybe should be restored. I only went through the packages under Lazarus repo.

[Edit] I restored the "const" in r64312. Sorry for the hassle.
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: Blaazen on December 31, 2020, 05:47:54 pm
Thanks. I have no clue how often it is used. I remember that some four years ago I was looking for help on ML: http://free-pascal-lazarus.989080.n3.nabble.com/Lazarus-Detect-that-component-selected-in-OI-td4048630.html (http://free-pascal-lazarus.989080.n3.nabble.com/Lazarus-Detect-that-component-selected-in-OI-td4048630.html) and Ondrej recommende me this solution.
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: Josh on December 31, 2020, 06:21:16 pm
Re-tested on trunk svn rev 64313.

Everything back to normal.

Thanks for rapid response and fix
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: JuhaManninen on December 31, 2020, 06:38:41 pm
Good!
Talking about OI, you may want to test the latest improvement. The component TreeView now remembers its expanded / collapsed state for different designer forms when you switch between them.
It works rather well. :)
Title: Re: ANN: Eye-Candy Controls 0.9.44
Post by: speter on May 22, 2021, 06:34:48 am
I am using the TECLightView component (from Eye-Candy Controls) and am wondering if it is possible to "escape" the control codes.

For example if I have
Code: Pascal  [Select][+][-]
  1. ECLightView1.textdata := '%f10\some text';

The "%f10\" is used as a command (in this case setting the font size); but what do I do if I want to display the text "%f". I tried using "%%f" and "\%f"; but neither worked for me.

cheers
S.
TinyPortal © 2005-2018