Yincognito wrote: ↑February 10th, 2024, 6:19 pm
This would normally belong in its own thread, but anyway...
I know, but I won't tell anyone, don't worry.
Yincognito wrote: ↑February 10th, 2024, 7:04 pm
I added scaling and used !SetAnchor, compared to the earlier version:
Code: Select all
MouseScrollUpAction=[!SetVariable GaugeScale (Clamp([#GaugeScale]+#GaugeSteps#,#GaugeSteps#*1,#GaugeSteps#*40))][!UpdateMeter *][!Redraw][!SetAnchor "50%" "(300/2*[#GaugeScale])"]
MouseScrollDownAction=[!SetVariable GaugeScale (Clamp([#GaugeScale]-#GaugeSteps#,#GaugeSteps#*1,#GaugeSteps#*40))][!UpdateMeter *][!Redraw][!SetAnchor "50%" "(300/2*[#GaugeScale])"]
I think such an approach does what you want. It moves a bit after scaling and dragging it to a different location, but I guess that's just some minor rounding effect or something.
EDIT: Replaced the standard syntax for variables with the nested one just to be sure, and it looks like it's no rounding effect and isn't dependent on scaling. It seems more of an effect of Rainmeter updating or setting the skin position stuff (on / from the disk?), something that seems to be at times not synchronized with releasing the mouse button to end the dragging.
Yup, that works,thank you. It doesn't move as you said after moving it but it kind of jumps while scrolling, which your example doesn't do for some reason.
ezgif.com-video-to-gif-converter (6).gif
Pretty much the same:
Code: Select all
MouseScrollDownAction=[!SetOptionGroup Resize DynamicVariables 0][!WriteKeyValue Variables Scaler "(Clamp(([#Scaler]-[#MouseIncrement]),[#MinSize],[#MaxSize]))" "[#vSettingsPath]"][!SetVariable Scaler (Clamp(([#Scaler]-[#MouseIncrement]),[#MinSize],[#MaxSize]))][!UpdateMeter *][!Redraw][!SetAnchor "50%" "([#StatesHeight]/2*[#Scaler])"]
MouseScrollUpAction=[!SetOptionGroup Resize DynamicVariables 0][!WriteKeyValue Variables Scaler "(Clamp(([#Scaler]+[#MouseIncrement]),[#MinSize],[#MaxSize]))" "[#vSettingsPath]"][!SetVariable Scaler (Clamp(([#Scaler]+[#MouseIncrement]),[#MinSize],[#MaxSize]))][!UpdateMeter *][!Redraw][!SetAnchor "50%" "([#StatesHeight]/2*[#Scaler])"]
At first I thought it was because mine was using measures to compute the formula but after removing those measures and putting the formula directly on the bang (like the code above) it does exactly the same thing. The outcome is a little different if I move the SetAnchor bang but putting it last does the best job. Also moving the WriteKey bang after the SetVar bang makes it move after a refresh, so it has to be first to avoid that. Anyway I'm happy with the result. Thanks again Yin.
I'm pretty close to a release state now, I just need to find a solution for some problem with changing the list's height and the ActionTimer animation and a way to disable unused sensor measures (I had a way but I found a little (big tbh) caveat so I need to find another solution).
By the way, to answer your question:
Yincognito wrote: ↑February 10th, 2024, 6:19 pm
P.S. Didn't know if you were using a container to move the whole contents up and down via the Y of the list, so I wrote the above to change the list's height instead. It turns out it's roughly similar to what you were doing.
I'm using a container yes, the ActionTimer changes its height instead of moving the meters' Y position. And to change the Height of the list I use a MouseDrag action.
You do not have the required permissions to view the files attached to this post.