getmusicbee.com

General => MusicBee Wishlist => Topic started by: redwing on December 26, 2013, 04:02:48 AM

Title: Skin-adaptive toolbar button coloring option
Post by: redwing on December 26, 2013, 04:02:48 AM
Toolbar buttons are very useful, but the downside is that they could look ugly when their colors don't go along well with the skin color. To handle this, I created several color sets of the same icons I regularly use and change the icon set whenever I start using a different skin.

(http://i.imgur.com/t5myR4B.png)

But it would be great if this coloring option is natively supported.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Iasc on December 30, 2013, 02:47:59 AM
+1

or maybe just a way to link a specific set of tool bar buttons to a specific skin so that when you change skin musicbee will automatically use those buttons.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: psychoadept on December 31, 2013, 07:24:19 PM
Since it's impossible to predict what specific icons each users will need, what about the ability to specify a subfolder of the Icons folder in a skin file (maybe that matches the skin name, to keep from having to redo all XMLC skins).  Users could set it up so that their preferred icons have the same name in each folder, but the folder changes with the skin.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: SimonBRT on January 01, 2014, 11:16:50 AM
this is definitely an annoyance as it is currently.  this alone keeps me from changing skin with any regularity.

as scampbll says, perhaps just the option to choose icons other than those in the root icon folder would improve things.  at the moment i have a huge mess of icons in there that i have to sift through when changing skins.  keeping them neatly organised in subfolders would definitely help.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: redwing on January 01, 2014, 12:06:07 PM
Maybe I should be clearer about what I'm requesting.

I am using some of iasc's icon set. Their original colors look like this.

(http://i.imgur.com/aVbDtqD.png)

They look beautiful but sometimes too distracting to get along with the skin theme. Hence it would be wonderful if I could right-click the toolbar buttons and tick "skin-adaptive coloring" option and then the icon colors change like the screenshot at the bottom and I could forget about icon colors with whatever skin I'm using as long as the option is ticked.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Steven on January 01, 2014, 01:05:38 PM
its easy enough for that to be done and i will include it in the v2.3 changee but i wonder if it might be better as a skin setting (probably just used for dark skins) otherwise most people wont know about it
Title: Re: Skin-adaptive toolbar button coloring option
Post by: redwing on January 01, 2014, 01:58:29 PM
its easy enough for that to be done and i will include it in the v2.3 changee but i wonder if it might be better as a skin setting (probably just used for dark skins) otherwise most people wont know about it

Thanks! I'd prefer as a toolbar button setting included either in the buttons configuration pane or in the right-click menu. That would be much easier for people to adjust the setting than editing skins, not to mention those uneditable bitmap skins.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: endeavour1934 on January 01, 2014, 02:17:57 PM
Yes, that should be setting.

I've made these icons for my skin, and I wouldn't like them to be any other color.

(http://i4.minus.com/iJmwqe5Zc8pzL.png)

Title: Re: Skin-adaptive toolbar button coloring option
Post by: mrad on January 01, 2014, 03:00:27 PM
"too distracting"

Perhaps show icons as the wish-listed skin adaptive by default and then show icons in original colours when mouse hovers over that area. Would work like the star ratings do currently.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: KissCool on January 02, 2014, 01:46:50 PM
Well, skin-adaptive toolbar button coloring option is better than nothing but it's not the way to go imo.

This is better:
or maybe just a way to link a specific set of tool bar buttons to a specific skin so that when you change skin musicbee will automatically use those buttons.
This way, you can really choose the colour you want and the icon design.
A skinner should be able to force the choice of icons set and fonts: switching skins wouldn't result with inadequate icons and/or fonts.

Title: Re: Skin-adaptive toolbar button coloring option
Post by: redwing on January 02, 2014, 02:46:48 PM
Well, skin-adaptive toolbar button coloring option is better than nothing but it's not the way to go imo.

This is better:
or maybe just a way to link a specific set of tool bar buttons to a specific skin so that when you change skin musicbee will automatically use those buttons.
This way, you can really choose the colour you want and the icon design.
A skinner should be able to force the choice of icons set and fonts: switching skins wouldn't result with inadequate icons and/or fonts.

Good idea! Then give me icon sets that I can choose from for each skin.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: KissCool on January 02, 2014, 09:58:01 PM
Good idea! Then give me icon sets that I can choose from for each skin.

No need to be sarcastic.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: redwing on January 03, 2014, 05:16:55 PM
Good idea! Then give me icon sets that I can choose from for each skin.

No need to be sarcastic.

And? No comments on the substance? Still my suggestion should be dismisses in favor of yours, or what?
Don't take it personally. I was trying to show what you're missing.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: KissCool on January 03, 2014, 08:22:43 PM
Your suggestion:
 + Really effective with (color) variation of the same skin
 - We have to keep the same icon set for all skins
 - We can't choose exactly which color we want for our icons (which color your option gonna choose as the base color? What I mean is your option is great if you want the same color for every element on the tool bar)

iasc & scampbll suggestion (not mine, btw):
 + We are able to have different icon design sets, not only color. It doesn't mean that you have to create a different icon set for each skin. Just want a color variation of the same icon set? You can. That's why I don't understand your sarcasm and what I'm missing.
We could have something like this:
<element id="ToolbarIconsFolder">Flat Design</element>    Just select the same forlder for each skin if you want the same set
<element id="OverrideToolbarIconsColor" fg="255,255,255" />     This way, you don't have to edit icon one by one when you just want a color variation
 + We can choose exactly which color we want for our icons

I just read 2 suggestions in this topic and wrote which one I prefer. And your saying to me to "don't take it personnally"? What's about you?
I could have answered a sarcasm to your sarcasm. Then what? Do you think that if I'm sarcastic with you, you gonna understand better? No, you aren't. Same for me...

So, no, your suggestion don't have to be dismissed in favor of  iasc & scampbll one. BTW, both can be implemented: your's as a MusicBee setting, the other one as a skin setting.
Just my 2 cents.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: redwing on January 11, 2014, 03:27:20 AM
So, no, your suggestion don't have to be dismissed in favor of  iasc & scampbll one.

Don't know what changed your opinion, but I'm glad you now see some merits of my suggestion.

I have no objection to the skin setting suggested by others being implemented as an additional option. But still remain some things to consider:

- users have to edit skin files
- not possible to edit bitmap skins (xmlc)
- not many skinners would provide icon sets along with skins
- maybe fun for some, but lots of work to set up for each skin
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Bee-liever on January 13, 2014, 12:02:23 AM
I think skin-adaptive and specific icon sets are 2 good ideas that don't have to be mutually exclusive.

Adaptive would be a preference setting that overlaid the fore-ground colour from "Configure Layout" button onto the current icons, maybe with a transparency setting, as used in some display settings e.g. Track Details, also available.

Specific icon sets would need a lot more work. A standardised naming scheme would need to be implemented for all the toolbar buttons. I can then envisage them being implemented in the way a skin-specific bee icon can be currently set within the skins xml/xmlc
Code
<element id="DefaultIconName">Tron Bee</element>
If you don't have the Tron Bee.ico file in your Skins folder, MB automatically uses the default icon setting.
Maybe using:
Code
<element id="DefaultToolbarSet">DarkRED</element>
would search for a DarkRED sub-folder in Icons, if not found the defaults loaded in Preferences>Layout (1)>toolbar buttons: would be used
Title: Re: Skin-adaptive toolbar button coloring option
Post by: redwing on January 13, 2014, 02:54:29 AM
I am still reluctant to have users edit skin files themselves including those uneditable bitmap skins. Maybe both settings could be implemented as part of MB's toolbar button settings.

1. For the skin-adaptive coloring, ticking boxes for "Original" and "Skin adaptive" under "Button color" would suffice.

2. For the specific skin setting, a pairing box where users pick up a skin and its corresponding icon subfolder would do.

I'd assume most people use the same kind of toolbar buttons whatever skin they're using. Then users only need make sure that the filename of icons in the icon root folder and those in each icon subfolder are the same so that MB could automatically pick up icons for each button whenever skin changes. All other skins not specified in the pairing box would use icons in icon root folder.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Bee-liever on January 13, 2014, 05:11:38 AM
I don't see the specific icon sets as being purposely user editable. It would be something the skin author would decide to set up when making the skin.

If you use "Pop Pink" from the dark skins, it automatically uses the "RotemK" bee icon as it is something RotemK set up as the preferred option.

Specific toolbar icons would be the same. If you have a preferred icon set already set up as your default, then don't instal the icon set supplied with skin.  When MB can't find the icon set, it would use the default set you already have installed.

If you want your preferred icon set used all the time but also want it to be a bit more changeable with each skin, that's where your Adaptive option would come in.  Providing a colour-changing overlay dependent on the "MenuButton.Default" fore-ground.

You could, of course, also combine them. Getting a new set of icons (skin author specified) with a colour overlay (user specified)

Added:
I suppose I should say that I think "colour-adaptive" would be an option in Layout (1) with toolbar buttons:
Title: Re: Skin-adaptive toolbar button coloring option
Post by: redwing on January 13, 2014, 07:06:05 AM
I'm a little confused about what the skinner would set up. Do you mean some skins will come with not just an icon set from which users could choose for what to use but a specifically chosen button set? If that's just an icon set that's designed to go along well with the skin, then users only need to set up a pairing between the skin and the icon set (icon subfolder). Wouldn't this be simpler?
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Bee-liever on January 14, 2014, 12:11:13 AM
Do you mean some skins will come with not just an icon set from which users could choose for what to use but a specifically chosen button set?

Yes. A specifically created toolbar button/icon set.
Take your "Darknight" series for example.  You might create a full suite of bat-themed toolbar images that you preferred users to instal with your skin for a more complete look.  If all options were implemented as suggested, you could make one greyscale set of icons for the entire series and recommend that users turn on "Adaptive" option at 80%, so that they changed colour when using original, red or green versions.

If that's just an icon set that's designed to go along well with the skin, then users only need to set up a pairing between the skin and the icon set (icon subfolder). Wouldn't this be simpler?

I'm not sure if it would be simpler from a coding point of view or not.  My understanding from earlier posts was it was something Steven preferred to have as an option built into the skin.  I'm sure it would be easier to narrow the choice to either using a skin specific icons set or not.  More choices would mean more time and effort required for Steven to implement.

Using the "Darknight" example again, if you already had a set of toolbar images that you prefer to use (some of iasc's maybe) that you have already manually loaded via Preferences>Layout (1)>toolbar buttons, then you wouldn't instal the icon set supplied with the skin.  MB would then default to those manually loaded icons.

If it wasn't to hard to do, you could even have a radio button option in Preferences to "use skin specific icons" so you could change your mind even if you do have them loaded.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: redwing on January 14, 2014, 03:22:40 AM
I am glad it turned out that our ideas are not that different though we're still struggling to understand what each other meant. Now I got a better idea that could make things even simpler.
 
Take DarkRED skin as an example since its skinner(endeavour1934) already provided its own icon set.

If the user wants to use that supplied icon set, she needs to store the icon set under \MusicBee\Icons\DarkRED\ folder. Yes, the name of the sub-folder should be the same as the skin name. Then you don't have to make a pairing between a skin and its icon sub-folder. MB would, if implemented, first look for a icons sub-folder with the same name as the skin, and if it's not present, it will look into the default icons folder (\MusicBee\Icons\).

About the filenames of icons:
I'd assume most people use the same kind of toolbar buttons whatever skin they're using. Then in the default icons folder, a user might have 7 icons. Her MB settings file already knows what function each filename of icon corresponds to. So if she wants to use DarkRED icon set, she needs to rename each icon the same as the default icon set. Then each icon sub-folder would end up having the same filename of icons so that MB could automatically pick up icons for each button though their colors and designs are all different.

About the coloring of buttons:
Users can choose either "Original" or "Skin adaptive" colors with whatever icon set they're using.

Finally why I think my idea is better than yours:
- Users don't have to edit skin files including those uneditable bitmap skins.
- Users can use a specific icon set for their favorite skins even if there's no supplied icon set from the skinner.
- Simple and easy to manage icon sets and its coloring option.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Bee-liever on January 14, 2014, 09:06:10 PM
Take DarkRED skin as an example since its skinner(endeavour1934) already provided its own icon set.

If the user wants to use that supplied icon set, she needs to store the icon set under \MusicBee\Icons\DarkRED\ folder. Yes, the name of the sub-folder should be the same as the skin name. Then you don't have to make a pairing between a skin and its icon sub-folder. MB would, if implemented, first look for a icons sub-folder with the same name as the skin
Ahh. That's what I said back here
Maybe using:
Code
<element id="DefaultToolbarSet">DarkRED</element>
would search for a DarkRED sub-folder in Icons, if not found the defaults loaded in Preferences>Layout (1)>toolbar buttons: would be used

About the coloring of buttons:
Users can choose either "Original" or "Skin adaptive" colors with whatever icon set they're using.
and also said that here:
If all options were implemented as suggested, you could make one greyscale set of icons for the entire series and recommend that users turn on "Adaptive" option at 80%, so that they changed colour when using original, red or green versions.

About the filenames of icons:
I'd assume most people use the same kind of toolbar buttons whatever skin they're using
I think using the standardised action name from the hotkeys panel would be better, programmatically speaking, e.g. General_ Activate Auto-Shutdown

Finally why I think my idea is better than yours:
- Users don't have to edit skin files including those uneditable bitmap skins.  nor in mine
- Users can use a specific icon set for their favorite skins even if there's no supplied icon set from the skinner. ditto
- Simple and easy to manage icon sets and its coloring option.   same again

so I can conclude that my idea is equally as good as yours and we support them both equally  :P ;D
Title: Re: Skin-adaptive toolbar button coloring option
Post by: redwing on January 15, 2014, 12:18:16 AM
Ahh. That's what I said back here

Amazing. I thought I got a wonderful idea, but now it seems its original source was your post ;D

Anyway, the difference is you don't need to add the line in a skin file, if MB is implemented to look for a icons sub-folder with the same name first. All I'm arguing is to leave skin files untouched.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Steven on January 22, 2014, 08:09:24 PM
i am willing to do something very simple with this eg. right click/ "Set Icon Colours to Skin" or something along that line and MB gets the colour from the relevant skin panel header element
Let me know if thats useful
Title: Re: Skin-adaptive toolbar button coloring option
Post by: redwing on January 23, 2014, 02:46:46 AM
i am willing to do something very simple with this eg. right click/ "Set Icon Colours to Skin" or something along that line and MB gets the colour from the relevant skin panel header element
Let me know if thats useful

That'd be wonderful!

Also, consider making MB look for a icons sub-folder in the same name as selected skin first and use, if the folder is not present, icons in default icons folder. This would allow people to use various designs of icon sets supplied by skinners without any manual setup.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Steven on January 26, 2014, 04:55:22 PM
the command button layout dialog now has a "adjust icon coloring to match the selected skin" tickbox
when enabled the icon colours are set to the skin, using this sequence of priority

<element id="Panel.CommandIconOverride" fg="245,0,0" />  (new element)
otherwise:
Panel.HeaderButtonOverride.Default
otherwise:
Panel.HeaderControl.Default slightly blended using the background colour

not sure how well it really works though given it can only set one colour. Its in the next v2.3 update
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Steven on January 26, 2014, 07:40:15 PM
http://musicbee.niblseed.com/V2_3/MusicBee_Exe_Patched.zip
Title: Re: Skin-adaptive toolbar button coloring option
Post by: redwing on January 26, 2014, 07:55:33 PM
Working great! Thanks a lot!
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Bee-liever on January 28, 2014, 03:35:01 AM
I think a degree of transparency would better suit some icons, rather than being a total colour change, but other than that it looks very good.  Thank you, Steven.

[have added transparency support to Skinning Requests here (http://getmusicbee.com/forum/index.php?topic=7173.msg71953#msg71953)]

Title: Re: Skin-adaptive toolbar button coloring option
Post by: Steven on January 28, 2014, 06:53:06 AM
its already the case that any transparency (0..254) is preserved from the icon. Setting an alpha on the new colour would only change the overall colour but wouldnt make any difference otherwise
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Bee-liever on January 28, 2014, 10:34:15 AM
Setting an alpha on the new colour would only change the overall colour but wouldnt make any difference otherwise

so even with the alpha I wouldn't be able to achieve a semi-transparent look like this?
(http://i.cubeupload.com/BMuW2y.jpg)

bugger  :(
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Steven on January 28, 2014, 11:15:20 AM
thats different to what was done with redwing's request but is easy enough to do by making use of the alpha setting for the colour override
Title: Re: Skin-adaptive toolbar button coloring option
Post by: SimonBRT on January 28, 2014, 06:49:17 PM
this is a really great little addition btw.  small details like this really add up.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Steven on January 28, 2014, 07:38:07 PM
so even with the alpha I wouldn't be able to achieve a semi-transparent look like this?
thats done for the next v2.3 update
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Steven on January 28, 2014, 10:32:43 PM
http://musicbee.niblseed.com/V2_3/MusicBee_Exe_Patched.zip
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Bee-liever on January 29, 2014, 02:23:03 AM
Thanks Steven, but it's sorta, not quite, working the the right way
(http://i.cubeupload.com/p5oWzH.jpg)

Its applying the alpha from <element id="Panel.CommandIconOverride" fg="180,147,81,148" />to the entire icon area, not just the visible parts of the icon.

IMHO, for such a minor tweak, lets revert to the previous "no alpha" version, and not worry about it.

Thanks again for taking the time to have a go at it  :)
Title: Re: Skin-adaptive toolbar button coloring option
Post by: redwing on January 29, 2014, 04:33:06 AM
Even without alpha value, some skins display icon background in a different way from the majority. Also some bitmap skins have a problem with this setting. A few examples:

(http://i.imgur.com/z0C8UGr.png)
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Steven on January 29, 2014, 06:56:52 AM
you need to make sure the RGB components are the same colour as the panel header
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Bee-liever on January 29, 2014, 07:13:05 AM
Even without alpha value, some skins display icon background in a different way from the majority. Also some bitmap skins have a problem with this setting. A few examples:

don't know about the others, but the slightly darker area around the icon in Metro Touch is deliberate. It's set by bg2 in:
<element id="Panel.CommandButtonOverride" bg="Ground" bg2="Ground-3" fg="TextGround" />

you need to make sure the RGB components are the same colour as the panel header

Oh OK, will give that a go.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Steven on January 29, 2014, 08:14:20 PM
you need to make sure the RGB components are the same colour as the panel header
Oh OK, will give that a go.
i have made the algorithm more sophisticated and probably is now what you were expecting. You can tint using any colour now - as long as there is an alpha component it will use this approach and when there is no alpha component it uses the way redwing requested
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Steven on January 29, 2014, 08:30:25 PM
Even without alpha value, some skins display icon background in a different way from the majority. Also some bitmap skins have a problem with this setting. A few examples:
these are the result of some unfortunate fg choices for the header control element where the colours are similar/same as that panel background.
The skin developer can easily correct that or use the new element if they want
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Steven on January 29, 2014, 09:21:47 PM
this has the amended colouring algorithm:
http://musicbee.niblseed.com/V2_3/MusicBee_Exe_Patched.zip
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Bee-liever on January 29, 2014, 10:05:24 PM
this has the amended colouring algorithm

WOW! Thank you very much. Working perfectly  :)

Now, I just need to create some time to modify my skins  ;)
Title: Re: Skin-adaptive toolbar button coloring option
Post by: redwing on January 30, 2014, 03:45:22 AM
Even without alpha value, some skins display icon background in a different way from the majority. Also some bitmap skins have a problem with this setting. A few examples:
these are the result of some unfortunate fg choices for the header control element where the colours are similar/same as that panel background.
The skin developer can easily correct that or use the new element if they want

Not a big deal. Users can always disable the setting.
Title: Re: Skin-adaptive toolbar button coloring option
Post by: Bee-liever on February 20, 2014, 12:14:58 AM
this has the amended colouring algorithm:

Just another big thank you for implementing this.  :)
Really like the way it gives an "antique" look to my coloured icons when using Bee78
Bellissimo!!