Closed Shadeclan closed 9 years ago
Hi,
I made some searchs for the way to display the menu using the same right UX than the system. I will see if I introduce some options to let the user customize the display ; I also have to perform some tests in order to check that the new way to display the menu will right be compatible with the icon loader.
But if I introduce options for skining ; it will be on the "portal" main node but I don't think it will be per group. It could be difficult to manage different skins depending the group.. With inherit etc. But it will also use more memory (and I'm trying to use as less memory as possible).
Regards, J
Sounds like a plan, J.
Here's an idea which would allow others to provide skins, yet keep PortAL's memory footprint small - keep the skin images in a "Skins" folder, with each skin set contained in its own sub-folder. That way, a person could choose what skins they wanted and then discard the rest. The user would be able to choose the size of their installation, depending on which skin and how many skins they kept installed on their computer.
You would, of course, define the file, resolution and size formats of the skin images, which would assist others with skin development.
Another idea to help keep the size of PortAL small would be to put the skins and their folders in a compressed file, similar to Java's JAR files.
What do you think?
Hi Woody,
I'm not fan of skins using images. I prefer to propose various settings for the colors, alpha, positions, size, borders, gradient, rounding... More like CSS3 than Winamp 2.x :) My current work is targeting hard coded skins rules with the possibility to create a skin by XML. So when the user is using an hard coded rule, there is just a pointer to a configuration in the program. Only when the user have a specific skin, it will create the configuration in the memory. So the current skin will become an hard coded skin as the old skin.
Thanks to that, it could allow PortAL to run with a little memory usage if the user does not want to have a custom skin. But I have also to see to use the non "Owner Draw" method to display menus with icons ; so it could also have a "native skin".
Regards, J
That's cool, J. These are just suggestions, anyway. As you know, personally, I'm happy with the current skin. This programming would be for those whose taste in skins is ... different. ;-)
As always, do what you think is best for the program.
Woody
Hi,
So, I got the new skin system working. But when I use the "system skin" (using GDI+ to load images for the items). The interesting point is that the menus are displayed by the system itself, but some features are not available anymore, like the "menu break", the text on the separators or the display of the shortcuts.
I'm still finishing the options for the "ownerdraw skins" and I will see to provide a configuration which will be similar to windows 7/8 menus. But for sure, this kind of skin could be customized with various settings ; the current skin will be also available.
Regards, J
The interesting point is that the menus are displayed by the system itself, but some features are not available anymore, like the "menu break", the text on the separators or the display of the shortcuts.
Oooh - I'm not sure I like that, J. Like I said earlier, I like the way you've got things set up now. I use the menu breaks a lot; I have grown to like the separator text and the shortcut display is awesome.
I hope you will preserve these niceties in the original skin. If not, I don't think I'll be upgrading. Perhaps you can offer a non-skinned version?
Hi,
For sure, I will preserve the features. In the various skins I'll propose in PortAL, one will be the "system skin" and will have less features than the "owner draw skins".
Regards,
Excellent! Works for me, J! Thanks!
Hi,
A little message just to notice that I committed the beginning of the skin system. There is still some unfinished elements like the background of non selected items ; I need to perform more tests. But I god a "GDI" (native display) working and two different skins.
I will also improve the configuration system to be able to create custom skins (or select into a different list of pre-established skins).
Regards, J
Excellent, J! Glad you're making progress - I'll enjoy seeing the results once you've released it. Of course, I'll just play around with it a little bit before going back to the first "perfect" skin! :-)
Hi,
I just made a commit in order to update the skin system. For my tests, I made two new skins ; it will show you the current possibilities.
"Classical skin" : It uses a grandiant selection background and round borders.
"Flash skin" It uses a single color for the selection background and it remove the border between the icon and the text (and it is also possible to change the width of the separator)
"Dark skin" It changes the default background, use a single color for the selection background but use a grandiant background for the icon zone.
And, for sure, the colors and not definitive. It was just for my tests and once I'll finish the configuration loader, all skin setting could be read in the XML file. (But I'll see to propose some pre-configured one)
J, Looks marvelous! I'll do a little testing for you, then? I should have some time this week to play with it.
I noticed that you closed some other items - good to see you programming again!
Hi,
Yes, feel free to test and give your feedback. Now PortAL 1.5.0 is released (with other features coming from the other issues I closed) so now I'll focus on new issues for the next release (1.5.1). If you have ideas of improvements ; please open a new issue. That one was for the creation of the skin system.
I took my time in order to finish correctly that feature and publish the new release, I've got busy with some conventions or some other stuff (which make me live) ; But I can't stop programming, I do it almost every day in my life :)
J, I was reading in the other issue (PortAL v1.4.7 not starting on Windows-XP 32-bit) and noticed that the user was not happy with the way PortAL looks. While I completely disagree with him on that issue, it might be a nice enhancement to provide the ability to "skin" PortAL - that way, users can have whatever look they want. You can start with the two "looks" that you mentioned (WinXP and Firefox) in the other issue and open it up to whoever wants to provide a little artwork. You can add a new parameter to the "group" tag to support it.
You said you wanted ideas - just throwing one out there.
Thanks again for a great little app!
Woody