Page 1 of 1

Skin: Onyx

Posted: 06 Apr 2019 22:52
by SammaySarkar
Onyx skinset for XYplorer
Onyx.preview.png (16.98 KiB) Viewed 5029 times
  • This replaces the stock icons with custom ones using the recently introduced patchimage feature.
  • First make sure the PatchImagesPath tweak is set in <xyini>, beneath the [Settings] section. For example,

    Code: Select all

    ; this means XY will look in <xydata>\Skin for image patches.
  • Download and extract the attached archives. They extract into subfolders under a parent folder Skinsets *.
  • Then just copy all or some images from any of the subfolders to that PatchImagesPath location.
  • If conflicting patch images already exist in PatchImagesPath, run the _unlock.xys script, then retry the copy.
  • Finally restart XYplorer.
Some subset variations are available, mix and match as you like.
* Onyx: the default set.
* Onyx.colors: some accented color icons.
* Onyx.alt: alternative designs for some icons.
* Onyx.extra: extras.
* Onyx.addenda: covers icons introduced after release of Onyx.

This skinset looks best in light mode, but works fine in dark mode too.
The primary aim was to create a complete/more-than-complete reference package. Design sense was secondary :whistle: .

Suggestions welcome! :beer:

images based on:
* Icons8:
* VS2017 image library: ... x?id=35825

Re: Skin: Onyx

Posted: 06 Apr 2019 23:07
by admin
Wow, I knew this was coming, but I did not expect such a cool name. :appl: :tup: :beer:

Re: Skin: Onyx

Posted: 07 Apr 2019 06:07
by SammaySarkar
:D thanks!

Re: Skin: Onyx

Posted: 07 Apr 2019 13:57
by klownboy
Very cool Sammay! I only tried Onyx skinset, but will load the others too.

A couple of things I thought of that might to nice for possible "future" updates:

- Automate the process of skinset selection and application. Have a menu selection of the folders under Skinsets where the user can select the Skin to apply.

- In the process of applying the skinsets, why not look at the user's Toolbar=... in XYini file and copy only the keys that the user is using as listed in the ini file. Possibly as an option to copying them all. This would minimize what key images are actually copied to the skin folder and possibly speed up the patch and startup process a bit. Some people would only want to copy those keys they are actually using currently on the toolbar. While others may prefer the whole set including the ones not on the toolbar and see them in the Customize Toolbar dialog.

Edit: Doing this would only take into account the toolbar icons for the XY built-in buttons currently used on the toolbar not any icons used for Customized Toolbar Buttons that use a built-in icon. You'd have to scan
[CustomButtons] to determine if a CTB is using a built-in icon which may be more work than desired.
Again, this is really great Sammay. Thanks. :tup: :beer: :cup: :appl:

Re: Skin: Onyx

Posted: 07 Apr 2019 20:11
by SammaySarkar
Thanks! all very good suggestions. A set of utility scripts for managing skinsets is going to be very useful, that's the the next step (that was/is not the focal point here obviously :kidding: )
I also agree that CTBs are out of the picture, they're too dynamic; I myself have a couple buttons that display conditional icons. I think a sole option for only patching the current toolbar can be sufficient, so the scripted choices will be either just the current buttons or the entire skinset. More fine-grained classifications can be maintained by skin subsets, like I did here with onyx.color etc.

There's also a question of figuring which skin or skins are applied currently, so that the script can work as a very user-friendly toggle for skins.

Re: Skin: Onyx

Posted: 07 Apr 2019 21:15
by klownboy
Great Sammay. Yeah, let's face it application is the big thing - applying, changing skins, and reverting back to the original built-in icons with relative ease.

I noticed that I could not change the keys in the skins folder that was currently in use (e.g., copying the colored Onyx over the existing in-use Onyx). I assume they are locked by XYplorer when in use. I had to revert back to my original built-in XY icons by starting XY again with the key, PatchImagesPath= blank to be able to copy the colored Onyx over the regular Onyx. So as part of the menu or skin selection, it would be nice to have the "default" XY built-ins as a choice where XY would be restarted with that key blank or probably better, the skins folder could be emptied would also work. Whatever is faster for a change over.

You may be able to use "Accessed" attribute to determine the last used (accessed) skinset or some how flag the copying or deleting of the icons in the skins folder. The last accessed skinset would be flagged or annotated on the menu of skinsets choices unless the skins folder is empty. In that case, the flagged skinset is the default XY built-ins.

Re: Skin: Onyx

Posted: 08 Apr 2019 06:13
by SammaySarkar
klownboy wrote:
07 Apr 2019 21:15
I noticed that I could not change the keys in the skins folder that was currently in use (e.g., copying the colored Onyx over the existing in-use Onyx).
You can also copy the _unlock.xys script (from into the Onyx.color folder and run it, which will unlock the keys matching Onyx.color. And then you can overwrite existing patches with the color icons without having to clear the tweak+restarting first.

Re: Skin: Onyx

Posted: 08 Apr 2019 18:23
by klownboy
SammaySarkar wrote:
08 Apr 2019 06:13
You can also copy the _unlock.xys script...
Thanks Sammay, I figured that's what the script did after the fact. So the script essentially uses patchimage $key, '', $size; with a blank file name to unlock the set of keys to be used. The script worked fine before loading Onyx.alt. Thanks.

Re: Skin: Onyx

Posted: 08 Apr 2019 21:46
by klownboy
Hi Sammay, I'm sure you know this already, but the code you have in "_unlock.xys" script works well in the actual Skin folder itself too. So to revert back to XY's original built-in skinset (or maybe I should call it XY's built-in icons), all you have to do is: run unlock script code in the Skin folder, delete the contents of the Skin folder, and restart XY. Of course you can accomplish the same thing by removing the folder entry for PatchImagesPath in the ini file and restart, but then you'd also have to add the skin folder entry back in to apply a new skinset.

Re: Skin: Onyx

Posted: 09 Apr 2019 08:25
by SammaySarkar
yes of course :) . glad that it's being useful.

Re: Skin: Onyx

Posted: 09 Apr 2019 17:22
by klownboy
Who knows maybe my elementary comments will help others applying or un-applying skinsets for the first time. Now all we need are some talented graphics people to come up with some additional skinsets. Where's kunkel321 when we need him? I say that because he's done quite a lot of XYplorer icon graphic work in the past.

Re: Skin: Onyx

Posted: 16 Jun 2019 07:59
by SammaySarkar archive added to first post. This covers new icons added to XYplorer after release of Onyx.
This archive will be updated in-place with further additions.