InfoSkin1.0 - OpenSource Theme Engine for PB4
InfoSkin1.0 - OpenSource Theme Engine for PB4
InfoSkin is a small and fast skin engine for your PureBasic4 applications. I decided to release it under LGPL license so all coders can contribute to make it better. If you have ideas, suggestions, etc, download a copy and modify it then feel free to post the source code here if you want. I am still a noob and I don't know if I can add too many gadgets without your help... If you use it, credits would be cool, but you're not forced to do that.
Special thanks to Netmaestro for helping me with the transparent image drawing and thefool for the example tweak.
The download package contains the include file, a simple example and a region maker to skin your windows. Hope you like it. Current supported gadgets are buttons, checkboxes and progressbars.
Download
Size: 23.9 KB
MD5: BBEC4BE41059A72511C81628E3799F08
http://www.bytessence.com/download/temp/InfoSkin.zip
[Update 1]
Fixed the event handling bug.
[Update 2]
Now it uses Linked lists to minimize the memory consumption (Thx Konne).
Added new ProgressBar infogadget and manipulation functions.
Updated the example.
[Update 3]
Found and fixed a bug in the InfoSkinSetProgressBarState() wich was consuming memory [!] Please download it again if you are using it [!]
Updated the example (thanks thefool)
Special thanks to Netmaestro for helping me with the transparent image drawing and thefool for the example tweak.
The download package contains the include file, a simple example and a region maker to skin your windows. Hope you like it. Current supported gadgets are buttons, checkboxes and progressbars.
Download
Size: 23.9 KB
MD5: BBEC4BE41059A72511C81628E3799F08
http://www.bytessence.com/download/temp/InfoSkin.zip
[Update 1]
Fixed the event handling bug.
[Update 2]
Now it uses Linked lists to minimize the memory consumption (Thx Konne).
Added new ProgressBar infogadget and manipulation functions.
Updated the example.
[Update 3]
Found and fixed a bug in the InfoSkinSetProgressBarState() wich was consuming memory [!] Please download it again if you are using it [!]
Updated the example (thanks thefool)
Last edited by Inf0Byt3 on Sat Feb 13, 2010 1:08 pm, edited 6 times in total.
None are more hopelessly enslaved than those who falsely believe they are free. (Goethe)
-
- Addict
- Posts: 1648
- Joined: Mon Sep 20, 2004 3:52 pm
- Contact:
Thanks for the feedback . I'm looking forward to transform this to fit our 'modernism' needs. I'm glad you like it.
About the bug, i'll fix it as soon as I get home . Thanks.
[Edit]
Yes, that's right, it's a bug in the event handling procedure. This should be simple to fix... (i hope).
About the bug, i'll fix it as soon as I get home . Thanks.
[Edit]
Yes, that's right, it's a bug in the event handling procedure. This should be simple to fix... (i hope).
None are more hopelessly enslaved than those who falsely believe they are free. (Goethe)
At the risk of being laughed off the board, I'd hazard a guess you'd need to create your own gadgets and/or subclass the existing onesInf0Byt3 wrote:Any ideas how to make this work for w98 too?
Win8.1, PB5.x, okayish CPU, onboard video card, fuzzy monitor (or is that my eyesight?)
"When the facts change, I change my mind" - John Maynard Keynes
"When the facts change, I change my mind" - John Maynard Keynes
That's true, but this are really custom gadgets... It's a bit hard to accomplish that i think. BTW, I updated the code. I fixed that darn bug in it but took me 2 hours to find it. Guess what: It wasn't my code who made that error it was this line:
It was returning 'pressed' even if you clicked outside a infogadget. Anyway, now I replaced it with this:
And it works perfectly. Any new gadget ideas are welcome and thanks for the feedback . Check the main post for the link.
Code: Select all
IF GetAsyncKeyState_(#VK_LBUTTON+GetSystemMetrics_(#SM_SWAPBUTTON))
Code: Select all
If GetAsyncKeyState_(#VK_LBUTTON) = -32767
None are more hopelessly enslaved than those who falsely believe they are free. (Goethe)