It is currently March 28th, 2024, 8:09 pm

Create a "hotspot" to hide/show your skins

Tips and Tricks from the Rainmeter Community
User avatar
jsmorley
Developer
Posts: 22628
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Create a "hotspot" to hide/show your skins

Post by jsmorley »

Sometimes you may want a quick way to hide all Rainmeter skins while taking a screenshot or working on something where the skins are visibly or physically in the way. You can create a skin to use as a "hotspot" on the screen that will turn your skins on and off by just moving your mouse to it.

This does not "unload" the skins, and they keep working in the background, but are just "hidden".

The skin:

[Rainmeter]
Update=-1

[MeterHotspot]
Meter=Image
W=5
H=5
SolidColor=0,0,0,1
MouseOverAction=!ToggleGroup MySkins

Then in Rainmeter.ini, (Edit settings from the context menu) in each [ConfigName] section, just add the line:

Group=MySkins

If there is already a Group= line there, like Group=Enigma, just add your group name with Group=Enigma | MySkins

Don't add this group name to the hotspot skin itself....

Stick this invisible hotspot in the corner of your monitor or wherever you like it, and when you move your mouse over it, all Rainmeter skins will be hidden. When you want to restore them, just move the mouse back up there again.
User avatar
lysy1993lbn
Posts: 291
Joined: July 25th, 2011, 9:53 am
Location: Lublin, Poland

Re: Create a "hotspot" to hide/show your skins

Post by lysy1993lbn »

It's possible to make this action set to middle mouse click on Rainmeter tray icon?
Would be useful :)
"Never argue with an idiot, he will drag you down to his level and beat you with experience."
my deviantART | Alternative Rainmeter tray icons
User avatar
Kaelri
Developer
Posts: 1721
Joined: July 25th, 2009, 4:47 am

Re: Create a "hotspot" to hide/show your skins

Post by Kaelri »

In Rainmeter.ini:

Code: Select all

[Rainmeter]
TrayExecuteM=!ToggleGroup MySkins
User avatar
lysy1993lbn
Posts: 291
Joined: July 25th, 2011, 9:53 am
Location: Lublin, Poland

Re: Create a "hotspot" to hide/show your skins

Post by lysy1993lbn »

Thanks :)
"Never argue with an idiot, he will drag you down to his level and beat you with experience."
my deviantART | Alternative Rainmeter tray icons
burnwell88
Posts: 90
Joined: August 13th, 2009, 8:37 am

Re: Create a "hotspot" to hide/show your skins

Post by burnwell88 »

thx :)
kschzhd
Posts: 2
Joined: July 17th, 2012, 5:13 pm

Re: Create a "hotspot" to hide/show your skins

Post by kschzhd »

I've tried adding this both ways listed, and neither seems to work. Any way you can dumb it down a little more for a beginner?
Thanks in advance.
kschzhd
Posts: 2
Joined: July 17th, 2012, 5:13 pm

Re: Create a "hotspot" to hide/show your skins

Post by kschzhd »

Nevermind. Got it. Wasn't getting the "create skin" part but found http://rainmeter.net/cms/Rainmeter101-SkinTutorials so I'm good. Thanks!
User avatar
bogijs
Posts: 5
Joined: April 20th, 2013, 7:19 am
Location: Latvia, Riga

Re: Create a "hotspot" to hide/show your skins

Post by bogijs »

Is it possible to make skin appear when i start one specific program?
It could calculate if program is running or not by processname="*.exe", but how to make the part where skin shows / hides?
Perfi
Posts: 1
Joined: April 21st, 2013, 7:56 am

Re: Create a "hotspot" to hide/show your skins

Post by Perfi »

bogijs wrote:Is it possible to make skin appear when i start one specific program?
It could calculate if program is running or not by processname="*.exe", but how to make the part where skin shows / hides?
What a coincidence, I was just working on something like that yesterday :D
Check this out:

Code: Select all

[SkypeMeasure]
Measure=Plugin
Plugin=Process
ProcessName=Skype.exe
;checks if Skype is running. Returns 1 if it is, -1 if not.

[SkypeMeasureCalc]
Measure=Calc
Formula=abs([SkypeMeasure]-1)/2
;|SkypeMeasure-1|/2. If Skype is running, SkypeMeasure is 1, so the function returns (1-1)/2 = 0. If Skype is not running, the function returns -(-1-1)/2 = 2/2 = 1. This comes in handy in a second.
DynamicVariables=1

[SkypeMeter]
Meter=Image
ImageName=Images\Skype.png
;the image is just the regular icon
X=50
Y=550
W=50
H=50
GreyScale=[SkypeMeasureCalc]
;So if Skype is not running, the argument passed to GrayScale is 1. 0 otherwise.
DynamicVariables=1
Antialias=1

[SkypeMetterButton]
;This is a transparent overlay on top of the Skype icon that functions as a button.
Meter=Image
X=r
Y=r
W=50
H=50
SolidColor=0,0,0,1
LeftMouseDownAction=["C:\Program Files (x86)\Skype\Phone\Skype.exe"]
Hidden=(1-[SkypeMeasureCalc])
;If skype is on, SkypeMeasureCalc is 0, so we get 1-0=1, so the button is hidden. If skype is off, SkypeMeasureCalc is 1, so we get 1-1=0. The button doesn't get hidden, meaning we can click on it and turn skype on.
DynamicVariables=1
The code above is intended for use on meters, however I suppose you could easily adapt it for a whole skin - for example, by not putting anything else in the skin besides the things that get hidden.
User avatar
bogijs
Posts: 5
Joined: April 20th, 2013, 7:19 am
Location: Latvia, Riga

Re: Create a "hotspot" to hide/show your skins

Post by bogijs »

Perfi wrote: What a coincidence, I was just working on something like that yesterday :D
Check this out:

Code: Select all

[SkypeMeasure]
Measure=Plugin
Plugin=Process
ProcessName=Skype.exe
;checks if Skype is running. Returns 1 if it is, -1 if not.

[SkypeMeasureCalc]
Measure=Calc
Formula=abs([SkypeMeasure]-1)/2
;|SkypeMeasure-1|/2. If Skype is running, SkypeMeasure is 1, so the function returns (1-1)/2 = 0. If Skype is not running, the function returns -(-1-1)/2 = 2/2 = 1. This comes in handy in a second.
DynamicVariables=1

[SkypeMeter]
Meter=Image
ImageName=Images\Skype.png
;the image is just the regular icon
X=50
Y=550
W=50
H=50
GreyScale=[SkypeMeasureCalc]
;So if Skype is not running, the argument passed to GrayScale is 1. 0 otherwise.
DynamicVariables=1
Antialias=1

[SkypeMetterButton]
;This is a transparent overlay on top of the Skype icon that functions as a button.
Meter=Image
X=r
Y=r
W=50
H=50
SolidColor=0,0,0,1
LeftMouseDownAction=["C:\Program Files (x86)\Skype\Phone\Skype.exe"]
Hidden=(1-[SkypeMeasureCalc])
;If skype is on, SkypeMeasureCalc is 0, so we get 1-0=1, so the button is hidden. If skype is off, SkypeMeasureCalc is 1, so we get 1-1=0. The button doesn't get hidden, meaning we can click on it and turn skype on.
DynamicVariables=1
The code above is intended for use on meters, however I suppose you could easily adapt it for a whole skin - for example, by not putting anything else in the skin besides the things that get hidden.

Here is solution, kind of.. : http://rainmeter.net/forum/viewtopic.php?f=5&t=15373