Hey Balala
Thank you for your reply.
balala wrote: ↑January 3rd, 2023, 5:07 pm
Ok, after taking a look, I updated your package, to get rid of the error messages. Just note that there were many such messages, for instance when you scrolled the mouse wheel. I finally think have succeeded in remove all these messages.
Yeah, those were because the list was not active when scrolling.
balala wrote: ↑January 3rd, 2023, 5:07 pm
Since I made a lot of changes, I repack the config and upload this package. Just a few thing to be taken into account:
- First and most important: in order to can remove those messages, I had to add a plugin, the ConfigActive. This plugin (and the appropriate measure, in this case [MeasureFullSensorList]), checks if the RTMSkinV0.3\GPU-FullSensorList\FullSensorList.ini skin is activated or not and acts accordingly. NOTE THAT IF YOU INSTALL THE ATTACHED PACKAGE, THE INSTALLER INSTALLS THE PLUGIN AS WELL TO YOUR COMPUTER (assuming it is not installed).
I already had it installed for some reason lol. The list wasn't activating when double clicking, this was because you named the folder RTMSkin instead of RTMSkinV0.3, but nothing to worry about, already fixed it by changing the path name to RTMSkin in the code.
However, it does act weird. Now it correctly saves the size of the full list, but not the position. Check the gift:
ezgif.com-gif-maker.gif
To make sure, I uninstalled the previous versions that I had and installed it again, but same result.
Note. This only happens if you move the gauge while the list is active, otherwise the behavior is correct.
I tried adding a
[!refresh] action at the end of the
[PositionFollower] measure:
Code: Select all
[PositionFollower]
Measure=Calc
Formula=(#CURRENTCONFIGX# + #CURRENTCONFIGY#)
OnChangeAction=[!SetWindowPosition "(#CURRENTCONFIGX#+#CURRENTCONFIGWIDTH#/2)""(#CURRENTCONFIGY#+#CURRENTCONFIGHEIGHT#)" "#ListPosX#%" "#ListPosY#%" "RTMSkin\GPU-FullSensorList"] [!Refresh]
DynamicVariables=1
Disabled=1
It works but not as expected, check the gift:
ezgif.com-gif-maker (1).gif
It produces that weird flickering while moving it around, any suggestion?
One workaround I'm thinking of is to make it refresh only when you release the left mouse click when you stop dragging it. I'll do some testing.
Edit.
It didn't work, I deleted the [!Refresh] action.
Another problem: When you click the blue circle in the list to close the list, and then you try to open it again by double clicking the gauge, nothing happens, you gotta double click again to open the list. Here's what the log says:
Error: !SetWindowPosition: Skin "RTMSkin\GPU-FullSensorList" not found (RTMSkin\GPU-Gauge\GPU.ini).
and then
Warning: !DeactivateConfig: "RTMSkin\GPU-FullSensorList" not active.
Edit.
I managed to fix both wrong behaviors by deleting the line
[!SetVariable ConfigActive "(1-#ConfigActive#)"]#Action# and replacing it with a simple
[!ToggleConfig "RTMSkin\GPU-FullSensorList" "FullSensorListV2.ini"]
In the new package below, you'll find a V2 variant, that's the one that have this change to compare.
balala wrote: ↑January 3rd, 2023, 5:07 pm
[*]I created a
@Resources\Variables.inc file, which stores the Scaler variable. I had to do this, because this variable is used in common by both skins (
RTMSkinV0.3\GPU-Gauge\GPU.ini and
RTMSkinV0.3\GPU-FullSensorList\FullSensorList.ini). In such cases it is much better not to duplicate the variable, but store it once, into a file included in both skins (with @Include options). Did this.
[*]Since the Scaler variable is stored in the above file, the !WriteKeyValue bangs had to be rewritten, because:
- They have to write the variable into the new file.
- There is no reason to write the variable twice since it is used in common, so replaced the two !WriteKeyValue bangs with one single.
[*]Added two new variables into the [Variables] section of the
RTMSkinV0.3\GPU-Gauge\GPU.ini file (Config and ConfigActive).
[*]Some other changes.[/list]
Please install, try the attached package and let me know what you think about it. I set the version of the skin included into the uploaded package to 0.4. When realizing the final version, you obviously will have to set the proper version number.
Ok, this makes me wonder, will I be able to duplicate the gauge? I mean, my goal is that once this skin is finished, I'll duplicate it to make another gauge for the CPU, another for the MOBO, another for the RAM and so on, so... my main question is that if we share the scaler variable, they would all scale at the same time right? I mean, it's not a big of a problem I guess, I can make a different scaler variable for every gauge and list.
Edit.
Another question, I see variables that don't exist in the [variables] section nor in the variables config such as #Action# and #Myconfig# in the ConfigActive measure
Code: Select all
[MeasureConfigActive]
Measure=Calc
Formula=#ConfigActive#
IfCondition=(#CURRENTSECTION#>=1)
IfTrueAction=[!ActivateConfig "RTMSkin\GPU-FullSensorList" "FullSensorList.ini"][!SetVariable [color=#BF0000]MyConfig[/color] "#ListConfig#"][!UpdateMeter "Gauge"][!SetVariable [color=#BF0000]Action[/color] """[!SetWindowPosition "(#CURRENTCONFIGX#+#CURRENTCONFIGWIDTH#/2)" "(#CURRENTCONFIGY#+#CURRENTCONFIGHEIGHT#)" "#ListAnchorX#%" "#ListAnchorY#%" "RTMSkin\GPU-FullSensorList"]"""][!UpdateMeter "InvisibleCircle"]
IfFalseAction=[!DeactivateConfig "RTMSkin\GPU-FullSensorList"][!SetVariable [color=#BF0000]MyConfig[/color] ""][!UpdateMeter "Gauge"][!SetVariable [color=#BF0000]Action[/color] ""][!UpdateMeter "InvisibleCircle"]
DynamicVariables=1
In the Gauge meter
Code: Select all
MouseScrollDownAction=[!SetVariable Scaler (Clamp(#Scaler#-#MouseIncrement#,#MinSize#,#MaxSize#))][!WriteKeyValue Variables Scaler "(Clamp(#Scaler#-#MouseIncrement#,#MinSize#,#MaxSize#))" "#@#Variables.inc"][!SetVariable Scaler "[#Scaler]" "#[color=#BF0000]MyConfig[/color]#"]
MouseScrollUpAction=[!SetVariable Scaler (Clamp(#Scaler#+#MouseIncrement#,#MinSize#,#MaxSize#))][!WriteKeyValue Variables Scaler "(Clamp(#Scaler#+#MouseIncrement#,#MinSize#,#MaxSize#))" "#@#Variables.inc"][!SetVariable Scaler "[#Scaler]" "#[color=#BF0000]MyConfig[/color]#"]
and in the InvisibleCircle meter
Code: Select all
LeftMouseDoubleClickAction=[!SetOption FullList FontColor #Color3#][!SetOption ValueText FontColor #Color3#][!SetVariable ConfigActive "(1-#ConfigActive#)"][color=#BF0000]#Action#[/color]
My guess is that MyConfig is a variable to reference to the actual config path (RTMSkin\GPU-Gauge\) but what is the #Action# Variable? What does it do? I'm trying to find information about it but there's nothing I can find in the documentation.
Thank you very much balala!
P.S. I'll upload a newer version with this and some other changes I did as soon as it's finished.
Edit.
Here's the latest package with all new changes, including yours.
RTMSkin_0.4.rmskin
V0.4 Changes:
- Added comments to almost everything.
- Changed the name of some variables to make them more explicit.
- Added 3 Measures to separate the State Measure formula.
- Changed colors and added Mouse Actions when hovering the texts in both the gauge and the list.
- Added a red colored variant for both the gauge and the list and changed a line in the Invisible Circle meter.
- Added Balala code, plugin measure and variables file (this package doesn't include the plugin dll since I didn't find it in the plugins folder).
- Some other changes.
You do not have the required permissions to view the files attached to this post.