Page 1 of 2

Codejock Skinframework

Posted: Wed Jul 04, 2018 9:06 pm
by unixkd
Hi all,

Express++ codejock skinframework sample gives error when you click "Select from List" under skin style group.

Any program routine on how to apply skin to entire application will be appreciated. I run windows 7

CJSkinError.jpg
CJSkinError.jpg (63.22 KiB) Viewed 10063 times

Re: Codejock Skinframework

Posted: Wed Jul 04, 2018 10:37 pm
by Auge_Ohr
IsThemeActive() is a Xbase++ Function.

which Xbase++ version ? which OS() ?
check Date/Time of \LIB\XPPSYS.DLL or rebuild it using \SOURCE\SYS\PROJECT.XPJ
---
just saw in \XCodeJock\Samples\SkinFramework\SkinFramework.XPJ

Code: Select all

// ..\..\source\xbparts.obj
this is where FUNCTION IsThemeActive() is.

Re: Codejock Skinframework

Posted: Thu Jul 05, 2018 6:03 am
by Tom
There might be an error in "SelectFromList", but the sample shows how to apply a skin to an entire app. The sample app is skinned - your screenshot shows it. Just check the code to see how this is done.

We added all this stuff several years ago and removed all the shit some month later. Nobody needs skinning. Just implement a good application layout. You don't need any additional make-up if you do so.

Re: Codejock Skinframework

Posted: Thu Jul 05, 2018 6:45 am
by rdonnay
Nobody needs skinning.
I agree with you about this.
You are asking for trouble to solve a problem that doesn't exist.

Re: Codejock Skinframework

Posted: Thu Jul 05, 2018 12:37 pm
by Auge_Ohr
i only have a Problem with Ownerdraw Menu ... but that is a Alaska Problem.
to use a Theme have nothing to do with good Layout ... it is just a visual Style.

neverless if you want a Design "nobody else" have you can make a own Theme.
i do have Customer where User (Woman) use it an change Theme every Day ... they like it.

Re: Codejock Skinframework

Posted: Sun Mar 05, 2023 8:56 am
by unixkd
Nobody needs skinning
I disagree with Tom on this matter. It is akin to say OWERDRAW does not matter or even CSS
///////////////////////////////////////////////////////////////////////////////
//
// SkinFramework with Xbase++ and eXPress++
// Creation date: 12/14/2008
// Roger Donnay
//
// Notes about SkinFrameWork:
//
// 1. Error occurs when popping up a new window (SL1 only):
// Parameter has wrong value, dllPrepareCall, IsThemeActive().
// Error occurs only when applying skin to Forms.
// Requires using XPPSYS.DLL in \XcodeJock\Bin19_SL1
//
// 2. OWNERDRAW menu disappears after applying a skin
//
// 3. Pushbuttons with Bitmaps will show transparent color after
// applying a skin. Transparency does not work on buttons.
//
// 4. Make sure to make the SkinFramework object a child of the
// AppDeskTop() to prevent slowness and lockups.
//
///////////////////////////////////////////////////////////////////////////////
Roger mentioned how the problem can be resolved as indicated above but it does not solve the problem.

Joe

Re: Codejock Skinframework

Posted: Sun Mar 05, 2023 9:50 am
by unixkd
Hi Jimmy

I saw your post shown below, does it work with SL1?

Thanks

Joe
when using Codejock SkinFrameWork you can use own Theme for your Xbase++ Application an change Theme "on-fly"

Re: Codejock Skinframework

Posted: Sun Mar 05, 2023 1:31 pm
by Auge_Ohr
hi Joe,
unixkd wrote: Sun Mar 05, 2023 9:50 am I saw your post shown below, does it work with SL1?
Yes, Codejock Skinframework still work with Xbase++
the Benefit is that User "can" change Style if he/she don´t like Default

---

every Windows Version have "other Theme"
also Apps like Office change Theme

using a "Skin-Tool" for own App can change Style to look like Office

---

since Windows 10 we got "Dark-Mode" which i prefer
it is "only" to change B/W to W/B ...
DualGrid_White.jpg
DualGrid_White.jpg (335.98 KiB) Viewed 1894 times
DualGrid_Black.jpg
DualGrid_Black.jpg (382.11 KiB) Viewed 1894 times
i use 2 x PUBLIC in my App for Foreground and Backgound Color
User can take ColorDialog and get it´s own Color

Re: Codejock Skinframework

Posted: Mon Mar 06, 2023 12:58 am
by skiman
Hi,

I tried it years ago and removed it after some months. But here is how I did it.

In the main of my software.

Code: Select all

		oAppDesktop :=AppDeskTop() 
			@ 0,0 DCACTIVEXCONTROL oSkin SIZE 1,1 PIXEL ;
				CLSID 'Codejock.SkinFramework.13.3.1' parent oAppDeskTop  //  + CJ_Version()
			cSkin := '.\basisdoc\abo2022.styles'

			DCREAD GUI HANDLER MenuHandler ;;
				TITLE cDlgTitel ;
				OPTIONS GetOptions ;
				PARENT @oDlg ;
				eval {|o|  oSkin:LoadSkin(cSkin,''),oSkin:applyWindow(oDlg:getHwnd()),;
}   

Re: Codejock Skinframework

Posted: Mon Mar 06, 2023 4:38 am
by unixkd
Hi Jimmy
Yes, Codejock Skinframework still work with Xbase++
the Benefit is that User "can" change Style if he/she don´t like Default
Can you pls give me simple sample program that work for you.

My problem is that I got the error in POST #1 in my application. Roger suggested that we include xppsys.dll in application to solve the problem but did not work.

Thanks

Joe