Well like I said before, the skins don't work with hardware acceleration enabled anymore. Not sure what caused that. But as of today, I finally managed to get it to work with hardware acceleration enabled. (at least for myself) So see if this one works for you:
It is currently September 1st, 2024, 1:44 am
Mouse plugin from NighthawkSLO
-
- Posts: 11
- Joined: December 2nd, 2020, 3:51 pm
Re: Mouse plugin from NighthawkSLO
You do not have the required permissions to view the files attached to this post.
-
- Rainmeter Sage
- Posts: 16485
- Joined: October 11th, 2010, 6:27 pm
- Location: Gheorgheni, Romania
Re: Mouse plugin from NighthawkSLO
Yep, it does. Good work, congrats.cthunsthrall wrote: ↑January 2nd, 2021, 7:53 am So see if this one works for you:
Volume&Backlight_502.rmskin
-
- Posts: 24
- Joined: August 20th, 2020, 8:49 pm
Re: Mouse plugin from NighthawkSLO
I'm trying to use this plugin to make a slider where the minimum value is 0.5, maximum is 3.0 and default value is 1.0, but I can't figure out how to make the minimum value >0. Can anyone advise?
Thanks in advance!
Thanks in advance!
-
- Rainmeter Sage
- Posts: 16485
- Joined: October 11th, 2010, 6:27 pm
- Location: Gheorgheni, Romania
Re: Mouse plugin from NighthawkSLO
No, I suppose no one can, because it's not very clear what you want to do. What you mean by "slider" and how the plugin can help? Do you have a code? If you do, please post it.bravo-lemur wrote: ↑July 4th, 2021, 6:10 pm I'm trying to use this plugin to make a slider where the minimum value is 0.5, maximum is 3.0 and default value is 1.0, but I can't figure out how to make the minimum value >0. Can anyone advise?
-
- Posts: 24
- Joined: August 20th, 2020, 8:49 pm
Re: Mouse plugin from NighthawkSLO
I mean a slider as in a line with a draggable element that goes back and forth to set a value along the line, like the volume slider demonstrated in the first post of this thread.
What I want to do is make a slider to allow a user to adjust the size of a skin, based on a default size of 1.0, and I don't want the scale to go lower than 0.5 or higher than 3.0 (i.e. I don't want to the skin to go smaller than 0.5x original size or greater than 3.0x original size). In all the examples I've seen, the sliders controlled by Mouse Plugin always go down to 0 as a minimum value, and I'm not sure how to set the minimum value to be 0.5 instead of 0.
My question is: is it possible to set a minimum value of >0 on a slider using Mouse Plugin?
-
- Rainmeter Sage
- Posts: 16485
- Joined: October 11th, 2010, 6:27 pm
- Location: Gheorgheni, Romania
Re: Mouse plugin from NighthawkSLO
It definitely is, but do you have a code you're working with? I suppose you have, so please post it.bravo-lemur wrote: ↑July 4th, 2021, 7:10 pm My question is: is it possible to set a minimum value of >0 on a slider using Mouse Plugin?
-
- Posts: 24
- Joined: August 20th, 2020, 8:49 pm
Re: Mouse plugin from NighthawkSLO
I'm currently using the following code that I "borrowed" from another skin:
In the original skin where I found this code, the slider goes from 0 to 3.00 (in #@#Vars.inc, Size=3.00).
Code: Select all
[Variables]
SliderM=140
SizeSliderVar=(#Size#/3*#SliderW#+#SliderM#)
SliderW=200
SliderH=5
[SizeText]
Meter=String
Y=500
X=35
MeterStyle=RegularText
Text=Size
[SizeSlider]
Meter=Shape
X=#SliderM#
Y=r
Shape=Rectangle 0,-1,#SliderW#,#SliderH#,(1),(1) | Fill Color 255,255,255,50 | StrokeWidth 0
Shape2=Rectangle 0,-1,(#SizeSliderVar#-#SliderM#),#SliderH#,(2*1),(2*1) | Fill Color 255,255,255,50 | StrokeWidth 0
Shape3=Rectangle 0,(-#SliderH#*3),#SliderW#,(#SliderH#*6) | Fill Color 0,0,0,1 | StrokeWidth 0
LeftMouseDownAction=[!CommandMeasure SizeMouse "Start"]
DynamicVariables=1
UpdateDivider=-1
Group=SizeSliderGroup
[SizeSliderText]
Meter=String
X=(30+#SliderW#)r
Y=r
Text=#Size#
FontSize=10
StringAlign=CenterCenter
UpdateDivider=-1
DynamicVariables=1
MeterStyle=RegularText
Group=SizeSliderGroup
MouseActionCursor=1
LeftMouseUpAction=[!WriteKeyValue Variables Size 1.00 "#@#Vars.inc"][!Refresh]
[SizeSliderPercent]
Measure=Calc
Formula=((#SizeSliderVar#-(#SliderM#))*3/(((#SliderM#)+#SliderW#)-(#SliderM#)))
OnUpdateAction=[!SetVariable "Size" "[#CURRENTSECTION#:2]"]
DynamicVariables=1
Disabled=1
Group=NoUpdateOnLoad
UpdateDivider=-1
[SizeMouse]
Measure=Plugin
Plugin=Mouse
LeftMouseDragAction=[!SetVariable SizeSliderVar "(Clamp(($MouseX$),(#SliderM#),((#SliderM#)+#SliderW#)))"][!UpdateMeasure SizeSliderPercent][!UpdateMeasure #CURRENTSECTION#][!UpdateMeterGroup SizeSliderGroup][!Redraw]
LeftMouseUpAction=[!CommandMeasure SizeMouse "Stop"][!WriteKeyValue Variables Size #Size# "#@#Vars.inc"]
RelativeToSkin=1
RequireDragging=1
DynamicVariables=1
-
- Rainmeter Sage
- Posts: 16485
- Joined: October 11th, 2010, 6:27 pm
- Location: Gheorgheni, Romania
Re: Mouse plugin from NighthawkSLO
This is perfectly alright, there is nothing wrong with this procedure.bravo-lemur wrote: ↑July 4th, 2021, 7:31 pm I'm currently using the following code that I "borrowed" from another skin:
However there are a few things you should fix / correct on this code:
- Neither the Size variable isn't included into the [Variables] section, nor a @Include=#@#Vars.inc (the file where the Size variable resides, I guess) option isn't added. The skin doesn't know the Size variable and accordingly can't use it (the variables don't have a "default" value). So add the @Include=#@#Vars.inc option to the BEGINNIG (it is extremely important to place it before the first variable, or in fact before the SizeSliderVar variable - it is much simpler to place it at the beginning of the section) of the [Variables] section (AGAIN, if my above guess related to the place where the Size variable is declared is correct - if it's not add the appropriate file).
- Since the SizeSliderVar variable is using both, the SliderM and the SliderW variable, is important to have these variables before SizeSliderVar. So move the SliderW variable before SizeSliderVar.
- Don't disable the [SizeSliderPercent] measure. If you disable it there is nothing which could re-enable it, so accordingly it doesn't work. So remove its Disabled=1 option (or modify it to Disabled=0).
- Even if practically this is not a mistake, I recomment to get rid of so many parenthesis as possible. For instance in the first !SetVariable bang of the LeftMouseDragAction option of the [SizeMouse] measure remove the following red marked parentheses: [!SetVariable SizeSliderVar "(Clamp(($MouseX$),(#SliderM#),((#SliderM#)+#SliderW#)))"], getting this: [!SetVariable SizeSliderVar "(Clamp($MouseX$,#SliderM#,(#SliderM#+#SliderW#)))"]. When there is one single variable, without calculations, there is not needed to include it into parentheses. If a calculation is done yes, but the simple variable doesn't require them.
- Finally to get what you want (so to restrict the value of the Size variable between 0.5 and 3) modify the Formula option of the [SizeSliderPercent] measure to Formula=(0.5+(#SizeSliderVar#-#SliderM#)*2.5/#SliderW#). Note here that I reduced the 3 constant in the middle of the formula to 2.5 and added a 0.5 to the calculated value.
Code: Select all
[Variables]
@Include=#@#Vars.inc
SliderM=140
SliderW=200
SizeSliderVar=(#Size#/3*#SliderW#+#SliderM#)
SliderH=5
[SizeText]
Meter=String
Y=500
X=35
MeterStyle=RegularText
FontColor=220,220,220
Text=Size
[SizeSlider]
Meter=Shape
X=#SliderM#
Y=r
Shape=Rectangle 0,-1,#SliderW#,#SliderH#,(1),(1) | Fill Color 255,255,255,50 | StrokeWidth 0
Shape2=Rectangle 0,-1,(#SizeSliderVar#-#SliderM#),#SliderH#,(2*1),(2*1) | Fill Color 255,255,255,50 | StrokeWidth 0
Shape3=Rectangle 0,(-#SliderH#*3),#SliderW#,(#SliderH#*6) | Fill Color 0,0,0,1 | StrokeWidth 0
LeftMouseDownAction=[!CommandMeasure SizeMouse "Start"]
DynamicVariables=1
UpdateDivider=-1
Group=SizeSliderGroup
[SizeSliderText]
Meter=String
X=(30+#SliderW#)r
Y=r
Text=#Size#
FontSize=10
StringAlign=CenterCenter
UpdateDivider=-1
DynamicVariables=1
MeterStyle=RegularText
FontColor=220,220,220
Group=SizeSliderGroup
MouseActionCursor=1
LeftMouseUpAction=[!WriteKeyValue Variables Size 1.00 "#@#Vars.inc"][!Refresh]
[SizeSliderPercent]
Measure=Calc
Formula=(0.5+(#SizeSliderVar#-#SliderM#)*2.5/#SliderW#)
OnUpdateAction=[!SetVariable "Size" "[#CURRENTSECTION#:2]"]
DynamicVariables=1
Disabled=0
Group=NoUpdateOnLoad
UpdateDivider=-1
[SizeMouse]
Measure=Plugin
Plugin=Mouse
LeftMouseDragAction=[!SetVariable SizeSliderVar "(Clamp($MouseX$,#SliderM#,(#SliderM#+#SliderW#)))"][!UpdateMeasure SizeSliderPercent][!UpdateMeasure #CURRENTSECTION#][!UpdateMeterGroup SizeSliderGroup][!Redraw]
LeftMouseUpAction=[!CommandMeasure SizeMouse "Stop"][!WriteKeyValue Variables Size #Size# "#@#Vars.inc"]
RelativeToSkin=1
RequireDragging=1
DynamicVariables=1
-
- Posts: 24
- Joined: August 20th, 2020, 8:49 pm
Re: Mouse plugin from NighthawkSLO
That's great, the slider is going from 0.5 to 3 now - thank you very much!
-
- Rainmeter Sage
- Posts: 16485
- Joined: October 11th, 2010, 6:27 pm
- Location: Gheorgheni, Romania
Re: Mouse plugin from NighthawkSLO
Glad to help.bravo-lemur wrote: ↑July 4th, 2021, 9:33 pm That's great, the slider is going from 0.5 to 3 now - thank you very much!
One more thing: to can extremely easily set the limits (if anytime later you'll have to change them) add the following two variables into the [Variables] section (beside the existing variables):
Code: Select all
[Variables]
...
LowLimit=0.5
HighLimit=3
Whenever you want to change the limits, you have to only replace the values of the two variables. The only thing you have to keep in mind is to have the LowLimit variable lower then HighLimit. In fact this isn't true either. If HighLimit is lower than LowLimit, the slider works "in the oposite direction": On its left side will be the variable set to its higher limit, wile on right to its lower limit (so will incres when you drag it to left and decrease when you drag it to right).