It is currently December 4th, 2021, 10:51 pm

Clock, Date, Current Weather (my first shared skin)

Clocks and timer skins
User avatar
Codger
Posts: 97
Joined: May 29th, 2017, 3:16 pm

Clock, Date, Current Weather (my first shared skin)

Post by Codger »

[Indent]Clock, Date and Weather can be turned on/off independently in context menu
Resize with scroll wheel.
With or without background.
All other display aspects easily changeable visa Variables.[/Indent]
Screenshot 2017-06-28 06.22.34.png
Screenshot 2017-06-28 06.22.31.png
Screenshot (7).png
Screenshot (8).png
I learned a ton writing it. Much thanks to the ever patient and helpful support of the community for helping through the rough patches. Any critiquing is appreciated. I do many things in odd ways but there is usually a madness to the method. Lots I don't know though.

Code: Select all

[Rainmeter]
Update=1000
DynamicWindowSize=1
MiddleMouseDownAction=!DeactivateConfig
LeftMouseUpAction=[!EnableMeasure "HideFor10"][!UpdateMeasure "HideFor10"][!Hide][!EnableMeasure "HideFor10"]
ContextTitle=Hide for 10 seconds
ContextAction=[!EnableMeasure "HideFor10"][!UpdateMeasure "HideFor10"][!Hide][!EnableMeasure "HideFor10"]
ContextTitle2="-----"
ContextTitle3=Set Clock [ToggleTimeHidden]
ContextAction3=[!ToggleMeterGroup TimeGroup][!SetVariable TimeHidden [ToggleTimeHidden:]][!WriteKeyValue Variables TimeHidden [ToggleTimeHidden:]]
ContextTitle4=Set Date [ToggleDateHidden]
ContextAction4=[!ToggleMeterGroup DateGroup][!SetVariable DateHidden [ToggleDateHidden:]][!WriteKeyValue Variables DateHidden [ToggleDateHidden:]]
ContextTitle5=Set Weather [ToggleWeatherHidden]
ContextAction5=[!ToggleMeterGroup WeatherGroup][!SetVariable WeatherHidden [ToggleWeatherHidden:]][!WriteKeyValue Variables WeatherHidden [ToggleWeatherHidden:]][!UpdateMeterGroup BackgroundGroup]
ContextTitle6=Turn Background [ToggleBackDrop]
ContextAction6=[!SetVariable BackDrop [ToggleBackDrop:]][!WriteKeyValue Variables BackDrop [ToggleBackDrop:]]
ContextTitle7="-----"
ContextTitle8=Save Size
ContextAction8=[!WriteKeyValue Variables Scale #Scale#]
ContextTitle9=Reset to Defaults
ContextAction9=[!WriteKeyValue Variables TimeHidden 0][!WriteKeyValue Variables DateHidden 0][!WriteKeyValue Variables WeatherHidden 0][!WriteKeyValue Variables Scale 1.25][!WriteKeyValue Variables BackDrop 140][!Refresh]

[Metadata]
Name=Hideaway Blob Clock
Author=Codger
Config=
Instructions=Use Custom Contect Menu for options. Set Zip code for Weather, a few lines down
Version=1.3.5
License=License=Creative Commons Attribution - Non - Commercial - Share Alike 3.0
Variant=
Preview=

[Variables]
;Change next line to your zip code
Zip=02346
;How often to update weather (15 minutes)
UpdateWeatherSeconds=900
;The higher Scale the smaller the widget
Scale=1.15
;if you change this change all 140s in skin
BackDrop=1
;pixels from left edge
XEdge = 4
;Change to 1 for Clock to stay hidden in refresh. Same for Date and Weather.
TimeHidden=0
DateHidden=0
WeatherHidden=0
;
White=255,255,255,255
Yellow=255,255,80,255
Gray=120,120,120,255
Black=0,0,0,255

;===Styles
[DisplayStyle1]
Meter=String
FontColor=#Yellow#
FontFace=Diner
StringStyle=Bold
StringEffect="Shadow"
FontEffectColor=#Black#

;===Formulas
[ScaleDown]
Measure=Calc
Formula=(Clamp(#Scale#-0.125,0.75,2))
DynamicVariables=1

[ScaleUp]
Measure=Calc
Formula=(Clamp(#Scale#+0.125,0.75,2))
DynamicVariables=1

;
[ToggleBackDrop]
Measure=Calc
Formula=(#BackDrop#=1 ? 140 : 1)
Substitute="140":"On","1":"Off"
DynamicVariables=1

[ToggleTimeHidden]
Measure=Calc
Formula=(#TimeHidden#=1 ? 0 : 1)
Substitute="0":"On","1":"Off"
DynamicVariables=1

[ToggleDateHidden]
Measure=Calc
Formula=(#DateHidden#=1 ? 0 : 1)
Substitute="0":"On","1":"Off"
DynamicVariables=1

[ToggleWeatherHidden]
Measure=Calc
Formula=(#WeatherHidden#=1 ? 0 : 1)
Substitute="0":"On","1":"Off"
DynamicVariables=1

;=== Shut Clock off for 10 seconds
;    so you can click something behind it
[HideFor10]
Measure=Calc
OnUpdateAction=[!Show][!DisableMeasure "HideFor10"]
UpdateDivider=10
Disabled=1

;=== Positioning Formulas
[YHeader]
Measure=Calc
Formula = ((17/#Scale#)+1)
DynamicVariables=1

[YTime]
Measure=Calc
Formula = (((45/#Scale#)+1)*(#TimeHidden#=0?1:0))
DynamicVariables=1

[YDate]
Measure=Calc
Formula = (((40/#Scale#)+1)*(#DateHidden#=0?1:0))
DynamicVariables=1

[YWeather]
Measure=Calc
Formula = (((36/#Scale#)+1)*(#WeatherHidden#=0?1:0))
DynamicVariables=1



;=== Background Bars
[BackgroundTop]
Meter=Shape
Shape=Rectangle 0,0,(280/#Scale#),[YHeader:] | Fill Color 20,20,20,#BackDrop#  | StrokeWidth 0
Group=BackgroundGroup
MouseScrollDownAction=[!SetVariable Scale [ScaleDown:]]
MouseScrollUpAction=[!SetVariable Scale [ScaleUp:]]
DynamicVariables=1
;UpdateDivider=-1

[BackgroundTime]
Meter=Shape
Shape=Rectangle 0,[YHeader:],(280/#Scale#),[YTime:] | Fill Color 20,20,20,#BackDrop#  | StrokeWidth 0
Group=BackgroundGroup | TimeGroup
MouseScrollDownAction=[!SetVariable Scale [ScaleDown:]]
MouseScrollUpAction=[!SetVariable Scale [ScaleUp:]]
DynamicVariables=1
;UpdateDivider=-1
Hidden = #TimeHidden#

[BackgroundDate]
Meter=Shape
Shape=Rectangle 0,([YHeader:]+[YTime:]),(280/#Scale#),[YDate:] | Fill Color 20,20,20,#BackDrop# | StrokeWidth 0
Group=BackgroundGroup | DateGroup
MouseScrollDownAction=[!SetVariable Scale [ScaleDown:]]
MouseScrollUpAction=[!SetVariable Scale [ScaleUp:]]
DynamicVariables=1
;UpdateDivider=-1
Hidden = #DateHidden#

[BackgroundWeather]
Meter=Shape
Shape=Rectangle 0,([YHeader:]+[YTime:]+[YDate:]),(280/#Scale#),[YWeather:] | Fill Color 20,20,20,#BackDrop# | StrokeWidth 0
Group=BackgroundGroup | WeatherGroup
MouseScrollDownAction=[!SetVariable Scale [ScaleDown:]]
MouseScrollUpAction=[!SetVariable Scale [ScaleUp:]]
DynamicVariables=1
;UpdateDivider=-1
Hidden=#WeatherHidden#

[BackgroundEnd]
Meter=Shape
Shape=Rectangle 0,([YHeader:]+[YTime:]+[YDate:]+[YWeather:]),(280/#Scale#),[YHeader:] | Fill Color 20,20,20,#BackDrop#  | StrokeWidth 0
Group=BackgroundGroup
MouseScrollDownAction=[!SetVariable Scale [ScaleDown:]]
MouseScrollUpAction=[!SetVariable Scale [ScaleUp:]]
DynamicVariables=1
;UpdateDivider=-1


;=======================================================
;*******************************************************

;--- Time
;
[MeasureTime]
Measure=Time
Format=%#I:%M %p

[MeterTime]
MeasureName=MeasureTime
Meter=STRING
Group=TimeGroup
X=#XEdge#
Y=4
MeterStyle=DisplayStyle1
FontColor=#White#
FontSize=(40/#Scale#)
InlineSetting=Size | (12/#Scale#)
InlinePattern=( )
AntiAlias=1
DynamicVariables=1
Hidden = #TimeHidden#

;--- Date
;
[MeasureDate]
Measure=Time
Format=%d

[MeasureMonth]
Measure=Time
Format=%B

[MeasureDay]
Measure=Time
Format=%A

[MeterDate]
Meter=STRING
MeasureName=MeasureDate
Group=DateGroup
X=#XEdge#
Y=([YTime:]+6)
MeterStyle=DisplayStyle1
FontColor=#Gray#
FontSize=(36/#Scale#)
AntiAlias=1
DynamicVariables=1
Hidden = #DateHidden#

[MeterMonth]
Meter=STRING
MeasureName=MeasureMonth
Group=DateGroup
X=((71+#XEdge#)/#Scale#)r
Y=(8/#Scale#)r
MeterStyle=DisplayStyle1
FontColor=255,80,120,200
FontSize=(18/#Scale#)
InlineSetting=Case | Upper
AntiAlias=1
DynamicVariables=1
Hidden = #DateHidden#

;monday, etc
[MeterDay]
MeasureName=MeasureDay
Meter=STRING
Group=DateGroup
X=r
Y=(-11/#Scale#)R
MeterStyle=DisplayStyle1
FontColor=#Gray#
FontSize=(15/#Scale#)
InlineSetting=Case | Upper
AntiAlias=1
DynamicVariables=1
Hidden = #DateHidden#

;--- Weather
;
[GetWeather]
Measure=Plugin
Plugin=WebParser
UpdateRate=#UpdateWeatherSeconds#
Url=http://www.freeweather.com/cgi-bin/weather/weather.cgi?pands=02346&daysonly=0&maxdays=1
RegExp=(?siU)>Currently:</td>.*> (.*)</td>.*>Temp:</td>.*> (.*)</td>.*>Humidity:</td>.*> (.*)</td>.*</table>
FinishAction=[!UpdateMeter "MeterTemp"][!UpdateMeter "MeterDesc"][!UpdateMeter "MeterWeatherHumidity"]

;

[MeasureWeatherDesc]
Measure=Plugin
Plugin=WebParser
Url=[GetWeather]
StringIndex=1
UpdateDivider=-1

[MeasureWeatherTemp]
Measure=Plugin
Plugin=WebParser
Url=[GetWeather]
StringIndex=2
DecodeCharacterReference=1
UpdateDivider=-1

[MeasureWeatherHumidity]
Measure=Plugin
Plugin=WebParser
Url=[GetWeather]
StringIndex=3
RegExpSubstitute=1
Substitute="^(\d{1,3})%":"Humidity: \1%"
UpdateDivider=-1

;

[MeterTemp]
MeasureName=MeasureWeatherTemp
Meter=STRING
Group=WeatherGroup
X=#XEdge#
Y=([YTime:]+[YDate:]+7)
;/#Scale#))
MeterStyle=DisplayStyle1
FontSize=(30/#Scale#)
InlineSetting=Size | (16/#Scale#)
InlinePattern=F
Antialias=1
DynamicVariables=1
;UpdateDivider=-1
Hidden=#WeatherHidden#

[MeterDesc]
MeasureName=MeasureWeatherDesc
Meter=STRING
Group=WeatherGroup
X=((98+#XEdge#)/#Scale#)
Y=(8/#Scale#)r
MeterStyle=DisplayStyle1
FontSize=(14/#Scale#)
InlineSetting=Case | Upper
Antialias=1
DynamicVariables=1
;UpdateDivider=-1
Hidden=#WeatherHidden#

[MeterWeatherHumidity]
MeasureName=MeasureWeatherHumidity
Meter=STRING
Group=WeatherGroup
X=r
Y=(20/#Scale#)r
MeterStyle=DisplayStyle1
FontSize=(10/#Scale#)
Antialias=1
Text=%1
DynamicVariables=1
;UpdateDivider=-1
Hidden=#WeatherHidden#
You do not have the required permissions to view the files attached to this post.
[hr][/hr][hr][/hr]
"If you are the smartest one in the room, you are in the wrong room."
User avatar
CyberTheWorm
Posts: 801
Joined: August 22nd, 2016, 11:32 pm
Location: Surrey, B.C., Canada

Re: Clock, Date, Current Weather (my first shared skin)

Post by CyberTheWorm »

Good, job. :thumbup:

Only comment I have it that site only has USA weather. I wanted to try it out but live in Canada.
The only source of knowledge is experience. Albert Einstein
Deviant Art Page
User avatar
Codger
Posts: 97
Joined: May 29th, 2017, 3:16 pm

Re: Clock, Date, Current Weather (my first shared skin)

Post by Codger »

CyberTheWorm wrote:Good, job. :thumbup:

Only comment I have it that site only has USA weather. I wanted to try it out but live in Canada.
I liked that page in testing because it loads the fastest and has yet to be down. But soon I'll be back in Thailand and be forced to rewrite that part. I'd love to find a simple plain text page like I stumbled into on ip to address. Anyway, keep an eye open. Should be less than a month.

And thanks.
[hr][/hr][hr][/hr]
"If you are the smartest one in the room, you are in the wrong room."