Most Rainmeter meters (String, Image, etc.) are always rectangles. They are anchored, and scaled, from the upper-left corner of the meter.
Shape meters are different in many ways, especially when trying to scale them to match other Rainmeter meters.
The closest method I use is to design a skin at the size and relative positions I want, then add a
variable to all X, Y, W, H values of the meters. This can be simplified in some cases using Section Variables of already scaled meter; that is what you did for your text meters.
For Shape meters, I add a Scaler multiplier formula to each dimension (e.g., Rectangle X,Y,W,H,Radius ) and Stroke parameters to control the shape size. This corresponds closely to the other meters that use the upper-left corner as the anchor for sizing.
Aside: TransformationMatrix can change the fixed point away from the upper-left corner, but also introduces mouse interaction issues.
I modified your code by changing the FontSize of String meters and the dimension and stroke size of Shape meters to use a 'SCALER' variable and modified the Mouse Scroll Up/Down actions to control the 'SCALER' variable.
The 'ListSize' and 'ScrollMouseIncrement' variables are not used and can be deleted; the 'SCALER' variable handles their function.
I would suggest using this same scaling method in your gauge skin; or combining the 2 skins into one, which would eliminate the relative positioning you asked about earlier.
Take a look at these changes to your 'FullSensorList.ini' and see if you have any questions.
Code: Select all
[Rainmeter]
Update=100
AccurateText=1
DynamicWindowSize=1
Group=GPU
[Metadata]
Name=GPUFullSensorList
Author=RicardoTM
Information= A list that follows a gauge
Version=0.1
License=Creative Commons Attribution - Non - Commercial - Share Alike 3.0
[Variables]
GpuNameIndex=9
GPUTempIndex=9
GPUFanSpeedIndex=11
GPUClockSpeedIndex=13
GPUCoreVoltageIndex=10
GpuPowerDrawIndex=12
GpuCoreLoadIndex=14
HWINFO64=["C:\Program Files\HWiNFO64\HWiNFO64.exe"]
StrokeGradient=90 | 255,255,255,200 ; 0.2 | 0,0,0,0 ; 1.0
StrokeGradient2=270 | 255,255,255,145 ; 0.0 | 0,0,0,0 ; 5.0
; ListSize=150
; ScrollMouseIncrement=5
Scaler=1
[MeasureGPUSensorName]
Measure=Registry
RegHKey=HKEY_CURRENT_USER
RegKey=SOFTWARE\HWINFO64\VSB
RegValue=Sensor#GPUNameIndex#
UpdateDivider=-1
RegExpSubstitute=1
Substitute="^.*]:":""
[MeasureGPUTempValue]
Measure=Registry
RegHKey=HKEY_CURRENT_USER
RegKey=SOFTWARE\HWINFO64\VSB
RegValue=Value#GPUTempIndex#
[MeasureGPUFanSpeedValue]
Measure=Registry
RegHKey=HKEY_CURRENT_USER
RegKey=SOFTWARE\HWINFO64\VSB
RegValue=Value#GPUFanSpeedIndex#
[MeasureGPUClockSpeedValue]
Measure=Registry
RegHKey=HKEY_CURRENT_USER
RegKey=SOFTWARE\HWINFO64\VSB
RegValue=Value#GPUClockSpeedIndex#
[MeasureGPUCoreVoltageValue]
Measure=Registry
RegHKey=HKEY_CURRENT_USER
RegKey=SOFTWARE\HWINFO64\VSB
RegValue=Value#GPUCoreVoltageIndex#
[MeasureGPUPowerDrawValue]
Measure=Registry
RegHKey=HKEY_CURRENT_USER
RegKey=SOFTWARE\HWINFO64\VSB
RegValue=Value#GpuPowerDrawIndex#
[MeasureGPUCoreLoadValue]
Measure=Registry
RegHKey=HKEY_CURRENT_USER
RegKey=SOFTWARE\HWINFO64\VSB
RegValue=Value#GpuCoreLoadIndex#
[styleTitle]
StringAlign=Center
StringCase=Upper
StringStyle=Bold
InLineSetting=Shadow | 2 | 2 | 0 | 0,0,0,100
FontColor=225,225,225
fontName=HelveticaNeueLT Std
FontSize=(15*#Scaler#)
AntiAlias=1
[styleTitle2]
StringAlign=Center
StringStyle=Bold
InLineSetting=Shadow | 2 | 2 | 0 | 0,0,0,100
FontColor=225,225,225
fontName=HelveticaNeueLT Std
FontSize=(12*#Scaler#)
AntiAlias=1
[MeterBG]
Meter=Shape
Shape=Rectangle (20*#Scaler#),0,(300*#Scaler#),(300*#Scaler#),(16*#Scaler#) | Fill RadialGradient Gradient2 | StrokeWidth (0.3*#Scaler#) | Stroke LinearGradient StrokeGradient
StrokeGradient=#StrokeGradient#
Gradient2=0,-150 | 50,59,66,80 ; 0.0| 0,0,0,200 ; 1.2
Shape2=Rectangle 0,0,(340*#Scaler#),(62*#Scaler#),(5*#Scaler#) | Fill LinearGradient MyFillGradient | StrokeWidth (0.3*#Scaler#) | Stroke LinearGradient StrokeGradient2
StrokeGradient2=#StrokeGradient2#
MyFillGradient=270 | 67,67,67,225 ; 0.5 | 0,0,0,0 ; 1.0
Shape3=Rectangle (1.5*#Scaler#),(1.5*#Scaler#),(337*#Scaler#),(60*#Scaler#),(3*#Scaler#) | Fill RadialGradient MyRadialGradient | StrokeWidth 0
MyRadialGradient=0,-25 | 41,49,55,255 ; 0.0| 24,24,24,255 ; 1.0
Shape4=Rectangle (2*#Scaler#),(2*#Scaler#),(335*#Scaler#),(58*#Scaler#),(3*#Scaler#) | Fill LinearGradient Gradient1 | StrokeWidth 0
Gradient1=270 | 255,255,255,75 ; 0.0 | 255,255,255,35 ; 1.0
Shape5=Rectangle (3*#Scaler#),(3*#Scaler#),(333*#Scaler#),(56*#Scaler#),0 | Fill RadialGradient MyRadialGradient2 | StrokeWidth 0
MyRadialGradient2=0,-30 | 41,49,55,255 ; 0.0| 5,5,5,255 ; 1.5
MouseOverAction=[!ShowMeter "MeterHWINFO64"]
MouseLeaveAction=[!HideMeter "MeterHWINFO64"]
W=(342*#Scaler#)
H=(315*#Scaler#)
x=0
y=0
MouseScrollDownAction=[!SetVariable Scaler (Clamp(#Scaler#-0.1,0.6,1))][!WriteKeyValue Variables Scaler (Clamp(#Scaler#-0.1,0.6,1))]
; [!SetVariable ListSize "(#ListSize#-#ScrollMouseIncrement# < 80 ? 80 : #ListSize#-#ScrollMouseIncrement#)"][!WriteKeyValue Variables ListSize "(#ListSize#-#ScrollMouseIncrement# < 0 ? 80 : #ListSize#-#ScrollMouseIncrement#)"][!UpdateMeter *][!UpdateMeasure *][!Redraw]
MouseScrollUpAction=[!SetVariable Scaler (Clamp(#Scaler#+0.1,0.6,1))][!WriteKeyValue Variables Scaler (Clamp(#Scaler#+0.1,0.6,1))]
; [!SetVariable ListSize "(#ListSize#+#ScrollMouseIncrement# > 150 ? 150 : #ListSize#+#ScrollMouseIncrement#)"] [!WriteKeyValue Variables ListSize "(#ListSize#+#ScrollMouseIncrement# > 150 ? 150 : #ListSize#+#ScrollMouseIncrement#)"][!UpdateMeasure *][!UpdateMeter *][!Redraw]
DynamicVariables=1
[MeterHWINFO64]
Meter=String
StringAlign=Center
hidden=1
SolidColor=0,0,0,1
x=([MeterBG:W])*0.492
y=([MeterBG:H])*0.135
FontSize=(10*#Scaler#)
FontColor=35,150,225,200
Text=Double Click Me to Open HWINFO64!
AntiAlias=1
MouseOverAction=!SetOption MeterHWINFO64 FontColor f72f2f
MouseLeaveAction=!SetOption MeterHWINFO64 FontColor 35,150,225,200
LeftMouseDownAction=[#HWINFO64][!SetOption MeterHWINFO64 FontColor 255,255,200]
DynamicVariables=1
[MeterGpuName]
Meter=String
StringStyle=Bold
MeasureName=MeasureGPUSensorName
Text=%1
MeterStyle=StyleTitle
x=([MeterBG:W])*0.492
y=([MeterBG:H])*0.062
DynamicVariables=1
InlineSetting2=Color | 0,0,0,0
InlinePattern2=:
[MeterGpuTemp]
Meter=String
MeasureName=MeasureGPUTempValue
Text=Temperature = %1
MeterStyle=StyleTitle2
x=([MeterBG:W])*0.492
y=([MeterBG:H])*0.23
DynamicVariables=1
[MeterLine]
Meter=Shape
Shape=Rectangle 0,0,(300*#Scaler#),(0.5*#Scaler#) | Fill RadialGradient Gradient3 | StrokeWidth 0
Gradient3=0,0.2 | 255,255,255,200 ; 0 | 255,255,255,45 ; 1
x=([MeterBG:W])*0.06
y=([MeterBG:H])*0.315
DynamicVariables=1
[MeterGpuClockSpeed]
Meter=String
MeasureName=MeasureGPUClockSpeedValue
Text=Clock Speed = %1
MeterStyle=StyleTitle2
x=([MeterBG:W])*0.492
y=([MeterBG:H])*0.358
DynamicVariables=1
[MeterLine2]
Meter=Shape
Shape=Rectangle 0,0,(300*#Scaler#),(0.5*#Scaler#) | Fill RadialGradient Gradient3 | StrokeWidth 0
Gradient3=0,0.2 | 255,255,255,200 ; 0 | 255,255,255,45 ; 1
x=([MeterBG:W])*0.06
y=([MeterBG:H])*0.443
DynamicVariables=1
[MeterGpuFanSpeed]
Meter=String
MeasureName=MeasureGPUFanSpeedValue
Text=Fan Speed = %1
MeterStyle=StyleTitle2
x=([MeterBG:W])*0.492
y=([MeterBG:H])*0.485
DynamicVariables=1
[MeterLine3]
Meter=Shape
Shape=Rectangle 0,0,(300*#Scaler#),(0.5*#Scaler#) | Fill RadialGradient Gradient3 | StrokeWidth 0
Gradient3=0,0.2 | 255,255,255,200 ; 0 | 255,255,255,45 ; 1
x=([MeterBG:W])*0.06
y=([MeterBG:H])*0.57
DynamicVariables=1
[MeterGpuCoreLoad]
Meter=String
MeasureName=MeasureGPUCoreLoadValue
Text=Core Load = %1
MeterStyle=StyleTitle2
x=([MeterBG:W])*0.492
y=([MeterBG:H])*0.612
DynamicVariables=1
[MeterLine4]
Meter=Shape
Shape=Rectangle 0,0,(300*#Scaler#),(0.5*#Scaler#) | Fill RadialGradient Gradient3 | StrokeWidth 0
Gradient3=0,0.2 | 255,255,255,200 ; 0 | 255,255,255,45 ; 1
x=([MeterBG:W])*0.06
y=([MeterBG:H])*0.698
DynamicVariables=1
[MeterGpuCoreVoltage]
Meter=String
MeasureName=MeasureGPUCoreVoltageValue
Text=Core Voltage = %1
MeterStyle=StyleTitle2
x=([MeterBG:W])*0.492
y=([MeterBG:H])*0.735
DynamicVariables=1
[MeterLine5]
Meter=Shape
Shape=Rectangle 0,0,(300*#Scaler#),(0.5*#Scaler#) | Fill RadialGradient Gradient3 | StrokeWidth 0
Gradient3=0,0.2 | 255,255,255,200 ; 0 | 255,255,255,45 ; 1
x=([MeterBG:W])*0.06
y=([MeterBG:H])*0.823
DynamicVariables=1
[MeterGpuPowerDraw]
Meter=String
MeasureName=MeasureGPUPowerDrawValue
Text=Power Draw = %1
MeterStyle=StyleTitle2
x=([MeterBG:W])*0.492
y=([MeterBG:H])*0.865
DynamicVariables=1
[MeterCloseList]
Meter=Shape
Shape=Ellipse 0,0,(7*#Scaler#), | Fill Color f72f2f | StrokeWidth (1.6*#Scaler#) | Stroke LinearGradient StrokeGradientt
StrokeGradientt=270 | 255,255,255,85 ; 0.0 | 0,0,0,0 ; 1.0
LeftMouseUpAction=[!DeactivateConfig "RTM Skin VERSION 2\GPU Full Sensor List" "FullSensorList.ini"]
x=([MeterBG:W])*0.95
y=([MeterBG:H])*0.045
DynamicVariables=1