What I'm saying is that this:
Code: Select all
[BoxColor]
Meter=Image
W=32
H=32
X=85
Y=165
SolidColor=#CPUColor#
Hidden=1
Group=Config
LeftMouseUpAction=["#@#Addons\RainRGB4.exe" "VarName=UniqueColor" "FileName=#@#Var.inc" "RefreshConfig=-1"]
[ApplyButton]
Meter=Image
W=66
H=22
X=30
Y=203
ImageName=#@#LouButton1.png
Hidden=1
ImageAlpha=0
Group=Config
leftmouseupaction=[!WriteKeyValue "Variables" "CPUColor" "#UniqueColor#" "#@#Variables.inc"][!WriteKeyValue "Variables" "CPUColorBg" "#UniqueColor#" "#@#Variables.inc"][!WriteKeyValue "Variables" "CPUColorTxt" "#UniqueColor#" "#@#Variables.inc"][!WriteKeyValue "Variables" "CPUColorTemp" "#UniqueColor#" "#@#Variables.inc"][!WriteKeyValue "Variables" "CPUColorNumb" "#UniqueColor#" "#@#Variables.inc"][!Refresh]
Won't do what I think you expect it to do.
In [BoxColor] you have a mouse action that is letting the user select a color. It is "writing" the value of that color to the variable "UniqueColor" in the file "Var.inc".
So far so good. You now have that color value written to that variable in that file.
Then, without refreshing anything (RefreshConfig=-1) You are then trying to "use" that value in those !WriteKeyValue bangs in [ApplyButton]. You are writing the value of #UniqueColor# to the files and then refreshing the skin.
The problem of course is that #UniqueColor# has not changed. It was written to the Var.inc file by RainRGB, but it has not been read by the skin. So what is written to all those variables in "Variables.inc" is whatever the original value of #UniqueColor# was when the skin was last refreshed.
Do you see what I am getting at? You can't "write" a value to a file and then just expect to "use" it, without having Rainmeter "read" the file first. That will require a refresh after you set the color. You need to refresh before you try to "use" the new value in those !WriteKeyValue bangs.