OS2 World Community Forum

OS/2, eCS & ArcaOS - Technical => Applications => Topic started by: ydario on April 28, 2017, 01:08:00 pm

Title: Testing cairo enabled eStylerLite
Post by: ydario on April 28, 2017, 01:08:00 pm
Hi,

I made available a test release of eStylerLite which uses cairo for controls painting. Using cairo allows antialiasing for titlebar and button texts. This new dll allows also titlebar buttons replacement on the fly. Bitmaps are not supported for buttons background painting.

The new binaries are available here:

https://github.com/altsan/os2-estyler/releases

Be aware that this is not a full installer, only a zip distribution. You need to overwrite your existing files and add new bitmaps.
Also at least one desktop crash has been reported, be sure to have a alternative boot available for removing the dll in case of failures.

thanks,

Yuri

Title: Re: Testing cairo enabled eStylerLite
Post by: haraldkamm on April 28, 2017, 06:15:32 pm
Hi Yuri,

thanks for your estyler enhancement! Unfortunately it doesn't work:

SYS1804: The system cannot find the file AFCUTL05.

Best regards, Harald
Title: Re: Testing cairo enabled eStylerLite
Post by: rbri on April 28, 2017, 06:20:19 pm
SYS1804: The system cannot find the file AFCUTL05.

Styling itself works here but i got the same error if i try to start the estyler.exe
Title: Re: Testing cairo enabled eStylerLite
Post by: Andy Willis on April 29, 2017, 06:25:17 am
I copied AFCUTL05 from from styler2 but it apparently was also updated from the version I have:
Failed to insert the dialog pages in the settings notebook.
Title: Re: Testing cairo enabled eStylerLite
Post by: ydario on April 29, 2017, 05:32:50 pm
try this one

https://www.dropbox.com/s/rzipr67d8h90f2r/afcutl05.zip?dl=0
Title: Re: Testing cairo enabled eStylerLite
Post by: Andy Willis on April 29, 2017, 08:25:31 pm
OK, that was not where the problem lies.  It turns out to be the same version I have according to the MD5.  The problem may be the version of estyler I am using.  I will check another system and see what it has.
Title: Re: Testing cairo enabled eStylerLite
Post by: Martin Iturbide on May 03, 2017, 03:07:33 am
Hi

I'm getting this message. Any suggestions on what I did wrong?

Regards
Title: Re: Testing cairo enabled eStylerLite
Post by: ydario on May 03, 2017, 06:06:35 pm
are you sure is it loading the correct estlrlrs.dll? maybe you didn't replace the old one.

Yuri

Title: Re: Testing cairo enabled eStylerLite
Post by: Martin Iturbide on May 03, 2017, 07:29:39 pm
Hi Yuri. Yes, the old DLL was my issue. I'm trying it.

By the way, do you have any further information about afcutl05.dll so I can include it on the EDM/2 API Documentation Page (http://www.edm2.com/index.php/The_OS/2_API_Project)? Documentation, source code, etc.

Regards
Title: Re: Testing cairo enabled eStylerLite
Post by: Alex Taylor on May 04, 2017, 05:51:23 pm
By the way, do you have any further information about afcutl05.dll so I can include it on the EDM/2 API Documentation Page (http://www.edm2.com/index.php/The_OS/2_API_Project)? Documentation, source code, etc.

It lives in one of your github repos, you know.  :)

https://github.com/OS2World/UTIL-WPS-Styler_2/tree/master/utildll
Title: Re: Testing cairo enabled eStylerLite
Post by: Martin Iturbide on May 04, 2017, 09:22:12 pm
oops.. I forgot checking that. I will see if I can document something on the EDM/2 wiki.
How should we call that API? UtilDLL? AFCUTL05 does not sound that nice.

By the way I tried to document the file first:  Afcutl05.dll‎ (http://www.edm2.com/index.php/Afcutl05.dll)

Regards
Title: Re: Testing cairo enabled eStylerLite
Post by: Andreas Schnellbacher on May 04, 2017, 10:39:13 pm
How should we call that API? UtilDLL? AFCUTL05 does not sound that nice.
The DLL is a private library, apparently used by Alessandro in all his projects:
AFC = Alessandro Felice Cantatore (thanks, Tom)
UTL = Utilities
05 = Version 5
Do the expanded terms sound better?

Unfortunately the code itself is also poorly documented. Even chosen function prefixes are nowhere described.
Title: Re: Testing cairo enabled eStylerLite
Post by: Andy Willis on May 05, 2017, 02:01:58 am
Once I found where the existing DLLs were, I am now able to use the new stylerlite.  It is not compatible with Styler/2.  Even adding smartwin.exe to the exempt list Smartwin will not launch if stylerlite is enabled, or if it is not enabled then smartwin will launch but crash if you then enable stylerlite.
Title: Re: Testing cairo enabled eStylerLite
Post by: Andy Willis on May 05, 2017, 02:33:03 am
Once I found where the existing DLLs were, I am now able to use the new stylerlite.  It is not compatible with Styler/2.  Even adding smartwin.exe to the exempt list Smartwin will not launch if stylerlite is enabled, or if it is not enabled then smartwin will launch but crash if you then enable stylerlite.
OK, I found changed the font to Bold and it does not crash Smartwin, changed it back to normal font and still no crash so not sure why it was crashing before.
Title: Re: Testing cairo enabled eStylerLite
Post by: Martin Iturbide on May 05, 2017, 05:02:38 pm
Hi.

I'm naming that library "AFCUtil (http://www.edm2.com/index.php/AFCUtil)" on the EDM/2 Wiki. It is more to have it identified somewhere on the Internet. Maybe on the future it can be documented properly.

Regards
Title: Re: Testing cairo enabled eStylerLite
Post by: Tom on May 05, 2017, 05:53:34 pm
The DLL is a private library, apparently used by Alessandro in all his projects:
AFC = Alessandro Felice Cantadore (correctly spelled?)

Cantatore
Title: Re: Testing cairo enabled eStylerLite
Post by: guzzi on May 06, 2017, 12:52:49 am
The singer?
Title: Re: Testing cairo enabled eStylerLite
Post by: ydario on May 06, 2017, 10:58:36 am
Once I found where the existing DLLs were, I am now able to use the new stylerlite.  It is not compatible with Styler/2.

sure, this is a replacement for eStylerLite not for SmartWin.

Yuri
Title: Re: Testing cairo enabled eStylerLite
Post by: ydario on May 06, 2017, 11:00:13 am
OK, I found changed the font to Bold and it does not crash Smartwin, changed it back to normal font and still no crash so not sure why it was crashing before.

Unfortunately, Cairo font matching code does not really support OS/2 font naming, so a best match is done. This explain why sometimes you see a different font used for painting.

thanks,

Yuri

Title: Re: Testing cairo enabled eStylerLite
Post by: Andy Willis on May 06, 2017, 02:38:51 pm
Once I found where the existing DLLs were, I am now able to use the new stylerlite.  It is not compatible with Styler/2.

sure, this is a replacement for eStylerLite not for SmartWin.

Yuri
Yes, the fact that it is not a replacement for SmartWin is why I end up using both... if SmartWin had been updated then I would just have been using it and not both.  I had never had a problem with running both in the past but now I do have to add smartwin.exe to the estyler exception list.
Title: Re: Testing cairo enabled eStylerLite
Post by: Dave Yeo on May 06, 2017, 08:12:02 pm
OK, I found changed the font to Bold and it does not crash Smartwin, changed it back to normal font and still no crash so not sure why it was crashing before.

Unfortunately, Cairo font matching code does not really support OS/2 font naming, so a best match is done. This explain why sometimes you see a different font used for painting.

thanks,

Yuri

Are you just using the toy font api? If so it might be worth considering using the freetype path, though it is more complex.
Title: Re: Testing cairo enabled eStylerLite
Post by: ydario on May 06, 2017, 10:58:54 pm
Are you just using the toy font api? If so it might be worth considering using the freetype path, though it is more complex.

yes, someday I will try that API too.
Title: Re: Testing cairo enabled eStylerLite
Post by: Martin Iturbide on May 12, 2017, 10:43:20 pm
Hi

I can not say that my test system is super stable, but do you think this issues can be related to this test version of Styler?
(Check pictures).

Regards

Title: Re: Testing cairo enabled eStylerLite
Post by: Martin Iturbide on May 13, 2017, 04:42:59 pm
Hi

I returned my VM machine to a previous state and tried eStyler again.

It seems to work fine partially, but when I remove the "Buttons - Solid backgound color" and try to select an PNG it game a black button. There are also some other "white" strange screens.

Maybe I'm missing something else. Any ideas?

Regards
Title: Re: Testing cairo enabled eStylerLite
Post by: Dave Yeo on May 13, 2017, 06:55:13 pm
Do you have libpng installed?
Title: Re: Testing cairo enabled eStylerLite
Post by: Martin Iturbide on May 13, 2017, 07:48:08 pm
Yes.

I have libpng versin 1.6.28 installed with ANPM.

Regards
Title: Re: Testing cairo enabled eStylerLite
Post by: Martin Iturbide on May 15, 2017, 07:41:32 pm
Hi

Another issue that I'm experiencing with this new version, is that if it is turned on (Enable user interface enhancements), the "Windows Themes" program will not load. If I turn eStyler off, "Windows Themes" will be working again.

Here it is the log.

Code: [Select]
05-15-2017  12:41:48  SYS3175  PID 005c  TID 0001  Slot 00cb
C:\ECS\SYSTEM\THEMEMGR\THEMEMGR.EXE
c0000005
1ef900e3
P1=00000002  P2=0002fabc  P3=XXXXXXXX  P4=XXXXXXXX 
EAX=000010b8  EBX=0000000a  ECX=0002fabc  EDX=00000000
ESI=00000000  EDI=0000000a 
DS=0053  DSACC=f0f3  DSLIM=ffffffff 
ES=0053  ESACC=f0f3  ESLIM=ffffffff 
FS=150b  FSACC=00f3  FSLIM=00000030
GS=0000  GSACC=****  GSLIM=********
CS:EIP=005b:1ef900e3  CSACC=f0df  CSLIM=ffffffff
SS:ESP=0053:00033ab0  SSACC=f0f3  SSLIM=ffffffff
EBP=00033acc  FLG=00010202

GCC1.DLL 0001:000000e3

Regards
Title: Re: Testing cairo enabled eStylerLite
Post by: Andy Willis on May 16, 2017, 02:58:16 am
Hi

Another issue that I'm experiencing with this new version, is that if it is turned on (Enable user interface enhancements), the "Windows Themes" program will not load. If I turn eStyler off, "Windows Themes" will be working again.

Here it is the log.

Code: [Select]
05-15-2017  12:41:48  SYS3175  PID 005c  TID 0001  Slot 00cb
C:\ECS\SYSTEM\THEMEMGR\THEMEMGR.EXE
c0000005
1ef900e3
P1=00000002  P2=0002fabc  P3=XXXXXXXX  P4=XXXXXXXX 
EAX=000010b8  EBX=0000000a  ECX=0002fabc  EDX=00000000
ESI=00000000  EDI=0000000a 
DS=0053  DSACC=f0f3  DSLIM=ffffffff 
ES=0053  ESACC=f0f3  ESLIM=ffffffff 
FS=150b  FSACC=00f3  FSLIM=00000030
GS=0000  GSACC=****  GSLIM=********
CS:EIP=005b:1ef900e3  CSACC=f0df  CSLIM=ffffffff
SS:ESP=0053:00033ab0  SSACC=f0f3  SSLIM=ffffffff
EBP=00033acc  FLG=00010202

GCC1.DLL 0001:000000e3

Regards
Add THEMEMGR.EXE to the estyler "do not apply enhancements" and apply.  Not sure of why it now conflicts but I have both it and smarwin.exe in there.