It is currently April 19th, 2024, 6:17 pm

WAN & LAN and SysInfoType/s [SOLVED]

Get help with creating, editing & fixing problems with skins
User avatar
Yincognito
Rainmeter Sage
Posts: 7126
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: WAN & LAN and SysInfoType/s

Post by Yincognito »

CodeCode wrote: August 8th, 2021, 8:20 pm I'm not sure if I said something that indicated there are no more questions?

If not, I am still struggling with a couple things:
1) The above quote.

2) I have not been able to find out where I can fit in a short text string before or after the IPs.

Any help on these almost last questions, is appreciated.
I can only speak for myself, but rest assured, I saw your reply hours ago and didn't forget about it - but a man has to eat, relax and do some other stuff in the meantime, it's not like we're hired on a full-time job with deadlines and things like that... ;-)

1) I'm working on it. Do you think sliding the text to the left+right so you can read it all on mouse hover instead of changing the font size is acceptable here? I can make it either way, your choice.

2) Use (or create) the Substitutes in [MeasureNICIPAddress] or [MeasureWANIP]. For example:

Code: Select all

[MeasureNICIPAddress]
Group=NICGroup
Measure=Plugin
Plugin=SysInfo
SysInfoType=IP_ADDRESS
SysInfoData=
RegExpSubstitute=1
Substitute="(?:^\s+|\s+$)":"","(^$|^0$)":"Unavailable LAN IP","^(.*)$":"Adapter's LAN IP: \1"
or

Code: Select all

[MeasureWANIP]
Measure=WebParser
Url=http://checkip.dyndns.org/%22
RegExp="(?siU)<body>(.+)Address: (.+)</body>"
StringIndex=2
RegExpSubstitute=1
Substitute="^(.*)$":"Adapter's WAN IP: \1"
DynamicVariables=1
The added text is obviously, Adapter's LAN/WAN IP: . Working from the meter's Text option here is a bit restrictive due to how things are toggled on and off in the meter.
Profiles: Rainmeter ProfileDeviantArt ProfileSuites: MYiniMeterSkins: Earth
User avatar
CodeCode
Posts: 1365
Joined: September 7th, 2020, 2:24 pm
Location: QLD, Australia

Re: WAN & LAN and SysInfoType/s

Post by CodeCode »

Yincognito wrote: August 8th, 2021, 9:57 pm I can only speak for myself, but rest assured, I saw your reply hours ago and didn't forget about it - but a man has to eat, relax and do some other stuff in the meantime, it's not like we're hired on a full-time job with deadlines and things like that... ;-)
Ack. I actually thought I implied the thread was solved, so just updated with a request - not to imply I had to wait... which is not really a thing. I just continue to tinker around etc.
Yincognito wrote: August 8th, 2021, 9:57 pm 1) I'm working on it. Do you think sliding the text to the left+right so you can read it all on mouse hover instead of changing the font size is acceptable here? I can make it either way, your choice.
I think it would be more tidy if the font was scaled. That way it isn't partially hidden when the marquis stops its 'bounce'.
Yincognito wrote: August 8th, 2021, 9:57 pm 2) Use (or create) the Substitutes in [MeasureNICIPAddress] or [MeasureWANIP]. For example:

Code: Select all

[MeasureNICIPAddress]
Group=NICGroup
Measure=Plugin
Plugin=SysInfo
SysInfoType=IP_ADDRESS
SysInfoData=
RegExpSubstitute=1
Substitute="(?:^\s+|\s+$)":"","(^$|^0$)":"Unavailable LAN IP","^(.*)$":"Adapter's LAN IP: \1"
or

Code: Select all

[MeasureWANIP]
Measure=WebParser
Url=http://checkip.dyndns.org/%22
RegExp="(?siU)<body>(.+)Address: (.+)</body>"
StringIndex=2
RegExpSubstitute=1
Substitute="^(.*)$":"Adapter's WAN IP: \1"
DynamicVariables=1
The added text is obviously, Adapter's LAN/WAN IP: . Working from the meter's Text option here is a bit restrictive due to how things are toggled on and off in the meter.
That is perfect-a-mundo!
I am humbled by your versatility, and interest in helping hopeless nerds who take forever to learn all of the things you have shared. I really am learning with all of this. In other skins on the workbench, I am doing things I could never do before.
A earnest shout out to all of the forum surfers who help simply because it is fun. If we had more people like that in the world, the tensions would ease exponentially.
ƈǟռ'ȶ ʄɨӼ ɨȶ ɨʄ ɨȶ ǟɨռ'ȶ ɮʀօӄɛ - ʊռʟɛֆֆ ɨȶ ɨֆ ɨռ ƈօɖɛ.
User avatar
Yincognito
Rainmeter Sage
Posts: 7126
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: WAN & LAN and SysInfoType/s

Post by Yincognito »

CodeCode wrote: August 9th, 2021, 1:25 amI think it would be more tidy if the font was scaled. That way it isn't partially hidden when the marquis stops its 'bounce'.
Well, I just completed the "marquee" variant, I'll post it here for the record - you can, of course, try it and have fun with it, as long as you backup your original:

Code: Select all

[Rainmeter]
Update=1000
AccurateText=1

[Variables]
@include=#@#MegaVariables.inc
m=>
n=>
Largest=10000000
MinValDn=#Largest#
MinValUp=#Largest#
Gothd=#Gothicd#

NICIDDefault=-1
NICID=0
MeasureNameFormat0=%[#*MeasureNameIndex*]
MeasureNameFormat1=%3
MeasureNameIndex=1
MeasureNameFormatIndex=0

Wait=25
WaitStatic=1000
Count=20
PositionX=0

;==================================Styles=========================

[TextStyle]
FontFace=VertigoFLF
FontSize=31
FontColor=#GlobalFontAltColor#
AntiAlias=1

[TextStyle1]
FontFace=Segoe UI
FontSize=14
FontColor=#GlobalFontAltColor#
AntiAlias=1
StringStyle=Bold

[AllStyle]
FontSize=14
FontWeight=100
FontColor=#GlobalFontAltColor#
AntiAlias=1
DynamicVariables=1

[RightStyle]
StringAlign=Right

;==================================Measures=========================

[MeasureNICID]
Group=NICGroup
Measure=Calc
Formula=#NICIDDefault#
UpdateDivider=-1
RegExpSubstitute=1
Substitute="^-2$":"Total","^-1$":"Best"
OnUpdateAction=[!SetVariable NICID [MeasureNICID]]
DynamicVariables=1

[MeasureAdapter]
Group=NICGroup
Measure=Plugin
Plugin=SysInfo
SysInfoType=ADAPTER_DESCRIPTION
SysInfoData=#NICID#
RegExpSubstitute=1
Substitute="(?:^\s+|\s+$)":"","(^$|^0$)":"Unavailable Adapter","#IPSkinVPNFullName#":"Private  Internet  Adapter","#IPSkinAdapterFullName#":"Standard  Internet  Adapter"
IfCondition=MeasureNICID=-2
IfTrueAction=[!SetOptionGroup NetGroup Interface 0][!SetOption MeasureNICIPAddress SysInfoData 0][!SetOption MeterTextAdapterInvisible MeasureName "MeasureNICID"][!SetOption MeterTextAdapter MeasureName "MeasureNICID"]
IfCondition2=MeasureNICID=-1
IfTrueAction2=[!SetOptionGroup NetGroup Interface [MeasureAdapter]][!SetOption MeasureNICIPAddress SysInfoData [MeasureAdapter]][!SetOption MeterTextAdapterInvisible MeasureName "MeasureNICID"][!SetOption MeterTextAdapter MeasureName "MeasureNICID"]
IfCondition3=MeasureNICID>=0
IfTrueAction3=[!SetOptionGroup NetGroup Interface [MeasureAdapter]][!SetOption MeasureNICIPAddress SysInfoData [MeasureAdapter]][!SetOption MeterTextAdapterInvisible MeasureName "MeasureAdapter"][!SetOption MeterTextAdapter MeasureName "MeasureAdapter"]
IfConditionMode=1
IfMatch=^.{2,}$
IfMatchAction=[!EnableMeasureGroup NetGroup][!EnableMeasure MeasureNICIPAddress][!SetOption MeterTextAdapter FontColor "#GlobalFontAltColor#"]
IfNotMatchAction=[!DisableMeasureGroup NetGroup][!SetOption MeasureNICIPAddress SysInfoData 999][!SetOption MeterTextAdapter FontColor "0,0,255,255"]
IfMatchMode=1
DynamicVariables=1

[MeasureNetIn]
Group=NICGroup | NetGroup
Measure=NetIn
Interface=
updatedivider=2
DynamicVariables=1

[MeasureNetOut]
Group=NICGroup | NetGroup
Measure=NetOut
Interface=
updatedivider=2
DynamicVariables=1

[MeasureNetInC]
Group=NICGroup | NetGroup
Measure=NetIn
Interface=
Cumulative=1
DynamicVariables=1

[MeasureNetOutC]
Group=NICGroup | NetGroup
Measure=NetOut
Interface=
Cumulative=1
DynamicVariables=1

[MeasureNICIPAddress]
Group=NICGroup
Measure=Plugin
Plugin=SysInfo
SysInfoType=IP_ADDRESS
SysInfoData=
RegExpSubstitute=1
Substitute="(?:^\s+|\s+$)":"","(^$|^0$)":"Unavailable LAN IP","^(.*)$":"Adapter's LAN IP: \1"

;===================================Calculations====================

[ValK]
updatedivider=-1
Measure=Calc
Formula=2048

[ValIn]
Measure=Calc
DynamicVariables=1
Formula=MeasureNetIn/1.05

[MeasureIN]
Measure=Calc
Formula=ValK > [ValIn] ? 0 : ValIn
DynamicVariables=1

[ValOut]
Measure=Calc
DynamicVariables=1
AverageSize=#avg#
Formula=MeasureNetOut/1.05

[MeasureNetInCumulative]
Measure=Calc
Formula=MeasureNetInC/6

[MeasureNetOutCumulative]
Measure=Calc
Formula=MeasureNetOutC/6

[MeasureOUT]
Measure=Calc
Formula=ValK > [ValOut] ? 0 : ValOut
DynamicVariables=1

[MeasureIN2]
Measure=Calc
Formula=(MeasureIN*2)/8.2
DynamicVariables=1

[MeasureOUT2]
Measure=Calc
Formula=(MeasureOUT*2)/16.8
DynamicVariables=1

[MeasureUpMax]
Measure=Calc
Formula=( Max ( MeasureUpMax, MeasureOUT2 ))

[MeasureUpMin]
Measure=Calc
Formula=(( #MinValUp# > 0 ) ? (( #MinValUp# > MeasureOUT2 ) ? MeasureOUT2 : #MinValUp# ) : #Largest# )
IfCondition=(#CURRENTSECTION#>0)
IfTrueAction=[!SetVariable MinValUp "[MeasureUpMin]"]
IfFalseAction=[!SetVariable MinValUp "#Largest#"]
IfConditionMode=1
DynamicVariables=1

[MeasureDnMax]
Measure=Calc
Formula=( Max ( MeasureDnMax, MeasureIN2 ))

[MeasureDnMin]
Measure=Calc
Formula=(( #MinValDn# > 0 ) ? (( #MinValDn# > MeasureIN2 ) ? MeasureIN2 : #MinValDn# ) : #Largest# )
IfCondition=(#CURRENTSECTION#>0)
IfTrueAction=[!SetVariable MinValDn "[MeasureDnMin]"]
IfFalseAction=[!SetVariable MinValDn "#Largest#"]
IfConditionMode=1
DynamicVariables=1

[SwitchUp]
Measure=Calc
Formula=0 < MeasureOUT2 ? 1 : 0
IfAboveValue=0
IfAboveAction=[!SetVariable m <]

[SwitchDn]
Measure=Calc
Formula=0 < MeasureIN2 ? 1 : 0
IfAboveValue=0
IfAboveAction=[!SetVariable n "<"][!UpdateMeasure "MeasureDnMin"]

[Val5]
updatedivider=-1
Measure=Calc
Formula=0

[Val6]
updatedivider=-1
Measure=Calc
Formula=1

;=====================================Shape=========================

[GraphBack]
Meter=Shape
Shape=Rectangle 43,45,913,202 | Fill Color 0,0,0,255 | StrokeWidth 1 | Stroke Color 0,0,0,255
AntiAlias=1

;=======================================Text Meters=================

[MeterTextSpeed]
UpdateDivider=-1
Meter=String
X=694
Y=42
MeterStyle=TextStyle1
StringAlign=right
Text="Speed"

[MeterTextMax]
UpdateDivider=-1
Meter=String
X=734
Y=r
MeterStyle=TextStyle1
StringAlign=left
Text="Maximum"

[MeterTextMin]
UpdateDivider=-1
Meter=String
X=845
Y=r
MeterStyle=TextStyle1
StringAlign=left
Text="Minimum"

[MeterTextUP]
Meter=String
X=505
Y=80
StringAlign=left
Text="UPLOAD"
DynamicVariables=1
FontFace=VertigoFLF
FontSize=31
StringCase=Upper
StringAlign=Left
StringEffect=Border
InlineSetting=Case | Upper
InlineSetting2=CharacterSpacing | .3 | .3
FontEffectColor=#VolMain#
FontColor=#NetFontColor1#
AntiAlias=1
StringStyle=Bold

[UpSpeed]
Meter=String
updatedivider=1
MeasureName=MeasureOUT2
X=219r
Y=-3r
StringAlign=right
MeterStyle=TextStyle
NumOfDecimals=2
AutoScale=1
Text="%1Bps"

[TextUpMin]
Meter=String
updatedivider=1
MeasureName=MeasureUpMin
X=220r
Y=r
MeterStyle=TextStyle
StringAlign=right
NumOfDecimals=2
AutoScale=1
Text=%1B

[TextUpMax]
updatedivider=1
Meter=String
MeasureName=MeasureUpMax
X=-110r
Y=r
MeterStyle=TextStyle
StringAlign=right
NumOfDecimals=2
AutoScale=1
Text=%1B
DynamicVariables=1

[MeterTextDN]
Meter=String
X=505
Y=147
StringAlign=left
Text="DOWNLOAD"
DynamicVariables=1
FontFace=VertigoFLF
FontSize=31
StringCase=Upper
StringAlign=Left
StringEffect=Border
InlineSetting=Case | Upper
InlineSetting2=CharacterSpacing | .3 | .3
FontEffectColor=#VolMain#
FontColor=#NetFontColor2#
AntiAlias=1
StringStyle=Bold

[DnSpeed]
Meter=String
updatedivider=1
MeasureName=MeasureIN2
X=219r
Y=-1r
StringAlign=right
MeterStyle=TextStyle
NumOfDecimals=2
AutoScale=1
Text="%1Bps"

[DnData]
Meter=String
updatedivider=1
MeasureName=MeasureDnMin
X=220r
Y=r
MeterStyle=TextStyle
StringAlign=right
NumOfDecimals=2
AutoScale=1
Text=%1B

[DnSession]
updatedivider=1
Meter=String
MeasureName=MeasureDnMax
X=-110r
Y=r
MeterStyle=TextStyle
StringAlign=right
NumOfDecimals=2
AutoScale=1
Text=%1B

;======================================End Text=====================

[MBuild]
Measure=Registry
RegHKey=HKEY_LOCAL_MACHINE
RegKey=SOFTWARE\Microsoft\Windows NT\CurrentVersion
RegValue=CurrentBuild
DynamicVariables=1
UpdateDivider=-1

[MeasureProcessOne]
Measure=Plugin
Plugin=Process
ProcessName=#NetProcessName#
Substitute="-1":"OS Build: [MBuild]","^1$":" #NetSkinProcessText# "
RegExpSubstitute=1
DynamicVariables=1
Group=RHUD

[MeasureGPU1Name]
Measure=Plugin
Plugin=MSIAfterburner.dll
GPU=0
GPUDescriptor=DisplayName
UpdateDivider=-1

[MeasureUPTIME]
Measure=uptime
Format=%4!02i!:%3!02i!:%2!02i!:%1!02i!

;======================================Connectivity=================<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

[Slider]
Measure=Plugin
Plugin=ActionTimer
ActionList1=Repeat SlideLeft, #Wait#, #Count# | Wait #WaitStatic# | Repeat SlideRight, #Wait#, #Count# | Wait #WaitStatic#
ActionList2=Repeat SlideLeft, #Wait#, #Count# | Wait #WaitStatic# | Repeat SlideRight, #Wait#, #Count# | Wait #WaitStatic# | Rerun | Wait #Wait#
SlideLeft=[!SetVariable PositionX (#PositionX#-([MeterTextAdapterInvisible:W]>[MeterContainer:W]?[MeterTextAdapterInvisible:W]-[MeterContainer:W]:0)/#Count#)][!UpdateMeasure Slider][!UpdateMeter MeterTextAdapter][!Redraw]
SlideRight=[!SetVariable PositionX (#PositionX#+([MeterTextAdapterInvisible:W]>[MeterContainer:W]?[MeterTextAdapterInvisible:W]-[MeterContainer:W]:0)/#Count#)][!UpdateMeasure Slider][!UpdateMeter MeterTextAdapter][!Redraw]
Rerun=[!SetVariable PositionX 0][!CommandMeasure Slider "Stop 1"][!CommandMeasure Slider "Stop 2"][!CommandMeasure Slider "Execute 2"]
UpdateDivider=-1
DynamicVariables=1

[MeasureWANIP]
Measure=WebParser
Url=http://checkip.dyndns.org/%22
RegExp="(?siU)<body>(.+)Address: (.+)</body>"
StringIndex=2
RegExpSubstitute=1
Substitute="^(.*)$":"Adapter's WAN IP: \1"
DynamicVariables=1

[MeterContainer]
Meter=Image
SolidColor=0,0,0,255
X=503
Y=202
W=442
H=46
MouseScrollUpAction=[!SetVariable PositionX 0][!CommandMeasure Slider "Stop 1"][!CommandMeasure Slider "Stop 2"][!SetOption MeasureNICID Formula (Clamp([MeasureNICID:]-1,-2,20))][!UpdateMeasureGroup NICGroup][!UpdateMeter MeterTextAdapterInvisible][!UpdateMeter MeterTextAdapter][!Redraw]
MouseScrollDownAction=[!SetVariable PositionX 0][!CommandMeasure Slider "Stop 1"][!CommandMeasure Slider "Stop 2"][!SetOption MeasureNICID Formula (Clamp([MeasureNICID:]+1,-2,20))][!UpdateMeasureGroup NICGroup][!UpdateMeter MeterTextAdapterInvisible][!UpdateMeter MeterTextAdapter][!Redraw]
MiddleMouseUpAction=[!SetVariable PositionX 0][!CommandMeasure Slider "Stop 1"][!CommandMeasure Slider "Stop 2"][!SetVariable MeasureNameIndex (3-#MeasureNameIndex#)][!UpdateMeter MeterTextAdapterInvisible][!UpdateMeter MeterTextAdapter][!Redraw]
RightMouseUpAction=[!SetVariable PositionX 0][!CommandMeasure Slider "Stop 1"][!CommandMeasure Slider "Stop 2"][!SetVariable MeasureNameFormatIndex (1-#MeasureNameFormatIndex#)][!UpdateMeter MeterTextAdapterInvisible][!UpdateMeter MeterTextAdapter][!Redraw]
MouseOverAction=[!SetVariable PositionX 0][!CommandMeasure Slider "Stop 1"][!CommandMeasure Slider "Stop 2"][!CommandMeasure Slider "Execute 1"]
MouseLeaveAction=[!SetVariable PositionX 0][!CommandMeasure Slider "Stop 1"][!CommandMeasure Slider "Stop 2"][!UpdateMeasure Slider][!UpdateMeter MeterTextAdapterInvisible][!UpdateMeter MeterTextAdapter][!Redraw]
DynamicVariables=1

[MeterTextAdapterInvisible]
Container=MeterContainer
Meter=String
MeasureName=MeasureAdapter
MeasureName2=MeasureNICIPAddress
MeasureName3=MeasureWANIP
Fontsize=31
FontFace=VertigoFLF
AntiAlias=1
StringAlign=Left
FontColor=0,0,0,0
InlineSetting=CharacterSpacing | .7 | .7
Hidden=0
Group=ADAP
UpdateDivider=-1
Text=[#MeasureNameFormat[#MeasureNameFormatIndex]]
DynamicVariables=1

[MeterTextAdapter]
Container=MeterContainer
Meter=String
X=#PositionX#
MeasureName=MeasureAdapter
MeasureName2=MeasureNICIPAddress
MeasureName3=MeasureWANIP
Fontsize=31
FontFace=VertigoFLF
AntiAlias=1
StringAlign=Left
FontColor=#GlobalFontAltColor#
InlineSetting=CharacterSpacing | .7 | .7
Hidden=0
Group=ADAP
Text=[#MeasureNameFormat[#MeasureNameFormatIndex]]
DynamicVariables=1

[FPSClickBig]
Meter=Image
X=490
Y=203
W=240
H=45
LeftMouseUpAction=[!ToggleMeterGroup ADAP][!ToggleMeterGroup VPN][!Update]
SolidColor=0,0,0,1

;=====================================Lines=========================

[MeterGraph0]
Meter=Line
MeasureName=MeasureOUT2
MeasureName2=MeasureIN2
X=0
Y=44
H=200
W=28
LineCount=2
LineWidth=3
LineColor=#NetLineColorOut#
LineColor2=#NetLineColorIn1#
Autoscale=1
AntiAlias=1
UpdateDivider=1
TransformationMatrix=16.52; 0; 0; 1; 44; 0
TransformStroke=Fixed

[MeterGraph2]
Meter=Line
MeasureName=MeasureOUT2
MeasureName2=MeasureIN2
X=0
Y=45
H=199
W=28
LineCount=2
LineWidth=1
LineColor=#NetLineColorIn2#
Autoscale=1
AntiAlias=1
UpdateDivider=1
TransformationMatrix=16.52; 0; 0; 1; 44; 0
TransformStroke=Fixed

;=========================================Boxes=====================

[MeterUpLeft]
Meter=Image
ImageName=#@#Border.png
ImageTint=#VolMain#
X=0
Y=0
W=130
H=130
AntiAlias=1
Group=Stat Border

[ScrollR]
Meter=Image
ImageName=#@#Edge.png
ImageFlip=Vertical
ImageTint=#VolMain#
X=([CentreText:X]-[ScrollL:W] -4)
Y=14
W=133
H=26
DynamicVariables=1
Group=ExtHUD | Scroll
Hidden=0

[CentreText]
Meter=String
MeasureName=MeasureUPTIME
X=490
Y=-10r
StringAlign=Center
Text=" Computer Uptime: %1 "
InlineSetting=Case | Upper
InlineSetting2=CharacterSpacing | .5 | .5
InlineSetting3=CharacterSpacing | -3.5 | 2.0
InlinePattern3=a|A
FontColor=#GlobalFontAltColor# 
FontFace=VertigoFLF
FontSize=24

[ScrollL]
Meter=Image
ImageName=#@#Edge.png
ImageFlip=Both
ImageTint=#VolMain#
X=([CentreText:X]+[CentreText:W] +11)
Y=8r
W=133
H=26
DynamicVariables=1
Group=ExtHUD | Scroll
Hidden=0

[MeterUpRight]
Meter=Image
ImageFlip=Horizontal
ImageName=#@#Border.png
ImageTint=#VolMain#
X=869
Y=0
W=130
H=130
AntiAlias=1
Group=Stat Border

[MeterLowLeft]
Meter=Image
ImageFlip=Vertical
ImageName=#@#Border.png
ImageTint=#VolMain#
X=0
Y=163
W=130
H=130
AntiAlias=1
Group=Stat Border

[VictorianB]
Meter=Image
ImageName=#@#Victorian.png
ImageTint=#VolMain#
X=285
Y=254
W=420
H=30
AntiAlias=1
Group=Stat Border

[MeterLowRight]
Meter=Image
ImageFlip=Both
ImageName=#@#Border.png
ImageTint=#VolMain#
X=869
Y=163
W=130
H=130
AntiAlias=1
Group=Stat Border

[MeterUpInLeft]
Meter=Image
ImageName=#@#Corner.png
ImageTint=#VolMain#
X=47
Y=48
W=45
H=45
AntiAlias=1
Group=Stat Border

[MeterUpInRight]
Meter=Image
ImageName=#@#Corner.png
ImageFlip=Horizontal
ImageTint=#VolMain#
X=442
Y=48
W=45
H=45
AntiAlias=1
Group=Stat Border

[MeterDnInLeft]
Meter=Image
ImageName=#@#Corner.png
ImageFlip=Vertical
ImageTint=#VolMain#
X=47
Y=202
W=45
H=45
AntiAlias=1
Group=Stat Border

[MeterDnInRight]
Meter=Image
ImageName=#@#Corner.png
ImageFlip=Both
ImageTint=#VolMain#
X=442
Y=202
W=45
H=45
AntiAlias=1
Group=Stat Border

[LowerHoriz]
UpdateDivider=-1
Meter=Line
MeasureName=Val5
X=43
Y=248
H=2
W=912
LineWidth=2
LineColor=#NetBorder#

[TopLine]
UpdateDivider=-1
Meter=Line
MeasureName=Val5
X=43
Y=43
H=2
W=912
LineWidth=2
LineColor=#NetBorder#

[Line1]
UpdateDivider=-1
Meter=Line
MeasureName=Val5
X=490
Y=-134
H=200
W=466
LineWidth=2
LineColor=#NetBorder#

[Line2]
UpdateDivider=-1
Meter=Line
MeasureName=Val5
X=490
Y=-64
H=200
W=466
LineColor=#Main#

[Line3]
UpdateDivider=-1
Meter=Line
MeasureName=Val5
X=490
Y=4
H=200
W=466
LineWidth=2
LineColor=#Main#

[Bar0]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=#NetBorder#
H=205
W=2
X=43
Y=43

[Bar01]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=0,0,0,255
H=200
W=3
X=45
Y=45

[Bar1]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=#Main#
H=160
W=1
X=604
Y=44

[Bar2]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=#Main#
H=160
W=1
X=729
Y=44

[Bar3]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=#Main#
H=160
W=1
X=839
Y=44

[Bar04]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=0,0,0,255
H=200
W=2
X=490
Y=45

[Bar4]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=#NetBorder#
H=205
W=2
X=490
Y=44

[Bar6]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=#NetBorder#
H=207
W=2
X=954
Y=43

[MeterImageClick]
Meter=Image
W=105
H=80
X=500
Y=63
DynamicVariables=1
LeftMouseUpAction=[!Refresh]
SolidColor=0,0,0,1
It has some things that I personally don't like, i.e. a bit high CPU usage on bouncing and not stopping exactly when the mouse is leaving the area (aka some kind of delay in acting), but I suspect it's partly because of the pixel size of your skin or maybe something else in the code is not as it should be (I'm thinking that the UpdateDivider=-1 parts where possible are something that your skin is missing), because the equivalent simpler sample of it works as it should:

Code: Select all

[Variables]
Wait=25
WaitStatic=1000
Count=20
PositionX=0

[Rainmeter]
Update=1000
DynamicWindowSize=1
AccurateText=1

---Measures---

[Slider]
Measure=Plugin
Plugin=ActionTimer
ActionList1=Repeat SlideLeft, #Wait#, #Count# | Wait #WaitStatic# | Repeat SlideRight, #Wait#, #Count# | Wait #Wait#
ActionList2=Repeat SlideLeft, #Wait#, #Count# | Wait #WaitStatic# | Repeat SlideRight, #Wait#, #Count# | Wait #Wait# | Rerun | Wait #Wait#
SlideLeft=[!SetVariable PositionX (#PositionX#-([Text:W]>[Container:W]?[Text:W]-[Container:W]:0)/#Count#)][!UpdateMeasure Slider][!UpdateMeter Text][!Redraw]
SlideRight=[!SetVariable PositionX (#PositionX#+([Text:W]>[Container:W]?[Text:W]-[Container:W]:0)/#Count#)][!UpdateMeasure Slider][!UpdateMeter Text][!Redraw]
Rerun=[!SetVariable PositionX 0][!CommandMeasure Slider "Stop 1"][!CommandMeasure Slider "Stop 2"][!CommandMeasure Slider "Execute 2"]
UpdateDivider=-1
DynamicVariables=1

---Meters---

[Background]
Meter=Image
SolidColor=47,47,47,255
W=214
H=50
UpdateDivider=-1

[ContainerVisible]
Meter=Image
SolidColor=0,0,0,255
X=7
Y=7
W=200
H=36
UpdateDivider=-1

[Container]
Meter=Image
SolidColor=0,0,0,255
X=7
Y=7
W=200
H=36
MouseOverAction=[!SetVariable PositionX 0][!CommandMeasure Slider "Stop 1"][!CommandMeasure Slider "Stop 2"][!CommandMeasure Slider "Execute 1"]
MouseLeaveAction=[!SetVariable PositionX 0][!CommandMeasure Slider "Stop 1"][!CommandMeasure Slider "Stop 2"][!UpdateMeasure Slider][!UpdateMeter Text][!Redraw]
DynamicVariables=1

[Text]
Container=Container
Meter=String
X=#PositionX#
FontFace=Consolas
FontColor=255,255,255,255
Padding=5,5,5,5
FontSize=16
AntiAlias=1
Text=This is a very very very long text
UpdateDivider=-1
DynamicVariables=1
I actually wanted to post the latter as a bug in the appropriate section, but obviously gave up seeing that for the simpleton everything worked without any kind of delays. Anyway, I only signed up for the adapter part, not to correct stuff in the entire skin, so that part is up to you, if you feel like it. :sly:

So, this is it for today. Tomorrow I'll modify this to scale the font, as the part required for that is already done, it's only a matter of adding some formula in the FontSize option and possibly the Y option as well. Or, maybe I'll just do it tonight, will see. :???:

Glad you like the way the skin is adjusted - I wanted to say this earlier as well, but thought to write something when I have some concrete stuff done - until your previous reply that is, when I had to tell you it's all alright and all. :D
Profiles: Rainmeter ProfileDeviantArt ProfileSuites: MYiniMeterSkins: Earth
User avatar
CodeCode
Posts: 1365
Joined: September 7th, 2020, 2:24 pm
Location: QLD, Australia

Re: WAN & LAN and SysInfoType/s

Post by CodeCode »

Totally cool. There is no hurry, especially since I know what it will look like, and I also know you will definitely nail it. So anticipation is in park mode.

I am redesigning another mini suite, so far all of the technical stuff is working out - another cudo for you and also death.crafter- I have learnt so much with these skins and all of the help you guys put into something that is purely recreational/hobby/pastime/etc.!

:Whistle 8-) :rosegift:
ƈǟռ'ȶ ʄɨӼ ɨȶ ɨʄ ɨȶ ǟɨռ'ȶ ɮʀօӄɛ - ʊռʟɛֆֆ ɨȶ ɨֆ ɨռ ƈօɖɛ.
User avatar
Yincognito
Rainmeter Sage
Posts: 7126
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: WAN & LAN and SysInfoType/s

Post by Yincognito »

CodeCode wrote: August 9th, 2021, 2:37 am Totally cool. There is no hurry, especially since I know what it will look like, and I also know you will definitely nail it. So anticipation is in park mode.

I am redesigning another mini suite, so far all of the technical stuff is working out - another cudo for you and also death.crafter- I have learnt so much with these skins and all of the help you guys put into something that is purely recreational/hobby/pastime/etc.!

:Whistle 8-) :rosegift:
Yep, you're right. Personally I thought having the font size change would be terribly inconsistent visually so I went for the bounce method first, but it looks pretty nice, contrary to my initial expectations. I had it mostly done since last night, I just need to adjust for the "font padding" pixels and probably align it slightly differently. By the way, do you have any preference regarding the horizontal and vertical alignment when it comes to different sizes of the font?
Profiles: Rainmeter ProfileDeviantArt ProfileSuites: MYiniMeterSkins: Earth
User avatar
Yincognito
Rainmeter Sage
Posts: 7126
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: WAN & LAN and SysInfoType/s

Post by Yincognito »

CodeCode wrote: August 9th, 2021, 2:37 am Totally cool. There is no hurry, especially since I know what it will look like, and I also know you will definitely nail it. So anticipation is in park mode.
Well, anticipation over, LOL - have fun with it:

Code: Select all

[Rainmeter]
Update=1000
AccurateText=1

[Variables]
@include=#@#MegaVariables.inc
m=>
n=>
Largest=10000000
MinValDn=#Largest#
MinValUp=#Largest#
Gothd=#Gothicd#

NICIDDefault=-1
NICID=0
MeasureNameFormat0=%[#*MeasureNameIndex*]
MeasureNameFormat1=%3
MeasureNameIndex=1
MeasureNameFormatIndex=0

;==================================Styles=========================

[TextStyle]
FontFace=VertigoFLF
FontSize=31
FontColor=#GlobalFontAltColor#
AntiAlias=1

[TextStyle1]
FontFace=Segoe UI
FontSize=14
FontColor=#GlobalFontAltColor#
AntiAlias=1
StringStyle=Bold

[AllStyle]
FontSize=14
FontWeight=100
FontColor=#GlobalFontAltColor#
AntiAlias=1
DynamicVariables=1

[RightStyle]
StringAlign=Right

;==================================Measures=========================

[MeasureNICID]
Group=NICGroup
Measure=Calc
Formula=#NICIDDefault#
UpdateDivider=-1
RegExpSubstitute=1
Substitute="^-2$":"Total","^-1$":"Best"
OnUpdateAction=[!SetVariable NICID [MeasureNICID]]
DynamicVariables=1

[MeasureAdapter]
Group=NICGroup
Measure=Plugin
Plugin=SysInfo
SysInfoType=ADAPTER_DESCRIPTION
SysInfoData=#NICID#
RegExpSubstitute=1
Substitute="(?:^\s+|\s+$)":"","(^$|^0$)":"Unavailable Adapter","#IPSkinVPNFullName#":"Private  Internet  Adapter","#IPSkinAdapterFullName#":"Standard  Internet  Adapter"
IfCondition=MeasureNICID=-2
IfTrueAction=[!SetOptionGroup NetGroup Interface 0][!SetOption MeasureNICIPAddress SysInfoData 0][!SetOption MeterTextAdapterInvisible MeasureName "MeasureNICID"][!SetOption MeterTextAdapter MeasureName "MeasureNICID"]
IfCondition2=MeasureNICID=-1
IfTrueAction2=[!SetOptionGroup NetGroup Interface [MeasureAdapter]][!SetOption MeasureNICIPAddress SysInfoData [MeasureAdapter]][!SetOption MeterTextAdapterInvisible MeasureName "MeasureNICID"][!SetOption MeterTextAdapter MeasureName "MeasureNICID"]
IfCondition3=MeasureNICID>=0
IfTrueAction3=[!SetOptionGroup NetGroup Interface [MeasureAdapter]][!SetOption MeasureNICIPAddress SysInfoData [MeasureAdapter]][!SetOption MeterTextAdapterInvisible MeasureName "MeasureAdapter"][!SetOption MeterTextAdapter MeasureName "MeasureAdapter"]
IfConditionMode=1
IfMatch=^.{2,}$
IfMatchAction=[!EnableMeasureGroup NetGroup][!EnableMeasure MeasureNICIPAddress][!SetOption MeterTextAdapter FontColor "#GlobalFontAltColor#"]
IfNotMatchAction=[!DisableMeasureGroup NetGroup][!SetOption MeasureNICIPAddress SysInfoData 999][!SetOption MeterTextAdapter FontColor "0,0,255,255"]
IfMatchMode=1
DynamicVariables=1

[MeasureNetIn]
Group=NICGroup | NetGroup
Measure=NetIn
Interface=
updatedivider=2
DynamicVariables=1

[MeasureNetOut]
Group=NICGroup | NetGroup
Measure=NetOut
Interface=
updatedivider=2
DynamicVariables=1

[MeasureNetInC]
Group=NICGroup | NetGroup
Measure=NetIn
Interface=
Cumulative=1
DynamicVariables=1

[MeasureNetOutC]
Group=NICGroup | NetGroup
Measure=NetOut
Interface=
Cumulative=1
DynamicVariables=1

[MeasureNICIPAddress]
Group=NICGroup
Measure=Plugin
Plugin=SysInfo
SysInfoType=IP_ADDRESS
SysInfoData=
RegExpSubstitute=1
Substitute="(?:^\s+|\s+$)":"","(^$|^0$)":"Unavailable LAN IP","^(.*)$":"Adapter's LAN IP: \1"

;===================================Calculations====================

[ValK]
updatedivider=-1
Measure=Calc
Formula=2048

[ValIn]
Measure=Calc
DynamicVariables=1
Formula=MeasureNetIn/1.05

[MeasureIN]
Measure=Calc
Formula=ValK > [ValIn] ? 0 : ValIn
DynamicVariables=1

[ValOut]
Measure=Calc
DynamicVariables=1
AverageSize=#avg#
Formula=MeasureNetOut/1.05

[MeasureNetInCumulative]
Measure=Calc
Formula=MeasureNetInC/6

[MeasureNetOutCumulative]
Measure=Calc
Formula=MeasureNetOutC/6

[MeasureOUT]
Measure=Calc
Formula=ValK > [ValOut] ? 0 : ValOut
DynamicVariables=1

[MeasureIN2]
Measure=Calc
Formula=(MeasureIN*2)/8.2
DynamicVariables=1

[MeasureOUT2]
Measure=Calc
Formula=(MeasureOUT*2)/16.8
DynamicVariables=1

[MeasureUpMax]
Measure=Calc
Formula=( Max ( MeasureUpMax, MeasureOUT2 ))

[MeasureUpMin]
Measure=Calc
Formula=(( #MinValUp# > 0 ) ? (( #MinValUp# > MeasureOUT2 ) ? MeasureOUT2 : #MinValUp# ) : #Largest# )
IfCondition=(#CURRENTSECTION#>0)
IfTrueAction=[!SetVariable MinValUp "[MeasureUpMin]"]
IfFalseAction=[!SetVariable MinValUp "#Largest#"]
IfConditionMode=1
DynamicVariables=1

[MeasureDnMax]
Measure=Calc
Formula=( Max ( MeasureDnMax, MeasureIN2 ))

[MeasureDnMin]
Measure=Calc
Formula=(( #MinValDn# > 0 ) ? (( #MinValDn# > MeasureIN2 ) ? MeasureIN2 : #MinValDn# ) : #Largest# )
IfCondition=(#CURRENTSECTION#>0)
IfTrueAction=[!SetVariable MinValDn "[MeasureDnMin]"]
IfFalseAction=[!SetVariable MinValDn "#Largest#"]
IfConditionMode=1
DynamicVariables=1

[SwitchUp]
Measure=Calc
Formula=0 < MeasureOUT2 ? 1 : 0
IfAboveValue=0
IfAboveAction=[!SetVariable m <]

[SwitchDn]
Measure=Calc
Formula=0 < MeasureIN2 ? 1 : 0
IfAboveValue=0
IfAboveAction=[!SetVariable n "<"][!UpdateMeasure "MeasureDnMin"]

[Val5]
updatedivider=-1
Measure=Calc
Formula=0

[Val6]
updatedivider=-1
Measure=Calc
Formula=1

;=====================================Shape=========================

[GraphBack]
Meter=Shape
Shape=Rectangle 43,45,913,202 | Fill Color 0,0,0,255 | StrokeWidth 1 | Stroke Color 0,0,0,255
AntiAlias=1

;=======================================Text Meters=================

[MeterTextSpeed]
UpdateDivider=-1
Meter=String
X=694
Y=42
MeterStyle=TextStyle1
StringAlign=right
Text="Speed"

[MeterTextMax]
UpdateDivider=-1
Meter=String
X=734
Y=r
MeterStyle=TextStyle1
StringAlign=left
Text="Maximum"

[MeterTextMin]
UpdateDivider=-1
Meter=String
X=845
Y=r
MeterStyle=TextStyle1
StringAlign=left
Text="Minimum"

[MeterTextUP]
Meter=String
X=505
Y=80
StringAlign=left
Text="UPLOAD"
DynamicVariables=1
FontFace=VertigoFLF
FontSize=31
StringCase=Upper
StringAlign=Left
StringEffect=Border
InlineSetting=Case | Upper
InlineSetting2=CharacterSpacing | .3 | .3
FontEffectColor=#VolMain#
FontColor=#NetFontColor1#
AntiAlias=1
StringStyle=Bold

[UpSpeed]
Meter=String
updatedivider=1
MeasureName=MeasureOUT2
X=219r
Y=-3r
StringAlign=right
MeterStyle=TextStyle
NumOfDecimals=2
AutoScale=1
Text="%1Bps"

[TextUpMin]
Meter=String
updatedivider=1
MeasureName=MeasureUpMin
X=220r
Y=r
MeterStyle=TextStyle
StringAlign=right
NumOfDecimals=2
AutoScale=1
Text=%1B

[TextUpMax]
updatedivider=1
Meter=String
MeasureName=MeasureUpMax
X=-110r
Y=r
MeterStyle=TextStyle
StringAlign=right
NumOfDecimals=2
AutoScale=1
Text=%1B
DynamicVariables=1

[MeterTextDN]
Meter=String
X=505
Y=147
StringAlign=left
Text="DOWNLOAD"
DynamicVariables=1
FontFace=VertigoFLF
FontSize=31
StringCase=Upper
StringAlign=Left
StringEffect=Border
InlineSetting=Case | Upper
InlineSetting2=CharacterSpacing | .3 | .3
FontEffectColor=#VolMain#
FontColor=#NetFontColor2#
AntiAlias=1
StringStyle=Bold

[DnSpeed]
Meter=String
updatedivider=1
MeasureName=MeasureIN2
X=219r
Y=-1r
StringAlign=right
MeterStyle=TextStyle
NumOfDecimals=2
AutoScale=1
Text="%1Bps"

[DnData]
Meter=String
updatedivider=1
MeasureName=MeasureDnMin
X=220r
Y=r
MeterStyle=TextStyle
StringAlign=right
NumOfDecimals=2
AutoScale=1
Text=%1B

[DnSession]
updatedivider=1
Meter=String
MeasureName=MeasureDnMax
X=-110r
Y=r
MeterStyle=TextStyle
StringAlign=right
NumOfDecimals=2
AutoScale=1
Text=%1B

;======================================End Text=====================

[MBuild]
Measure=Registry
RegHKey=HKEY_LOCAL_MACHINE
RegKey=SOFTWARE\Microsoft\Windows NT\CurrentVersion
RegValue=CurrentBuild
DynamicVariables=1
UpdateDivider=-1

[MeasureProcessOne]
Measure=Plugin
Plugin=Process
ProcessName=#NetProcessName#
Substitute="-1":"OS Build: [MBuild]","^1$":" #NetSkinProcessText# "
RegExpSubstitute=1
DynamicVariables=1
Group=RHUD

[MeasureGPU1Name]
Measure=Plugin
Plugin=MSIAfterburner.dll
GPU=0
GPUDescriptor=DisplayName
UpdateDivider=-1

[MeasureUPTIME]
Measure=uptime
Format=%4!02i!:%3!02i!:%2!02i!:%1!02i!

;======================================Connectivity=================<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

[MeasureWANIP]
Measure=WebParser
Url=http://checkip.dyndns.org/%22
RegExp="(?siU)<body>(.+)Address: (.+)</body>"
StringIndex=2
RegExpSubstitute=1
Substitute="^(.*)$":"Adapter's WAN IP: \1"
DynamicVariables=1

[MeterContainer]
Meter=Image
SolidColor=255,0,0,255
X=503
Y=202
W=442
H=46
MouseScrollUpAction=[!SetOption MeasureNICID Formula (Clamp([MeasureNICID:]-1,-2,20))][!UpdateMeasureGroup NICGroup][!UpdateMeter MeterTextAdapterInvisible][!UpdateMeter MeterTextAdapter][!Redraw]
MouseScrollDownAction=[!SetOption MeasureNICID Formula (Clamp([MeasureNICID:]+1,-2,20))][!UpdateMeasureGroup NICGroup][!UpdateMeter MeterTextAdapterInvisible][!UpdateMeter MeterTextAdapter][!Redraw]
MiddleMouseUpAction=[!SetVariable MeasureNameIndex (3-#MeasureNameIndex#)][!UpdateMeter MeterTextAdapterInvisible][!UpdateMeter MeterTextAdapter][!Redraw]
RightMouseUpAction=[!SetVariable MeasureNameFormatIndex (1-#MeasureNameFormatIndex#)][!UpdateMeter MeterTextAdapterInvisible][!UpdateMeter MeterTextAdapter][!Redraw]
DynamicVariables=1

[MeterTextAdapterInvisible]
Container=MeterContainer
Meter=String
MeasureName=MeasureAdapter
MeasureName2=MeasureNICIPAddress
MeasureName3=MeasureWANIP
Fontsize=31
FontFace=VertigoFLF
AntiAlias=1
StringAlign=Left
FontColor=0,0,0,0
InlineSetting=CharacterSpacing | .7 | .7
Hidden=0
Group=ADAP
UpdateDivider=-1
Text=[#MeasureNameFormat[#MeasureNameFormatIndex]]
DynamicVariables=1

[MeterTextAdapter]
Container=MeterContainer
Meter=String
MeasureName=MeasureAdapter
MeasureName2=MeasureNICIPAddress
MeasureName3=MeasureWANIP
Y=([MeterContainer:H]/2+3)
FontSize=([MeterContainer:W]<[MeterTextAdapterInvisible:W]?31*[MeterContainer:W]/[MeterTextAdapterInvisible:W]-1:31)
FontFace=VertigoFLF
AntiAlias=1
StringAlign=LeftCenter
FontColor=#GlobalFontAltColor#
InlineSetting=CharacterSpacing | .7 | .7
Hidden=0
Group=ADAP
Text=[#MeasureNameFormat[#MeasureNameFormatIndex]]
DynamicVariables=1

[FPSClickBig]
Meter=Image
X=490
Y=203
W=240
H=45
LeftMouseUpAction=[!ToggleMeterGroup ADAP][!ToggleMeterGroup VPN][!Update]
SolidColor=0,0,0,1

;=====================================Lines=========================

[MeterGraph0]
Meter=Line
MeasureName=MeasureOUT2
MeasureName2=MeasureIN2
X=0
Y=44
H=200
W=28
LineCount=2
LineWidth=3
LineColor=#NetLineColorOut#
LineColor2=#NetLineColorIn1#
Autoscale=1
AntiAlias=1
UpdateDivider=1
TransformationMatrix=16.52; 0; 0; 1; 44; 0
TransformStroke=Fixed

[MeterGraph2]
Meter=Line
MeasureName=MeasureOUT2
MeasureName2=MeasureIN2
X=0
Y=45
H=199
W=28
LineCount=2
LineWidth=1
LineColor=#NetLineColorIn2#
Autoscale=1
AntiAlias=1
UpdateDivider=1
TransformationMatrix=16.52; 0; 0; 1; 44; 0
TransformStroke=Fixed

;=========================================Boxes=====================

[MeterUpLeft]
Meter=Image
ImageName=#@#Border.png
ImageTint=#VolMain#
X=0
Y=0
W=130
H=130
AntiAlias=1
Group=Stat Border

[ScrollR]
Meter=Image
ImageName=#@#Edge.png
ImageFlip=Vertical
ImageTint=#VolMain#
X=([CentreText:X]-[ScrollL:W] -4)
Y=14
W=133
H=26
DynamicVariables=1
Group=ExtHUD | Scroll
Hidden=0

[CentreText]
Meter=String
MeasureName=MeasureUPTIME
X=490
Y=-10r
StringAlign=Center
Text=" Computer Uptime: %1 "
InlineSetting=Case | Upper
InlineSetting2=CharacterSpacing | .5 | .5
InlineSetting3=CharacterSpacing | -3.5 | 2.0
InlinePattern3=a|A
FontColor=#GlobalFontAltColor# 
FontFace=VertigoFLF
FontSize=24

[ScrollL]
Meter=Image
ImageName=#@#Edge.png
ImageFlip=Both
ImageTint=#VolMain#
X=([CentreText:X]+[CentreText:W] +11)
Y=8r
W=133
H=26
DynamicVariables=1
Group=ExtHUD | Scroll
Hidden=0

[MeterUpRight]
Meter=Image
ImageFlip=Horizontal
ImageName=#@#Border.png
ImageTint=#VolMain#
X=869
Y=0
W=130
H=130
AntiAlias=1
Group=Stat Border

[MeterLowLeft]
Meter=Image
ImageFlip=Vertical
ImageName=#@#Border.png
ImageTint=#VolMain#
X=0
Y=163
W=130
H=130
AntiAlias=1
Group=Stat Border

[VictorianB]
Meter=Image
ImageName=#@#Victorian.png
ImageTint=#VolMain#
X=285
Y=254
W=420
H=30
AntiAlias=1
Group=Stat Border

[MeterLowRight]
Meter=Image
ImageFlip=Both
ImageName=#@#Border.png
ImageTint=#VolMain#
X=869
Y=163
W=130
H=130
AntiAlias=1
Group=Stat Border

[MeterUpInLeft]
Meter=Image
ImageName=#@#Corner.png
ImageTint=#VolMain#
X=47
Y=48
W=45
H=45
AntiAlias=1
Group=Stat Border

[MeterUpInRight]
Meter=Image
ImageName=#@#Corner.png
ImageFlip=Horizontal
ImageTint=#VolMain#
X=442
Y=48
W=45
H=45
AntiAlias=1
Group=Stat Border

[MeterDnInLeft]
Meter=Image
ImageName=#@#Corner.png
ImageFlip=Vertical
ImageTint=#VolMain#
X=47
Y=202
W=45
H=45
AntiAlias=1
Group=Stat Border

[MeterDnInRight]
Meter=Image
ImageName=#@#Corner.png
ImageFlip=Both
ImageTint=#VolMain#
X=442
Y=202
W=45
H=45
AntiAlias=1
Group=Stat Border

[LowerHoriz]
UpdateDivider=-1
Meter=Line
MeasureName=Val5
X=43
Y=248
H=2
W=912
LineWidth=2
LineColor=#NetBorder#

[TopLine]
UpdateDivider=-1
Meter=Line
MeasureName=Val5
X=43
Y=43
H=2
W=912
LineWidth=2
LineColor=#NetBorder#

[Line1]
UpdateDivider=-1
Meter=Line
MeasureName=Val5
X=490
Y=-134
H=200
W=466
LineWidth=2
LineColor=#NetBorder#

[Line2]
UpdateDivider=-1
Meter=Line
MeasureName=Val5
X=490
Y=-64
H=200
W=466
LineColor=#Main#

[Line3]
UpdateDivider=-1
Meter=Line
MeasureName=Val5
X=490
Y=4
H=200
W=466
LineWidth=2
LineColor=#Main#

[Bar0]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=#NetBorder#
H=205
W=2
X=43
Y=43

[Bar01]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=0,0,0,255
H=200
W=3
X=45
Y=45

[Bar1]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=#Main#
H=160
W=1
X=604
Y=44

[Bar2]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=#Main#
H=160
W=1
X=729
Y=44

[Bar3]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=#Main#
H=160
W=1
X=839
Y=44

[Bar04]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=0,0,0,255
H=200
W=2
X=490
Y=45

[Bar4]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=#NetBorder#
H=205
W=2
X=490
Y=44

[Bar6]
UpdateDivider=-1
Meter=bar
MeasureName=Val6
BarOrientation=Vertical
BarColor=#NetBorder#
H=207
W=2
X=954
Y=43

[MeterImageClick]
Meter=Image
W=105
H=80
X=500
Y=63
DynamicVariables=1
LeftMouseUpAction=[!Refresh]
SolidColor=0,0,0,1
I changed the visible text's alignmeter to LeftCenter so that it would be easier to adjust its vertical position. Feel free to adjust the +3 in [MeterTextAdapter]'s Y option to your liking, if you want the text upwards or downwards. If you don't add anything there and just place it in the vertical middle of the container it will work well in not cutting off stuff from the bottom the g, p letters and such, but it just doesn't look good visually that way, so I guess the +3 addition places it at just the right vertical position in order for the main text part and other font sizes to be more or less consistent. Of course, if you change the font, you'll need to adjust the FontSize and Y formulas again, but that's the thing with fonts, every one of them is different and there's no easy way out of that volatility... :confused:
Profiles: Rainmeter ProfileDeviantArt ProfileSuites: MYiniMeterSkins: Earth
User avatar
CodeCode
Posts: 1365
Joined: September 7th, 2020, 2:24 pm
Location: QLD, Australia

Re: WAN & LAN and SysInfoType/s

Post by CodeCode »

OMG, OMG. Wow. :jawdrop
It looks amazing!
The container was a great idea. The resizing happens without even a flicker - too cool. Too bloody COOL!

I couldn't imagine this turning out any better than it did.

I can't stop scrolling through just to see the text be fitted. Yincognito, you placed the font perfectly, I almost did not even notice the change in size.

Thank you kindly.
ƈǟռ'ȶ ʄɨӼ ɨȶ ɨʄ ɨȶ ǟɨռ'ȶ ɮʀօӄɛ - ʊռʟɛֆֆ ɨȶ ɨֆ ɨռ ƈօɖɛ.
User avatar
Yincognito
Rainmeter Sage
Posts: 7126
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: WAN & LAN and SysInfoType/s

Post by Yincognito »

CodeCode wrote: August 9th, 2021, 1:47 pm OMG, OMG. Wow. :jawdrop
It looks amazing!
The container was a great idea. The resizing happens without even a flicker - too cool. Too bloody COOL!

I couldn't imagine this turning out any better than it did.

I can't stop scrolling through just to see the text be fitted. Yincognito, you placed the font perfectly, I almost did not even notice the change in size.

Thank you kindly.
Glad you like it - thanks for your kind words. :great: The container actually has little role here (it was "inherited" from the text bounce version), as I could just use the hardcoded 442 & 46 values of W & H, but since it was already there - and helped in verifying myself at a pixel level - why not keep it. The real key was the invisible meter which helped find out the dynamic size of the text in pixels (again, I use a similar technique in my skins to make them fit the greatest width/height of text) and the Y and FontSize formulas. No big deal, really. ;-)

Yeah, I understand how you feel - it's great to see things working smoothly, and as I said, it indeed turned out better than I initially expected. :thumbup:
Profiles: Rainmeter ProfileDeviantArt ProfileSuites: MYiniMeterSkins: Earth
User avatar
CodeCode
Posts: 1365
Joined: September 7th, 2020, 2:24 pm
Location: QLD, Australia

Re: WAN & LAN and SysInfoType/s

Post by CodeCode »

Yincognito wrote: August 9th, 2021, 4:03 pm Yeah, I understand how you feel - it's great to see things working smoothly, and as I said, it indeed turned out better than I initially expected. :thumbup:
Well, my ideas *are* great. :rofl:

Seriously, you initial code was almost impossibly spot on with my hopes in having a certain functioning.

I did find examples that used the invisible or dummy text, depending on who made them. But in the places I found them, they were possibly really outdated (probably not but...), or the replies just ended after the proposed solution, so I was leery of going down a path that had no indication of success - prior to your code that is.

Weirdly, there were also some RMforums posts, where the OPs comments were totally gon, but the remaining posts said "glad you figured it out" :lol:
ƈǟռ'ȶ ʄɨӼ ɨȶ ɨʄ ɨȶ ǟɨռ'ȶ ɮʀօӄɛ - ʊռʟɛֆֆ ɨȶ ɨֆ ɨռ ƈօɖɛ.
User avatar
Yincognito
Rainmeter Sage
Posts: 7126
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: WAN & LAN and SysInfoType/s

Post by Yincognito »

CodeCode wrote: August 9th, 2021, 5:03 pm Well, my ideas *are* great. :rofl:

Seriously, you initial code was almost impossibly spot on with my hopes in having a certain functioning.

I did find examples that used the invisible or dummy text, depending on who made them. But in the places I found them, they were possibly really outdated (probably not but...), or the replies just ended after the proposed solution, so I was leery of going down a path that had no indication of success - prior to your code that is.

Weirdly, there were also some RMforums posts, where the OPs comments were totally gon, but the remaining posts said "glad you figured it out" :lol:
Yep, you put a great idea next to a suitable functionality and you hit the jackpot. :lol: Another good thing regarding this is that the modifications required were not what I would call 'major', as I tried to let as much code from your original bits as possible. In terms of functionality, I always try to do things so that I'm the first that is pleased with how it turned out (and I'm very critical of my own work), and only then the OP. A bit unfair to the OP, I know, but when the expectations coincide, it's all good, like in this case.

By the way, if you want to start with a certain adapter, you can change the value of the NICIDDefault variable in [Variables]: -2 is the total for all adapters, -1 is the "best" adapter, and from 0 onwards they just follow the order of the SysInfoData option. You can also adjust the upper value of the Clamp() in MeterContainer's scroll actions, if you want more or less scrollable adapters (I let that at 20 as in the simpler sample in the other thread just in case, but I use 9 for my system since I don't have more than that) - which reminds me I should have set that value as a variable so it can easily be modified in your "settings" skin and such, but I reckon you know how to do it. Oh, and forgot to mention earlier, but I corrected the line / histogram jumping to the left when scrolling in the initial version, as it was just a matter of updating only the needed meters and not all of them like before.

Anyway, good luck with the other endeavours with your skins - hopefully they'll all turn out well eventually. ;-)
Profiles: Rainmeter ProfileDeviantArt ProfileSuites: MYiniMeterSkins: Earth