From 045df22d5bfa1ca023360fd73a9768348a88ddab Mon Sep 17 00:00:00 2001 From: mashiros <490328928@qq.com> Date: Fri, 8 Apr 2022 17:22:11 +0800 Subject: [PATCH] initial push --- Images/Weather/Cloudy.png | Bin 0 -> 4997 bytes Images/Weather/Fog.png | Bin 0 -> 4706 bytes Images/Weather/HeavyRain.png | Bin 0 -> 6278 bytes Images/Weather/HeavySnow.png | Bin 0 -> 5427 bytes Images/Weather/LightRain.png | Bin 0 -> 5712 bytes Images/Weather/LightSleet.png | Bin 0 -> 6361 bytes Images/Weather/LightSnow.png | Bin 0 -> 5472 bytes Images/Weather/PartlyCloudy.png | Bin 0 -> 4156 bytes Images/Weather/Showers.png | Bin 0 -> 5577 bytes Images/Weather/SnowShowers.png | Bin 0 -> 5870 bytes Images/Weather/Sunny.png | Bin 0 -> 4010 bytes Images/Weather/ThunderyHeavyRain.png | Bin 0 -> 6356 bytes Images/Weather/ThunderyShowers.png | Bin 0 -> 5517 bytes Images/Weather/Unknown.png | Bin 0 -> 9124 bytes Images/Weather/VeryCloudy.png | Bin 0 -> 5534 bytes Presets/TopUI/preset.json | 4 + Presets/TopUI/preview.png | Bin 0 -> 23392 bytes Presets/TopUI/settings.xml | 4 + Previews/BottomUI.png | Bin 0 -> 2810 bytes Previews/TopUI.png | Bin 0 -> 22087 bytes Previews/Weather.png | Bin 0 -> 11567 bytes package.json | 77 ++++++ qml/BottomUI.qml | 208 ++++++++++++++ qml/TopUI.qml | 520 +++++++++++++++++++++++++++++++++++ qml/WeatherWidget.qml | 509 ++++++++++++++++++++++++++++++++++ qml/utils.js | 53 ++++ 26 files changed, 1375 insertions(+) create mode 100644 Images/Weather/Cloudy.png create mode 100644 Images/Weather/Fog.png create mode 100644 Images/Weather/HeavyRain.png create mode 100644 Images/Weather/HeavySnow.png create mode 100644 Images/Weather/LightRain.png create mode 100644 Images/Weather/LightSleet.png create mode 100644 Images/Weather/LightSnow.png create mode 100644 Images/Weather/PartlyCloudy.png create mode 100644 Images/Weather/Showers.png create mode 100644 Images/Weather/SnowShowers.png create mode 100644 Images/Weather/Sunny.png create mode 100644 Images/Weather/ThunderyHeavyRain.png create mode 100644 Images/Weather/ThunderyShowers.png create mode 100644 Images/Weather/Unknown.png create mode 100644 Images/Weather/VeryCloudy.png create mode 100644 Presets/TopUI/preset.json create mode 100644 Presets/TopUI/preview.png create mode 100644 Presets/TopUI/settings.xml create mode 100644 Previews/BottomUI.png create mode 100644 Previews/TopUI.png create mode 100644 Previews/Weather.png create mode 100644 package.json create mode 100644 qml/BottomUI.qml create mode 100644 qml/TopUI.qml create mode 100644 qml/WeatherWidget.qml create mode 100644 qml/utils.js diff --git a/Images/Weather/Cloudy.png b/Images/Weather/Cloudy.png new file mode 100644 index 0000000000000000000000000000000000000000..bac0eb96dd52d7ee1338850162cbbd7c414adad7 GIT binary patch literal 4997 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 A-T(jq literal 0 HcmV?d00001 diff --git a/Images/Weather/HeavyRain.png b/Images/Weather/HeavyRain.png new file mode 100644 index 0000000000000000000000000000000000000000..2aa2c52829d0f3da59358d1029670cd59aa764e9 GIT binary patch literal 6278 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 P)^v7U>yW)7VAuZuoIo!i literal 0 HcmV?d00001 diff --git a/Images/Weather/LightRain.png b/Images/Weather/LightRain.png new file mode 100644 index 0000000000000000000000000000000000000000..94b6cdc0d6de1aa2674b0882428521c54a84834f GIT binary patch literal 5712 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 Q{ms|kH^`^ND{krk0CJ9^aR2}S literal 0 HcmV?d00001 diff --git a/Images/Weather/LightSleet.png b/Images/Weather/LightSleet.png new file mode 100644 index 0000000000000000000000000000000000000000..1e69b8ad4aeb985ba28f7853048054dbcaeb89d7 GIT binary patch literal 6361 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 F{SW!1#@PS> literal 0 HcmV?d00001 diff --git a/Images/Weather/LightSnow.png b/Images/Weather/LightSnow.png new file mode 100644 index 0000000000000000000000000000000000000000..8f1b644c3e15cede75fef1fc4a795595f5905de3 GIT binary patch literal 5472 zcmcIo30zZG)(>K!hE-%AlxLtylt=bJq6lFTP<9Xjk@AxF0+En}By0j2Vk;;vXZ;Ixpg(=)_iNWAh{P0LwWPm@5 zD@t;LU=as#N>37_)ELZMw{$VYO+;h>2Z`qkUGa~Op1=cq*cHE+9zY5Zdm;&Z-{le{ zY8J`x;&HY@>6n>NgAvmqF_G*<(x@~-2y@5j#3>TN2sq3oA_61{ z5z3?}EqR<)oFI~kqzR%=upWQ?F94`%0|Le|J}OI6(l~@v=ADYFF=mjDQcJ@##0W7I zk&03zT*NyS71QpWHd0wA@`pV?<2Xt_a#+mrlpv5yBncOZ1n;~Y{7zrM(^KPBCg8A` zFN8&DQi29>>Ns=JcVEiN~9wCZ_@pxd|4J=QQKqNtdQR%4f@B4Xr21`Ud zz5sn84fXK={JcFGWF~_FQk=*m;syk;{De{&B;+D~UaojlS0_FnWh(u*_=^&RxB7ulA zjSDiV91=+8(42WxnCwEMA@8^aN%&|&LxT6YYNUcujxG?)qmk$wkVEE?K?3t|nX&7(cen|A@Cf%PwQ*(-IJr>7T^#D7sX{lchltgdLB1_H)vN_(}Oi!c;`^ zo(5t_0-?ngkw{(fJc%d?7!PScCITR_Sit8(8r_MhLU^p8jawA|NgOGZ`sY?+kRgap za)v<~8a^P&nMMO4GLr@(5Q9#p@gO?Q1&!%Z^*?4MI+H~jPv8HimB!d}6Chzcf_5w7 zf1nSQOeZtBXjbufE=-WZpt*od*ck%393GuXg&7nokMe1K{;eGS@AcvSWgPs4>ow6a z9x9)<8;nT!??uA<(KapuFcNqF9lXDcyU(kopNhNxrJqKs*J$Y>{(Ds#U3-lhbG{}` zM_MlHWA*2ABN6SvEVMU_cZ>g1T_3|2{ippwQ$R)(fA3=TZVSDwX{O`XM07EJ(L{u3 zzDm$*WbQYEPtn^c+V9xm>74_`i3b-UQ*(FZtVvk#<&5xI;3k#34JltP4t7rtrj(vs zFe8L*+ziZ4SzDkJ2I=IlIn&}`ck*i2mso1B-V>FVY*(H@?W-uO)?0({rLPW}C%g8i zRW&|Gs$RTooqH;`ru~=x!QXe(Tv>iVCX)g9+%x&WZUB$Ne>i-&GfH*G+c?B{GIsKZ z!^jSy0+?JjQ*16Ki@}4&>6l2}ehf=qtk#J$J7~F0H^xvOdrSUurD@sg3@T~58RR+3 zy-}d`P?x8zZRW*p-b&4Rsosb)*=^oF!C9+U+tt*I-ASH_sgdt3wD*qhpLlP=%-MO0 zT2Cj;R?ORFhb(oU%sTjmiznN(%*<+1C7()Qb+fx<*bpVJY|i7$s=Q=CPhL;RQ_yB{ zi-x*xI;3K#D9&2{`r5_ir5sr=j9+$0cf6X9fH-J+)ugXcnPC7)Hdi8J7XCFx?lJEn8v5R&(+zvLzHWeCmM9GNS zX?xni^@YL`erXdIRjj&!vJ0KP@t)&;x_XE) z^d?t3?b7rn0V;W0H7P!%RjZ*kYCvCi+WrQ6+=XK?1*OUkEpF$r)jUjlZ@OqPs#5

?7r3 z^(u_V^#Qarli|&0a0d#SXilV5_Y;1}yi|Tx)!0O#kCtaf^cn^LbEps-|5Wa5Nc)bW zr3!U>T{(|VgXMp>({*77z26eNws`B`jLrrxxxv`EG$lOAQtOp)%NI^*oMdy9!0erN zspL=yGEP%6Nx9g@zNm0jL5tZ6Cc*Ghw0)9|<8^W2BRcC+xWqE1?bDy8PV9MPCj7oS zOrHf{CU66xh*VJ23zE(BhCBuPH#SSp-c%x&4(${Q2{gHPCNc|tsec&;nb%7}kUH!C zEQ?}m1et)vY&?+S;DAb*l-EKKfqyFla&185RuPk200<`ud3YpB^;}`!7Ms^@ zmC}BX3f=H3IDVn0Q%x$}+AcCX_oC4q8FL8Qy-%mGpYusc4&1`hmy{4?8 zq3CHm`9Fk_F^%f1k1y}AE}mpTE70cutLmlpRKS_2hP-P-0VRa_byd(jo;8?D5yS|; zCCqO2wJH93`bmk1D1H}T`ck|oixEIar?ldHr@EK+qqnQaCv9TCZcqcJN!4=ivns8v z)ZH@Ur+0GFBDqem1hvO?pF1JY@+~35AiDFJRHn*E{2L{5*tQjPqe40yJ@x717GJ&Z zYfW>O`$pkZmVkj>{YO4!37+mg-9h)`PD*JgFxDFq47&B-^YN&|A~X_hjQ=>K<)s6S z;3mw-ca;G$VGZB8BcaP~rNKJKSLeMf8r|B_p(f99`iW@@BNTE=;9mx`Gf?aS0zRtL zyxZq?Xx%ou7Fe;;f+%^Nk`lDKQonkL>*(mX{>q@~aI`<@zV)ief9j#f*})n(=-OY%@8JgfVnj;Ble;24WjT-2~e<9>cFNJnFW1}@j z0oiDshg!Z0uT+u%BTF{m&{p?m@nOEWf&14^e)Y5m!V?Vs>7fn-K+P}VuEpuo*1IZM_?E;14DvQ+{VEkZvjNa64rhpf

Pv96TGCNJrvtjAoOo!4Bed%P392^?(wHT3C+ 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 + + {"Circle Color":"#fffcf9","Line Color":"#fffcf9","Line Width":38,"Shadow Color":"#e0e0e0","Shadow Size":0.5,"Battle UI":true,"Clock Visible":true,"Full Clock":true,"Font Color":"#f5f5f5","Font Size":44,"Font Name":0,"Font Weight":0,"Text Vertical Offset":16} + \ No newline at end of file diff --git a/Previews/BottomUI.png b/Previews/BottomUI.png new file mode 100644 index 0000000000000000000000000000000000000000..e1ea886fe558b978dd6b0f4fd789a5b582bd691e GIT binary patch literal 2810 zcmd5;`#02EAD&7XI!-RhoFbW2GBUZ&!Qf!TP;?w$la59aB9}Sl71PM=C|;CH3}akc zk;``&x2SnF633m9d*e1qGb8sgq}=A6{)hL6_p{b#@4fa~dw-twe4f46^Y5!pc5<@E zWg!rV9M&G=0)ZU3D_NtVha}^-QMk2ak|Ef;6CseF|M`*ovJgL?fIws`uox@Xh`gmK zXXn#hzjO!%LTp(Rm{Drho31eB2R@Z<^T1l!0^DPc~4C_BqxjBGs3lPn_j100C-YQW#*i5fCk?irvsYx5b0)P3U=S2lQz(}D6Hrp+{!KV|C66N*6ASvSdJF#40VvV}eRordf_}Bfn=fOe`5ZYWB2N3TvH~e4+uoi)-6s#hZv~N2G|U@ z0znUR%_Mmge9{4<3rcKZis{=gKQBZgAa7i(Ftt~f8cv;u6BVdb&Si`*n@LUV?e^w1 zz#4V7uo)HkA-)C%G#<&q%*2E$LoaBi+g>|R&`kLCvPJaXBwO@G%{!3hKG8c4AG{u) zS1<2MoXprFywvx6&_vA=3{`z+3Quj`5Po<)SOZIT(LS7MD}zt@tMc|$2Oi0{K}dox z@E&E2Jr1iP^^EQ0Q+M&0X^X*45e5*Shl?2$_wMH}*K~byXa(enosu!#{%pP~{dE;y zcPw_rMSI`X(bkXphLruYK2s!HF4h4IhT-Bf(sG5bFFRVxh@(jqApM*wbM zF!#d46Tq!=3cpyazL=(QJS`qrEY{za90O-LZD>h7LQ(-_i9KHb0kMq=l1ZwYw)r02;F zSoQ;erPbaoD4QQPLFM-gdSY@kyVh4%3A&l(pR!I@+@gJ1UJf?ssSU2WBPc^Zq z_77p~u)d1BzG{L={fk{;_VdH>#i0@Nu6#T>A}KV1{*uOc@78}I-!j`lUV8;0oc8lI zM%C%Wr=7uOw884ULa-DcPM|Rj`ISOAAcekk^K_Zj=lMex*cz2lGPi8`;l^|+cz>Y@ z2L#!dcUv(KYNOzZZc%teQpD2RQd@Vq1jMasRjFiOUzOV9Qb?~96*f~O-|~+MN;vJj zhAz~^>QgVDecE4W>HP3&;)RWIv3zrDr4%S{Jx1m})>}Rr>i{I*1lGe{>k)7i`@*=R z?f_>!`~3~a>&B0YyLWuP=XoJ9&|4Cei=~B8xvXfhg*d73L`0gjlyThg0;MS~*STcK zU$nSb@g?uiWh7%+kK)itmw8ejTN8m#so65U;La-JY~`x&$mDobDi$Pn7LWG^J_nV6 z{2UGwbn;4R6JmgKY$g_Z>l3RmUY;!z7oihhkMoL-w%pwq^CUmMl3h8%Qglkf*0rI`I zfoRxI?b6cHqSEba->&1k#ZY8=)b`S={Cka4MD~U?)Ero%2RH*{y>|S7N_rD@15;cI zvYsR1yKUai3^apspC5) zXy*`2VM}7{lF@RJsZ6tEs_u&`b-rsvIWNdKdjTlt&AVPnGesT*c}2wK zH>zb4*%teonxN5n&{)}KC8kET!Y~9)ogw6?s;h_B=`57^kIQK+y8eBW6cSxyWUFme zt*DsHHF>rBq{N`S;w#o)`6|%i>!w}PF%ixY=$xHME3^ogP>nRLPA~XeNpNR zwsm}OFUs^}s)16ass3vG4Im_|NQnk*0pf7Z->_73U*03CpEiwC(~2v5ern9{Y`RLebg%;&kexqjzuC&5Rw{N)7rPy^VV z9T*t!RNoGJY8S=Q!kvlvo4cClF*$?yizlv(!p7h9R<+=`3hSrZev9?YahV{+3{{pr+GVcHY literal 0 HcmV?d00001 diff --git a/Previews/TopUI.png b/Previews/TopUI.png new file mode 100644 index 0000000000000000000000000000000000000000..fcd121ff1edb55a8a5df277e3ba4aa909fef0226 GIT binary patch literal 22087 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 literal 0 HcmV?d00001 diff --git a/Previews/Weather.png b/Previews/Weather.png new file mode 100644 index 0000000000000000000000000000000000000000..aca1ec2a262aa46834971d10423ce31e7e244b5e GIT binary patch literal 11567 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.12", + "nvg.api": "~1" + }, + + "resources": [ + { + "location": "/widget/topui", + "catalog": "widget", + "title": { + "en": "Ordinal Scale Top UI", + "zh": "序列之争顶部UI" + }, + "preview": "Previews/TopUI.png", + "entry": "qml/TopUI.qml" + }, + { + "location": "/widget/bottomui", + "catalog": "widget", + "title": { + "en": "Ordinal Scale Bottom UI", + "zh": "序列之争底部UI" + }, + "preview": "Previews/BottomUI.png", + "entry": "qml/BottomUI.qml" + }, + { + "location": "/widget/weather", + "catalog": "widget", + "title": { + "en": "Ordinal Scale Weather Widget", + "zh": "序列之争天气挂件" + }, + "preview": "Previews/Weather.png", + "entry": "qml/WeatherWidget.qml" + }, + { + "location": "/preset/widget/topui", + "catalog": "preset/widget", + "title": { + "en": "Ordinal Scale Top Battle UI", + "zh": "序列之争顶部战斗UI" + }, + "preview": "Presets/TopUI/preview.png", + "entry": "Presets/TopUI/preset.json" + } + ] +} \ No newline at end of file diff --git a/qml/BottomUI.qml b/qml/BottomUI.qml new file mode 100644 index 0000000..68cf5b9 --- /dev/null +++ b/qml/BottomUI.qml @@ -0,0 +1,208 @@ +import QtQuick 2.12 +import QtQuick.Controls 2.12 +import QtQuick.Layouts 1.12 + +import NERvGear 1.0 as NVG +import NERvGear.Controls 1.0 +import NERvGear.Templates 1.0 as T +import NERvGear.Preferences 1.0 as P + +T.Widget { + id: widget + solid: true + visible: true + title: qsTr("Ordinal Scale Bottom UI widget") + + property real thour: 0 + property real t12hour: 0 + property real tmin: 0 + editing: styleDialog.active + + readonly property var configs: widget.settings.styles ? widget.settings.styles : {"Circle Color":"#fffcf9","Line Color":"#fffcf9","Line Width":38,"Shadow Color":"#e0e0e0","Shadow Size":0.5,"Battle UI":false,"Clock Visible":true,"Full Clock":true,"Font Color":"#f5f5f5","Font Size":44,"Font Name":0,"Font Weight":0,"Text Vertical Offset":16} + + property string line_color: configs["Line Color"] + property string shadowColor: configs["Shadow Color"] + property real shadowBlur: configs["Shadow Size"] + + readonly property real h: Math.min(widget.width, widget.height) + readonly property real w: widget.width + readonly property real r: (w**2+4*h**2)/2/h + + property real triangle_size: 24 + + Canvas { + id: triangle + anchors.centerIn: parent + anchors.verticalCenterOffset: height/2 + width: triangle_size + height: triangle_size*Math.sin(Math.PI/6) + contextType: "2d" + onPaint: { + context.reset(); + context.clearRect(0,0,width,height); + context.shadowBlur = shadowBlur; + context.shadowColor = shadowColor; + context.lineWidth = Math.max(0.08*configs["Line Width"] - shadowBlur, 0.1); + context.strokeStyle = line_color; + context.beginPath(); + context.moveTo(0,0); + context.lineTo(width/2, height); + context.lineTo(width, 0); + context.lineTo(0, 0); + context.fillStyle = line_color; + context.fill(); + } + } + + Canvas { + id: line + anchors.centerIn: parent + width: widget.width + height: widget.height + contextType: "2d" + onPaint: { + context.reset(); + context.clearRect(0,0,width,height); + context.shadowBlur = shadowBlur; + context.shadowColor = shadowColor; + context.lineWidth = Math.max(0.08*configs["Line Width"] - shadowBlur, 0.1); + context.strokeStyle = line_color; + let deg = Math.asin(w/2/r)*0.95; + context.beginPath(); + context.arc(w/2, r+h/2, r-shadowBlur/2, deg+Math.PI*3/2, -deg+Math.PI*3/2, true); + context.stroke(); + } + } + + menu: Menu { + Action { + text: qsTr("Settings") + "..." + onTriggered: styleDialog.active = true + } + } + + Loader { + id: styleDialog + active: false + sourceComponent: NVG.Window { + id: window + title: qsTr("Settings") + visible: true + minimumWidth: 380 + minimumHeight: 500 + width: minimumWidth + height: minimumHeight + + transientParent: widget.NVG.View.window + + property var configuration + + Page { + id: cfg_page + anchors.fill: parent + + header: TitleBar { + text: qsTr("UI Settings") + + standardButtons: Dialog.Save | Dialog.Reset + + onAccepted: { + configuration = rootPreference.save(); + widget.settings.styles = configuration; + styleDialog.active = false; + } + + onReset: { + rootPreference.load(); + let cfg = rootPreference.save(); + widget.settings.styles = cfg; + line.requestPaint(); + triangle.requestPaint(); + } + } + + ColumnLayout { + id: root + anchors.fill: parent + anchors.margins: 16 + anchors.topMargin: 0 + + Flickable { + Layout.fillWidth: true + Layout.fillHeight: true + + clip: true + contentWidth: preferenceLayout.implicitWidth + contentHeight: preferenceLayout.implicitHeight + + ColumnLayout { + id: preferenceLayout + width: root.width + + P.PreferenceGroup { + id: rootPreference + Layout.fillWidth: true + + label: qsTr("Configuration") + + onPreferenceEdited: { + widget.settings.styles = rootPreference.save(); + line.requestPaint(); + triangle.requestPaint(); + } + + P.ColorPreference { + name: "Line Color" + label: qsTr("Line Color") + defaultValue: "#fffcf9" + } + + P.SliderPreference { + name: "Line Width" + label: qsTr("Line Width") + from: 1 + to: 100 + stepSize: 1 + defaultValue: 38 + displayValue: value + "%" + } + + P.ColorPreference { + name: "Shadow Color" + label: qsTr("Shadow Color") + defaultValue: "#e0e0e0" + } + + P.SliderPreference { + name: "Shadow Size" + label: qsTr("Shadow Size") + from: 0 + to: 3 + stepSize: 0.1 + defaultValue: 0.5 + displayValue: Math.round(value*10)/10 + "px" + } + + Component.onCompleted: { + if(!widget.settings.styles) { + configuration = rootPreference.save(); + widget.settings.styles = configuration; + } + rootPreference.load(widget.settings.styles); + configuration = widget.settings.styles; + } + } + } + } + } + } + + onClosing: { + widget.settings.styles = configuration; + styleDialog.active = false; + line.requestPaint(); + triangle.requestPaint(); + } + } + } +} diff --git a/qml/TopUI.qml b/qml/TopUI.qml new file mode 100644 index 0000000..4a6632f --- /dev/null +++ b/qml/TopUI.qml @@ -0,0 +1,520 @@ +import QtQuick 2.12 +import QtQuick.Controls 2.12 +import QtQuick.Layouts 1.12 + +import NERvGear 1.0 as NVG +import NERvGear.Controls 1.0 +import NERvGear.Templates 1.0 as T +import NERvGear.Preferences 1.0 as P + +T.Widget { + id: widget + solid: true + visible: true + title: qsTr("Ordinal Scale Top UI widget") + + property real thour: 0 + property real t12hour: 0 + property real tmin: 0 + editing: styleDialog.active + + readonly property var configs: widget.settings.styles ? widget.settings.styles : {"Circle Color":"#fffcf9","Line Color":"#fffcf9","Line Width":38,"Shadow Color":"#e0e0e0","Shadow Size":0.5,"Battle UI":false,"Clock Visible":true,"Full Clock":true,"Font Color":"#f5f5f5","Font Size":44,"Font Name":0,"Font Weight":0,"Text Vertical Offset":16} + + property string circle_color: configs["Circle Color"] + property string line_color: configs["Line Color"] + property string shadowColor: configs["Shadow Color"] + property real shadowBlur: configs["Shadow Size"] + readonly property real size: 155 + + readonly property real h: Math.min(widget.width, widget.height) + readonly property real w: widget.width + readonly property real r: (w**2+h**2)/4/h + + readonly property var fonts: Qt.fontFamilies() + readonly property var fontweight: [Font.Light, Font.Normal, Font.Bold] + readonly property var sfontweight: [qsTr("Light"), qsTr("Normal"), qsTr("Bold")] + + Timer { + interval: 250 + running: text_clock.visible + repeat: true + onTriggered: { + var now = new Date(); + tmin = now.getMinutes(); + thour = now.getHours(); + if (!configs["Full Clock"]) + t12hour = thour > 12 ? thour - 12 : thour; + } + } + + Text { + id: text_clock + anchors.top: parent.top + anchors.topMargin: widget.height/200*configs["Text Vertical Offset"] + anchors.horizontalCenter: parent.horizontalCenter + color: configs["Font Color"] + text: configs["Full Clock"] ? ("0"+thour).slice(-2) + ":" + ("0"+tmin).slice(-2) : ("0"+t12hour).slice(-2) + ":" + ("0"+tmin).slice(-2) + font.pointSize: widget.height/200*configs["Font Size"] + font.family: fonts[configs["Font Name"]] + font.weight: fontweight[configs["Font Weight"]] + visible: widget.NVG.View.exposed && !configs["Battle UI"] && configs["Clock Visible"] + } + + Item { + id: circle + anchors.centerIn: parent + anchors.verticalCenterOffset: -2.5 + scale: widget.height/size/1.25 + visible: widget.NVG.View.exposed && configs["Battle UI"] + + Canvas { + id: c1 + anchors.centerIn: parent + width: size + height: size + contextType: "2d" + renderTarget: Canvas.FramebufferObject + renderStrategy: Canvas.Cooperative + onPaint: { + context.reset(); + context.clearRect(0,0,size,size); + context.shadowBlur = shadowBlur; + context.shadowColor = shadowColor; + context.lineWidth = size*0.04 - shadowBlur; + context.beginPath(); + context.arc(size/2, size/2, size*0.38-shadowBlur/2, -Math.PI/6, -Math.PI/6+Math.PI*2/3 , true); + context.strokeStyle = circle_color; + context.stroke(); + } + rotation: -140 + SequentialAnimation on rotation { + running: circle.visible + loops: Animation.Infinite + RotationAnimation { + duration: 1250 + easing.type: Easing.InOutCubic + from: -140 + to: 220 + } + RotationAnimation { + duration: 1250 + easing.type: Easing.InOutCubic + from: 220 + to: -140 + direction: RotationAnimation.Counterclockwise + } + } + } + + Canvas { + id: c2 + anchors.centerIn: parent + width: size + height: size + contextType: "2d" + renderTarget: Canvas.FramebufferObject + renderStrategy: Canvas.Cooperative + onPaint: { + context.reset(); + context.clearRect(0,0,size,size); + context.shadowBlur = shadowBlur; + context.shadowColor = shadowColor; + context.lineWidth = size*0.08 - shadowBlur; + context.beginPath(); + context.arc(size/2, size/2, size*0.30-shadowBlur/2, -Math.PI/6, -Math.PI/24+Math.PI*2/3 , true); + context.strokeStyle = circle_color; + context.stroke(); + } + rotation: 20 + NumberAnimation on rotation { + duration: 2800 + easing.type: Easing.Linear + from: 20 + to: 380 + loops: Animation.Infinite + running: circle.visible + } + } + + Canvas { + id: c3 + anchors.centerIn: parent + width: size + height: size + contextType: "2d" + renderTarget: Canvas.FramebufferObject + renderStrategy: Canvas.Cooperative + onPaint: { + context.reset(); + context.clearRect(0,0,size,size); + context.shadowBlur = shadowBlur; + context.shadowColor = shadowColor; + context.lineWidth = size*0.03 - shadowBlur; + context.beginPath(); + context.arc(size/2, size/2, size*0.23-shadowBlur/2, -Math.PI/6, Math.PI/12+Math.PI*2/3 , true); + context.strokeStyle = circle_color; + context.stroke(); + } + rotation: 90 + NumberAnimation on rotation { + duration: 2000 + easing.type: Easing.Linear + from: 90 + to: -270 + loops: Animation.Infinite + running: circle.visible + } + } + + Canvas { + id: c4 + anchors.centerIn: parent + width: size + height: size + contextType: "2d" + renderTarget: Canvas.FramebufferObject + renderStrategy: Canvas.Cooperative + onPaint: { + context.reset(); + context.clearRect(0,0,size,size); + context.shadowBlur = shadowBlur; + context.shadowColor = shadowColor; + context.lineWidth = size*0.06 - shadowBlur; + context.beginPath(); + context.arc(size/2, size/2, size*0.17-shadowBlur/2, -Math.PI/6, Math.PI/4+Math.PI*2/3 , true); + context.strokeStyle = circle_color; + context.stroke(); + } + rotation: -70 + SequentialAnimation on rotation { + running: circle.visible + loops: Animation.Infinite + RotationAnimation { + duration: 1150 + easing.type: Easing.InOutCubic + from: -70 + to: 290 + } + RotationAnimation { + duration: 1150 + easing.type: Easing.InOutCubic + from: 290 + to: -70 + direction: RotationAnimation.Counterclockwise + } + } + } + + Canvas { + id: c5 + anchors.centerIn: parent + width: size + height: size + contextType: "2d" + renderTarget: Canvas.FramebufferObject + renderStrategy: Canvas.Cooperative + onPaint: { + context.reset(); + context.clearRect(0,0,size,size); + context.shadowBlur = shadowBlur; + context.shadowColor = shadowColor; + context.lineWidth = size*0.1 - shadowBlur; + context.beginPath(); + context.arc(size/2, size/2, size*0.05-shadowBlur/2, 0, -Math.PI*2 , true); + context.strokeStyle = circle_color; + context.stroke(); + } + } + + Canvas { + id: c0 + anchors.centerIn: parent + width: size + height: size + contextType: "2d" + renderTarget: Canvas.FramebufferObject + renderStrategy: Canvas.Cooperative + onPaint: { + context.reset(); + context.clearRect(0,0,size,size); + context.shadowBlur = shadowBlur; + context.shadowColor = shadowColor; + context.lineWidth = size*0.16 - shadowBlur; + context.beginPath(); + context.arc(size/2, size/2, size*0.38-shadowBlur/2, 0, -Math.PI/3 , true); + context.strokeStyle = circle_color; + context.stroke(); + } + + NumberAnimation on rotation { + duration: 1500 + easing.type: Easing.Linear + from: 0 + to: 360 + loops: Animation.Infinite + running: circle.visible + } + } + } + + Canvas { + id: line + anchors.centerIn: parent + width: widget.width + height: widget.height + contextType: "2d" + onPaint: { + context.reset(); + context.clearRect(0,0,width,height); + context.shadowBlur = shadowBlur; + context.shadowColor = shadowColor; + context.lineWidth = Math.max(0.08*configs["Line Width"] - shadowBlur, 0.1); + context.strokeStyle = line_color; + let deg = Math.asin(w/2/r)*0.95; + context.beginPath(); + if (circle.visible) { + context.arc(w/2, -r+h/2, r-shadowBlur/2, deg+Math.PI/2, Math.PI/2+circle.scale*size/1.22/r, true); + context.stroke(); + context.beginPath(); + context.arc(w/2, -r+h/2, r-shadowBlur/2, -deg+Math.PI/2, Math.PI/2-circle.scale*size/1.22/r, false); + context.stroke(); + } else { + context.arc(w/2, -r+h/2, r-shadowBlur/2, deg+Math.PI/2, -deg+Math.PI/2, true); + context.stroke(); + } + } + } + + menu: Menu { + Action { + text: qsTr("Settings") + "..." + onTriggered: styleDialog.active = true + } + } + + Loader { + id: styleDialog + active: false + sourceComponent: NVG.Window { + id: window + title: qsTr("Settings") + visible: true + minimumWidth: 380 + minimumHeight: 500 + width: minimumWidth + height: minimumHeight + + transientParent: widget.NVG.View.window + + property var configuration + + Page { + id: cfg_page + anchors.fill: parent + + header: TitleBar { + text: qsTr("UI Settings") + + standardButtons: Dialog.Save | Dialog.Reset + + onAccepted: { + configuration = rootPreference.save(); + widget.settings.styles = configuration; + styleDialog.active = false; + } + + onReset: { + rootPreference.load(); + let cfg = rootPreference.save(); + widget.settings.styles = cfg; + line.requestPaint(); + c0.requestPaint(); + c1.requestPaint(); + c2.requestPaint(); + c3.requestPaint(); + c4.requestPaint(); + c5.requestPaint(); + } + } + + ColumnLayout { + id: root + anchors.fill: parent + anchors.margins: 16 + anchors.topMargin: 0 + + Flickable { + Layout.fillWidth: true + Layout.fillHeight: true + + clip: true + contentWidth: preferenceLayout.implicitWidth + contentHeight: preferenceLayout.implicitHeight + + ColumnLayout { + id: preferenceLayout + width: root.width + + P.PreferenceGroup { + id: rootPreference + Layout.fillWidth: true + + label: qsTr("Configuration") + + onPreferenceEdited: { + widget.settings.styles = rootPreference.save(); + line.requestPaint(); + c0.requestPaint(); + c1.requestPaint(); + c2.requestPaint(); + c3.requestPaint(); + c4.requestPaint(); + c5.requestPaint(); + } + + P.ColorPreference { + name: "Circle Color" + label: qsTr("Circle Color") + defaultValue: "#fffcf9" + } + + P.ColorPreference { + name: "Line Color" + label: qsTr("Line Color") + defaultValue: "#fffcf9" + } + + P.SliderPreference { + name: "Line Width" + label: qsTr("Line Width") + from: 1 + to: 100 + stepSize: 1 + defaultValue: 38 + displayValue: value + "%" + } + + P.ColorPreference { + name: "Shadow Color" + label: qsTr("Shadow Color") + defaultValue: "#e0e0e0" + } + + P.SliderPreference { + name: "Shadow Size" + label: qsTr("Shadow Size") + from: 0 + to: 3 + stepSize: 0.1 + defaultValue: 0.5 + displayValue: Math.round(value*10)/10 + "px" + } + + P.Separator {} + + P.SwitchPreference { + id: _cfg_battle_ui + name: "Battle UI" + label: qsTr("Battle UI") + defaultValue: false + } + + P.Separator {} + + P.SwitchPreference { + id: _cfg_clock_visible + name: "Clock Visible" + label: qsTr("Clock Visible") + visible: !_cfg_battle_ui.value + enabled: visible + defaultValue: true + } + + P.SwitchPreference { + name: "Full Clock" + label: qsTr("24 Hour Clock") + visible: !_cfg_battle_ui.value + enabled: visible && _cfg_clock_visible.value + defaultValue: true + } + + P.ColorPreference { + name: "Font Color" + label: qsTr("Font Color") + visible: !_cfg_battle_ui.value + enabled: visible && _cfg_clock_visible.value + defaultValue: "#f5f5f5" + } + + P.SliderPreference { + name: "Font Size" + label: qsTr("Font Size") + visible: !_cfg_battle_ui.value + enabled: visible && _cfg_clock_visible.value + from: 1 + to: 100 + stepSize: 1 + defaultValue: 44 + displayValue: value + "%" + } + + P.SelectPreference { + name: "Font Name" + label: qsTr("Font Style") + visible: !_cfg_battle_ui.value + enabled: visible && _cfg_clock_visible.value + icon.name: "solid:\uf1fc" + defaultValue: 0 + model: fonts + } + + P.SelectPreference { + name: "Font Weight" + label: qsTr("Font Weight") + visible: !_cfg_battle_ui.value + enabled: visible && _cfg_clock_visible.value + icon.name: "solid:\uf1fc" + defaultValue: 0 + model: sfontweight + } + + P.SliderPreference { + name: "Text Vertical Offset" + label: qsTr("Text Vertical Offset") + visible: !_cfg_battle_ui.value + enabled: visible && _cfg_clock_visible.value + from: -100 + to: 100 + stepSize: 1 + defaultValue: 16 + displayValue: value + "%" + } + + Component.onCompleted: { + if(!widget.settings.styles) { + configuration = rootPreference.save(); + widget.settings.styles = configuration; + } + rootPreference.load(widget.settings.styles); + configuration = widget.settings.styles; + } + } + } + } + } + } + + onClosing: { + widget.settings.styles = configuration; + styleDialog.active = false; + line.requestPaint(); + c0.requestPaint(); + c1.requestPaint(); + c2.requestPaint(); + c3.requestPaint(); + c4.requestPaint(); + c5.requestPaint(); + } + } + } +} diff --git a/qml/WeatherWidget.qml b/qml/WeatherWidget.qml new file mode 100644 index 0000000..34c522d --- /dev/null +++ b/qml/WeatherWidget.qml @@ -0,0 +1,509 @@ +import QtQuick 2.12 +import QtQuick.Controls 2.12 +import QtQuick.Layouts 1.12 + +import QtQuick.Shapes 1.1 + +import QtGraphicalEffects 1.12 + +import NERvGear 1.0 as NVG +import NERvGear.Controls 1.0 +import NERvGear.Templates 1.0 as T +import NERvGear.Preferences 1.0 as P + +import "utils.js" as Utils + +T.Widget { + id: widget + + title: qsTr("Weather Widget") + solid: true + + readonly property var fonts: Qt.fontFamilies() + readonly property var fontweight: [Font.Light, Font.Normal, Font.Bold] + readonly property var sfontweight: [qsTr("Light"), qsTr("Normal"), qsTr("Bold")] + + readonly property var configs: widget.settings.styles ?? {"Location":"","Display Location":"","Update Interval":{"Value":1,"Unit":1},"Background Color":"#ffa502","Background Opacity":60,"Area Opacity Difference":17,"Icon Color":"#fefefe","Temperature Text Settings":{"Font Color":"#f5f5f5","Font Size":90,"Font Name":fonts.length-1,"Font Weight":1,"X Offset":33,"Y Offset":32},"Area Text Settings":{"Font Color":"#f5f5f5","Font Size":60,"Font Name":fonts.length-1,"Font Weight":1,"X Offset":0,"Y Offset":-56,"Border Margin":40}} + + readonly property real w: widget.width + readonly property real h: 0.46*widget.width + + Item { + id: main + width: w + height: h + anchors.centerIn: parent + layer.enabled: true + layer.effect: OpacityMask{ + maskSource: Rectangle { + width: w + height: h + color: "black" + radius: h/15 + } + } + + Rectangle { + id: weather_box + width: w + height: h + anchors.left: parent.left + anchors.top: parent.top + opacity: configs["Background Opacity"]/100 + color: configs["Background Color"] + } + + Item { + id: sdialog + width: h/8 + height: h/8 + anchors.left: parent.left + anchors.leftMargin: h/16 + anchors.topMargin: h/14 + anchors.top: parent.top + + Shape { + anchors.fill: parent + ShapePath { + strokeWidth: parent.height/120 + strokeColor: configs["Icon Color"] + + startX: h/44; startY: h/800 + PathLine { x: h*0.10227272727272727; y: h/800 } + } + + ShapePath { + strokeWidth: parent.height/120 + strokeColor: configs["Icon Color"] + + startX: h/44; startY: h/800 + h/32 + PathLine { x: h*0.10227272727272727; y: h/800 + h/32 } + } + + ShapePath { + strokeWidth: parent.height/120 + strokeColor: configs["Icon Color"] + + startX: h/44; startY: h/800 + h/16 + PathLine { x: h*0.10227272727272727; y: h/800 + h/16 } + } + } + + MouseArea { + anchors.fill: parent + enabled: !styleDialog.active + onClicked: { + styleDialog.active = true; + } + } + } + + Item { + id: weather + width: 0.655*w + height: h + anchors.left: parent.left + anchors.top: parent.top + + Image { + id: weather_mask + anchors.centerIn: weather + autoTransform: true + visible: false + source: "../Images/Weather/Unknown.png" + } + + Rectangle { + id: wcolor + width: h/1.1 + height: h/1.1 + anchors.centerIn: weather + visible: false + color: configs["Icon Color"] + } + + OpacityMask { + anchors.fill: wcolor + source: wcolor + maskSource: weather_mask + } + } + + Rectangle { + id: temper_box + width: 0.345*w + height: h + anchors.right: parent.right + anchors.top: parent.top + opacity: configs["Background Opacity"]*configs["Area Opacity Difference"]/10000 + color: "black" + } + + Text { + id: area + anchors.centerIn: temper_box + anchors.horizontalCenterOffset: temper_box.width*configs["Area Text Settings"]["X Offset"]/200 + anchors.verticalCenterOffset: h*configs["Area Text Settings"]["Y Offset"]/200 + color: configs["Area Text Settings"]["Font Color"] + text: "" + font.pixelSize: w*0.0009*configs["Area Text Settings"]["Font Size"] + font.family: fonts[configs["Area Text Settings"]["Font Name"]] + font.weight: fontweight[configs["Area Text Settings"]["Font Weight"]] + + Rectangle { + anchors.fill: parent + anchors.margins: -area.font.pixelSize*configs["Area Text Settings"]["Border Margin"]/100 + color: "transparent" + border.color: configs["Area Text Settings"]["Font Color"] + border.width: area.font.pixelSize/15 + radius: area.font.pixelSize/3.5 + visible: Boolean(area.text) + } + } + + Text { + id: temperature + anchors.centerIn: temper_box + anchors.horizontalCenterOffset: temper_box.width*configs["Temperature Text Settings"]["X Offset"]/200 + anchors.verticalCenterOffset: h*configs["Temperature Text Settings"]["Y Offset"]/200 + color: configs["Temperature Text Settings"]["Font Color"] + text: "--°" + font.pixelSize: w*0.002*configs["Temperature Text Settings"]["Font Size"] + font.family: fonts[configs["Temperature Text Settings"]["Font Name"]] + font.weight: fontweight[configs["Temperature Text Settings"]["Font Weight"]] + } + } + + function setWeather() { + var xhr = new XMLHttpRequest(); + xhr.onreadystatechange = function() { + if(xhr.readyState === XMLHttpRequest.DONE) { + let data = xhr.responseText.toString(); + if (data) { + let jdata = JSON.parse(data); + temperature.text = jdata["current_condition"][0]["temp_C"] + "°"; + if (!configs["Display Location"] && !configs["Location"]) { + area.text = jdata["nearest_area"][0]["areaName"][0]["value"]; + } + weather_mask.source = "../Images/Weather/" + Utils.weather_codes[jdata["current_condition"][0]["weatherCode"]] ?? "Unknown" + ".png"; + } else { + weather_mask.source = "../Images/Weather/Unknown.png"; + } + } + } + if (configs["Location"]) + xhr.open("GET", 'https://wttr.in/'+configs["Location"]+'?format=j1'); + else + xhr.open("GET", 'https://wttr.in/?format=j1'); + xhr.send(); + if (configs["Display Location"]) { + area.text = configs["Display Location"]; + } else if (configs["Location"]) { + area.text = configs["Location"] + } + } + + Timer { + id: timer + interval: 600000 + running: widget.NVG.View.exposed + repeat: true + triggeredOnStart: true + onTriggered: { + setWeather(); + } + } + + menu: Menu { + Action { + text: qsTr("Settings") + "..." + onTriggered: styleDialog.active = true + } + + Action { + text: qsTr("Refresh") + onTriggered: timer.restart() + } + } + + Loader { + id: styleDialog + active: false + sourceComponent: NVG.Window { + id: window + title: qsTr("Settings") + visible: true + minimumWidth: 450 + minimumHeight: 550 + width: minimumWidth + height: minimumHeight + + transientParent: widget.NVG.View.window + + property var configuration + + Page { + id: cfg_page + anchors.fill: parent + + header: TitleBar { + text: qsTr("Settings") + + standardButtons: Dialog.Save | Dialog.Reset + + onAccepted: { + configuration = rootPreference.save(); + widget.settings.styles = configuration; + styleDialog.active = false; + timer.interval = 60000*configs["Update Interval"]["Value"]*(1+59*configs["Update Interval"]["Unit"]) + setWeather(); + } + + onReset: { + rootPreference.load(); + let cfg = rootPreference.save(); + widget.settings.styles = cfg; + } + } + + ColumnLayout { + id: root + anchors.fill: parent + anchors.margins: 16 + anchors.topMargin: 0 + + Flickable { + Layout.fillWidth: true + Layout.fillHeight: true + + clip: true + contentWidth: preferenceLayout.implicitWidth + contentHeight: preferenceLayout.implicitHeight + + ColumnLayout { + id: preferenceLayout + width: root.width + + P.PreferenceGroup { + id: rootPreference + Layout.fillWidth: true + + label: qsTr("Configuration") + + onPreferenceEdited: { + widget.settings.styles = rootPreference.save(); + } + + P.TextFieldPreference { + name: "Location" + label: qsTr("Location") + message: qsTr("Search address by location, latitude and longitude.") + } + + P.TextFieldPreference { + name: "Display Location" + label: qsTr("Display Location") + message: "The location to display in widget." + } + + P.DialogPreference { + name: "Update Interval" + label: qsTr("Update Interval") + live: true + displayValue: _cfg_update_interval_value.value + " " + [qsTr("Minutes"), qsTr("Hours")][_cfg_update_interval_unit.value] + + P.SpinPreference { + id: _cfg_update_interval_value + name: "Value" + from: 1 + to: 1440 + editable: true + defaultValue: 1 + } + + P.SelectPreference { + id: _cfg_update_interval_unit + name: "Unit" + label: qsTr("Unit") + defaultValue: 1 + model: [qsTr("Minutes"), qsTr("Hours")] + } + } + + P.ColorPreference { + name: "Background Color" + label: qsTr("Background Color") + defaultValue: "#ffa502" + } + + P.SliderPreference { + name: "Background Opacity" + label: qsTr("Background Opacity") + from: 0 + to: 100 + stepSize: 1 + defaultValue: 60 + displayValue: value + "%" + } + + P.SliderPreference { + name: "Area Opacity Difference" + label: qsTr("Area Opacity Difference") + from: 0 + to: 100 + stepSize: 1 + defaultValue: 17 + displayValue: value + "%" + } + + P.ColorPreference { + name: "Icon Color" + label: qsTr("Icon Color") + defaultValue: "#fefefe" + } + + P.DialogPreference { + name: "Temperature Text Settings" + label: qsTr("Temperature Text Settings") + icon.name: "solid:\uf1fc" + live: true + + P.ColorPreference { + name: "Font Color" + label: qsTr("Font Color") + defaultValue: "#f5f5f5" + } + + P.SliderPreference { + name: "Font Size" + label: qsTr("Font Size") + from: 1 + to: 100 + stepSize: 1 + defaultValue: 90 + displayValue: value + "%" + } + + P.SelectPreference { + name: "Font Name" + label: qsTr("Font Style") + defaultValue: fonts.length-1 + model: fonts + } + + P.SelectPreference { + name: "Font Weight" + label: qsTr("Font Weight") + defaultValue: 1 + model: sfontweight + } + + P.SliderPreference { + name: "X Offset" + label: qsTr("X Offset") + from: -100 + to: 100 + stepSize: 1 + defaultValue: 33 + displayValue: value + "%" + } + + P.SliderPreference { + name: "Y Offset" + label: qsTr("Y Offset") + from: -100 + to: 100 + stepSize: 1 + defaultValue: 32 + displayValue: value + "%" + } + } + + P.DialogPreference { + name: "Area Text Settings" + label: qsTr("Area Text Settings") + icon.name: "solid:\uf1fc" + live: true + + P.ColorPreference { + name: "Font Color" + label: qsTr("Font Color") + defaultValue: "#f5f5f5" + } + + P.SliderPreference { + name: "Font Size" + label: qsTr("Font Size") + from: 1 + to: 100 + stepSize: 1 + defaultValue: 60 + displayValue: value + "%" + } + + P.SelectPreference { + name: "Font Name" + label: qsTr("Font Style") + defaultValue: fonts.length-1 + model: fonts + } + + P.SelectPreference { + name: "Font Weight" + label: qsTr("Font Weight") + defaultValue: 1 + model: sfontweight + } + + P.SliderPreference { + name: "X Offset" + label: qsTr("X Offset") + from: -100 + to: 100 + stepSize: 1 + defaultValue: 0 + displayValue: value + "%" + } + + P.SliderPreference { + name: "Y Offset" + label: qsTr("Y Offset") + from: -100 + to: 100 + stepSize: 1 + defaultValue: -56 + displayValue: value + "%" + } + + P.SliderPreference { + name: "Border Margin" + label: qsTr("Border Margin") + from: 0 + to: 100 + stepSize: 1 + defaultValue: 40 + displayValue: value + "%" + } + } + + Component.onCompleted: { + if(!widget.settings.styles) { + configuration = rootPreference.save(); + widget.settings.styles = configuration; + } + rootPreference.load(widget.settings.styles); + configuration = widget.settings.styles; + } + } + } + } + } + } + + onClosing: { + widget.settings.styles = configuration; + styleDialog.active = false; + } + } + } +} diff --git a/qml/utils.js b/qml/utils.js new file mode 100644 index 0000000..9d32aad --- /dev/null +++ b/qml/utils.js @@ -0,0 +1,53 @@ +.pragma library + +// https://github.com/chubin/wttr.in/blob/master/lib/constants.py +var weather_codes = { + "113": "Sunny", + "116": "PartlyCloudy", + "119": "Cloudy", + "122": "VeryCloudy", + "143": "Fog", + "176": "Showers", + "179": "LightSleet", + "182": "LightSleet", + "185": "LightSleet", + "200": "ThunderyShowers", + "227": "LightSnow", + "230": "HeavySnow", + "248": "Fog", + "260": "Fog", + "263": "Showers", + "266": "LightRain", + "281": "LightSleet", + "284": "LightSleet", + "293": "LightRain", + "296": "LightRain", + "299": "Showers", + "302": "HeavyRain", + "305": "Showers", + "308": "HeavyRain", + "311": "LightSleet", + "314": "LightSleet", + "317": "LightSleet", + "320": "LightSnow", + "323": "SnowShowers", + "326": "SnowShowers", + "329": "HeavySnow", + "332": "HeavySnow", + "335": "SnowShowers", + "338": "HeavySnow", + "350": "LightSleet", + "353": "Showers", + "356": "Showers", + "359": "HeavyRain", + "362": "LightSleet", + "365": "LightSleet", + "368": "SnowShowers", + "371": "SnowShowers", + "374": "LightSleet", + "377": "LightSleet", + "386": "ThunderyShowers", + "389": "ThunderyHeavyRain", + "392": "SnowShowers", + "395": "SnowShowers" +}; \ No newline at end of file

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 SK34hv-qU@fTgBR)`~DkeaDc`D literal 0 HcmV?d00001 diff --git a/Images/Weather/Showers.png b/Images/Weather/Showers.png new file mode 100644 index 0000000000000000000000000000000000000000..62e9b83c3aa5f24bbe3f2c75ff8810d31852d02d GIT binary patch literal 5577 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 YtmQOH_=asKw7*FEPY)85dB-pPAJ3oHh5!Hn literal 0 HcmV?d00001 diff --git a/Images/Weather/Sunny.png b/Images/Weather/Sunny.png new file mode 100644 index 0000000000000000000000000000000000000000..751fcff575ea355553699772ebf07a622b65f38d GIT binary patch literal 4010 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 Vr$ZQUZUEpPXU1HQf}cZH{}0J!*ed`4 literal 0 HcmV?d00001 diff --git a/Images/Weather/ThunderyShowers.png b/Images/Weather/ThunderyShowers.png new file mode 100644 index 0000000000000000000000000000000000000000..4f9255884fb8f88eb4b97c994593007604897225 GIT binary patch literal 5517 zcmc&&2~<;8x4sE8C?G1LOqYn3DP$%j1q~)jkU>O7k?Kuy0})6d2?P)%@{1x0M6?2q zRiO?{BA@~VXNo9V(PB}NiYTHCRz(zwz8j|cx7zyN|K568E4k;KyXXDwefG*0Z!g!W z+HF*^q_M^ zk@gTz#DVSOBBKy$0B~9u7X@*{VJXOgLj^)-On=Q;3@G3^V*)6ic+V&%9425Vh~X6p zUcTIfa4wC9S-1dnilZX}B4H^6#zjU5CG0dJ3>ODQ;RyD4rAwoPJnkf2RE#)cR5_1}gCpQb zSSXbsw1i38s4$UKBncCJM)c(Ce^Y>j*3)xR$0u!xjGR;1{Ub4tOXrKkkq{CvK_nCkj+UDv1BfSR}PH~Q8}~;ewK(EqlA!>f2^8#A}%815Az)PJeWfyldu#An2hBS z$#^V>i-)lgp2j27C?tqSfF`6Z6AO@nh9W+es5}oXTm*%VuOb8sK5aCf%j3XADhK-(M=Fm3lldeH5#~7Ilog4H0LNBiVsU@3f3!~MY=P3A_;D*%z|oWTfTN{B zhq%g;cgAp)aD{o8@ngX!vh_uA8RwUU!HCem!SI-NiHI+iL1Ne?6v^zDlnL&$_KSqE zu=pbnq98GZG+S6KamMh)qDXKO(x6lXLQzo>0xqQV9TzL)jW@K(h+;mgM*_wEeUuys z5JbUKc~~+6A1t0qCSxH2jf{mM2MU4AhbUx6hlwbEDoPX@9Z#Mp-~VBh#*@GegM^_l za$Dj41AnMg4xY!Maj|3vDjv(HApoV(NF*$k0>dN{naCwjks2K{^soN>sU7{_`@{W5 z9Q;G-mFSp+%ID+8gT;c6knl0uCQSfGareKY?;mmZWxe$OBTu8V{0=#@+VRR8%>BqDb(9l0AOZ;Ss{Umw>m`cLl%Wdj*?{G-8Y;s}}6l*`F65!p-* zny?V5S1~e1rkRaoBh%?YH=GX$$F*?gicJrk19^mn5LPskyV=M+q5a2zjfPftpU>1UaWayI=p$IrMBK1m92{hU%qU%*!W$5DWjX@Va-upnv3 zm;vM)xoGKHo8U*^n*>pp60;d3KGaa)5ox=wgizuD-IE zumq)l?^tWi6vC3DW(d=XIRQm(*lq|YtI8^~HOkzP*;fl_$}eqt6o@h@-F^R(Ie-QU z9U102=gJO{e>i+w@w=)%pp`oJ%_Zsdp*$sfsc^`4Fx|3^!fw^$1~U5 z5U8OpS%D=(e#U9R`&g*FGlvJzu0T+1WysI!u2z;U?Z$Gur{%Wg{!HuH=3PWoJ0tIxeK-LLKjR!*Lh)|{}d!2jaV?oyi~O}SBq^U{VFtLD@#T2o|Uh|=GaS9s7i zG0aeHYoDb&fAC8GTJ4po3X`R$cLN+;m}&LWO_+fi6-7O;T(v7H;HF~bv~c6iKz6K{ zeRZjB2+XXea*9pN7*o`a&kHTFpSrpQcXxW(?PxPbb6--=TIa7UDlj+7?rOb@We*}r zv!0@VcI5-x;EiV0OI;aSjYa&sC9Y96;VNMC{Bwgp)l~_!qb#_IPBIGf1U7($e840+pAiAiBw|cbnTwR~PYYwBNG%-sjF^;KXn19y# z#B(Qk;t$WTVpmtK(CfBnmTxl}j8Edrj)om|W+d3fvI1%eln&{lgm{!i%ren0BEo?^oXCQhKJC zGyAv&_fYwTHKD?bWm~kfUy*)mQaRL{7yRm7#x4um>est9SV40)2K!~!P&Nfl1GfKY zHWw8itvFiDz9kPM22f(njwM-fuFaK8k3YYt>v5X%X#4VVTr(N;8B8~Q8C%qFrD?69 zeyS*az{))PU$>PT!Dah0*O~I7g4QBFYWo5^V!&g)Zoe6QUBT+SbG2)m)7dEle&upD zTDo-UaWv~BUKbmzUu~A%gjN{I^}kcml#}lpRuoti*M=MDUpCW}-{!g`0M=pW@ z&kL80gybI0dY}7h#77`if}+XOci!OeK+AA*h|Rs*Yuw$v085FXE!5tAevU~UuBGy# z;K!W`O;qdYDGd+M;6dt&Z)Z@OdY!Vx?QVfCgcCdVM^pUo1Hn>K#Fd**eEnG+*XiED z_Wp^Dy*G|L`w&iG1eka|pK8apJsz)OyjATQ1)S-QQx1(RJwzyFq&)7Nr&C#ZlRteEF zlT88xD^FxTy*r{=Sud5{3Ek53@nP(Z+qZ*^uyY$gSHWIItlED zHbY%CTOu=1mYMBCyU}$O+BW?b$NG#;obBs7AF$%Z{luH3q}hsYR+=^Q*HR>WR(u6)i`hI3A5&;yn=pLH`N9( zga@$vXAdc~GMN$24_dA3*3n@3scM1MzeWc-N(SbhS6xL#H&}F5s<2Z|ZZT+VEjV@y z%~cRK1#5#3*Z*!a&&s-JGx>c(nZz7uFvoMM@&SXJN0xaPe;t^cNVC`X0mML zP~hKnUhHzHqGF+|;Oeyt%X8MRK632@ik&j;m|Vy{L;tGg;hnDtW+P@-&8vov$?wqi z+a%Yf#zqagQ;q@phg)aqwffHu2$(rd(b~Oy^(pbOp2YB~SK4wr)wB&$FBi7B8rU{r zNqJTH9v~lL7{qvN`z9OXxQniRzcI8BwNP$^vV0i1{HDrq-T+)aI8C)wqyc82vtQg_ z^jg|eiSf8nHC=FD4V;QLc<8il7xzqET~F_lE|+SWH8vQfaG+{S)VntCosBv8*aXOT zVQ^#~6|2(Ca&rSwY_7a>%5_O-YEe#;N*an`aC^TPDGYv#FrzF{b~<~R?a*oeenXTZ1qeD>SdF{bzW;#ij)M=N z4+NnV0|wDQR$>~%n@o*>Y#l|&vojY%uVhwQ0zm#W27hM`t4f1)QY$Fodo6|ynpfYt zef@b$#wp``K$StZ9k!|e;Jr6%^#-&&7wG)g%WR8|4{=A|?KGGBYBy-uuDd;~QP5Pr z#Ra&e3g-B~`DJmM|85@A1=*;0uQsX6O{YCbm?D6atXpc`ZRW_>!9gozUV8HdZ{}}X zxI`b&pDy2Iq(bUVCeZ$$tR)FTB w&yH@$5ctV)PdNnsbv*oNXdE36z3oPHQrhshpLcQelz*7IE%suSELxNDU&|sVqyPW_ literal 0 HcmV?d00001 diff --git a/Images/Weather/Unknown.png b/Images/Weather/Unknown.png new file mode 100644 index 0000000000000000000000000000000000000000..6377c6a396946d1384c37d06303aed458f73f8bd GIT binary patch literal 9124 zcmch52Rz&DyLS?M?@>ilvs#g1#*Ct<(AKKiiX=2O5@OGwLx)kLMT-udRE=7tq-rZE zN~zr{O6^)T`bO9PIp;jj|9ReX&im%`iQK>Ycg^oL?%Q?YsD&{XyBIqF0N^q;F|?%r zHtl>_ndyHY+vR7`f7nPS_GAEnLty6%1Z3P01pwHS2-bFfcIIeJEYV8|gCn})m4duT zbZP)VTQ7)&!Fu5Rz^-_Ag13&;TxE?En1IufI<9ICGbb6~PZ3N)eDPKx7S`Ah4=fTV zrKbzl4$`Cx@WT6Hz(HP~-ek=n9jWhfHRqX;{PIn#wRuW%UCv4NVyA2dOy` zM{o=NucRuPbRuQse;}o&91i1$`CDQfR@05>>xH2MM)1P8A&AR2DS9jUHr${55iX-9ks^n%8C{!!|V zRXDmt4Ghjr1*Yl>afQ3VAqZ6!HwY35Q-&avF*q0uriw*qV0OypUz&eO(Wm=IrU#w; zvn&r{+<&e-3A%r7Gz^P##Us>_5W2H)2nc;Gb4l;eCGF1O8qbni%X($?HgAchVJ)llr+$_>*Y;BV2y+ z2cE*yh5nly{-K>rbn^?u_~P~5>5=^>Wdi+6`-$EGc;7#GK*IQ9=*<@IOV*Kc^CfzL zf2TCqj|j$)NS*{NX2*AEfH&@EL;H=W)L-f$V*>s?N@{QnMir)xgQ(Ec2Le;4XCVfT zRDs|zYN~J*H;k%^hT1Qb{|qHnq$W(|SNZ-oQTiDK>?w@5JDz@8LH`H-Al)<&>Zme@*&{LVWwE?{iqyEpj0Y5??Y>f$z71)_g8;d z{yEj(i+EZAB%JLO5M>uSh_xlkuWGrVOQemOb%_98-P3l4Fxi! zsFXMzb9pfg8er7kGl|RVAx7A+Nc8! zRP&-Pij8ivUy<=4jT4MlACTL!sL!anJ)Nq`BhQEoccO%tVgUrTK9MzT7d|}(&L*EN zo5xm*$6RbP;kqS}{pNHJ-IDwv0Hv-u^z@vaO07l=Wr1q!j|yfNm7+tXY%1a+;1cK} zNKz@#DX?I}KIYzpkF@#A7DVqrXJZSrV5mk%;l#MO69vJboIafYi1x^|;L!%v7DYw6 zfZ`T6>PahbFsK)`6A7hIY^`~?O0swL#Yx8Y?@)L0_V2HGJ=C}T&_Qnrhd`TXEE9+OBk?h!{kmze{s6)0`B$r9HSN;!FzvpGL&&n+uP zlO<3mQ()(7v`a3(aI-@i>@v@FM$WgukVv#_Dgt+sR&LCZILo4pvi>>U7F<+dBGlV%BXt(y*(b#b@1dMdBp%0_^SRR2dI^1j+yy?F3$*3Sfn^hO#~Cfq!5cD=Q220> zfrNWbIyI6bah;(_j@#;kahl9cQC}qHBY7&_x-nQcG@PoF7hkE_tOwUQ6xP`quT|W> zMJqfPWruhNZ*W%2IYd$6O;l22lt%8-I+Qkc*3vcMkz+jQAnbuB^x`161w7@b+TrPS;gFtaRR`Bm60`)wa-L@WuzvV(wXReKU@B zXDwa+>4z%uVgKFeoC2Ptm(qZuw312LNS6pjR0|VMVERga#C-C;o+DKfBzK9WnKm4) zQTG-3`7z{dVR57Wx^N$RD;L!|B-?Vre6fo)kuyi__E%k?r4pD&Q?B@wEET>>oI>&S;h zZCw`CO2=)FAG8!c8t)Tyw`_GYoR23GN;?>-P&g9eqG{&r0&(6u{6ULWGkmT&R#8ex zd6@*{7fIBQHw}AA&4G-v#XVqrC&BBo@UUlBPvvvs&UhJ)s=oN#};e6{NK)QyggLriPi5na)%;c*`_`q>jTD2jy0?%X}I ztz%GRvF7&V+e_k+HTy`0l#lnbhP;QtTQj#Rl64XkEsa9~tqjxHq?B#vdEME@6fyG_ z=C#~vJ;4{ZQ!jTtv!m1jaeEriWIDMNc`qnNmzfYvdjvF8snQZ+0o#GQ@B3vN&y{E* zW0oJDIET?;`IxVe4drj>dNC@po@n@{7|_hpq;r8~1G>l}<9%MwidaeY$cz2Nu?A>M zKYiV^P_02z%;2&6+u;0V_WG6$ahtgUB~%eZQPj&veg^Gq4uX-GvzN#XUXKY9kyciU z`f)vxu9~CX9&J_jcaL1OFOR(zjyH~dtqRH!1?S(G$Ru05-d3>9t!7&7m4HjQ6PM1M zQ8{=Y>#P6uXw}ixy;<<+Xl|>q@w#Q*TaWHt12l7+biVn@y#9zipkeG>rQB9vU9!a+ z;jk>P)&9aESa#o%<>D|cVNFN#Ufn$*H}1+>82X&v@Dmfe#1dR+&fl ze%OoX1=g0O4O}_Ar&bzv!h@@Jpel_wdT!8uVWB%!=W=<`{l*E{YXOPZ_1nB(N*&{Ld-4Xm zsui??-&Z^FwGl0Au7wB_rh_lNQkWE}Xy%LPIz+*-jPbk~SBGB19(>lTezrBQUm5|H z53Ty_VJtaeJ>XwvdqKNBB5Tjp4yOFzs+SK6t^%5wO+rsg2hM>{MvY~M$gMlQZ@rrp zGsDm2P(E!e>29B}L_%z%+Ia6{7DG1J5fc{phqKAZsL;7BB)R(yI}mt^Mi+{)~(+kO)6*)8c9GQw?H zReGlItJYA#(&yW8keQkOfUYy%wl3HGqp`c+9jBaONXm0q^owdfm6CVyVQZ?>(}@&V zk0n))BtrFOTda9Ae#cV^RSO_Yka&j%Kyu**183hIx(c&(ACNsxY^#_dJoP;2#oD0+ zlHpAJcDvNi?F0*EH#&7;TQ zX=F`=p=<-iQ9Q3SfD(CKvmsi1C$Y6}`+K z1q~p_pGzks%g%lD-<%OoN>ZHKdJ14;kg2dqH??DEFKL!My-lcN^5>i#xI8Nhe1Cdt zK5jYU8s3Y&IN6!CP*ZC-EL>4~ z#Mp8-QhT?R!_R+psidlNxf#SFu1rqp2(Foq&NPU7z|E1Zd9+eN#MUEq`B40W&w z7YS5B{<=LN_XZh1pt zceLGxif$(+1YA}>aC=YAfzj^K>YK-1aD*uGcrPcaO8zS_o{j6Ah%XOL2oJ6>2q zR6f&;OT9#T`|9FMg`P5lxPY?L>eV`Tq5vK3JOi%;>gX=X&7!r|P3z-6b9;jK&cs*N zj20vTd`bj^V%|I7azZd#dG@br4+B@4g4)J*O(E#!nVdX*fH0=eTfldZuRUn@U}#ia zxrAM3^j3xZd;cd%4VA3|cL#3eENJ$#P71(<+-9GiUl>(Wk-hZAPt>NJm#*5cP{4U> zzCq~5z}bB#OXq`@5)?6cD`^4D&4sgzYieCM!e?(TbB z_4;f&(VM~B&2smXqr5>f;)xK6WIdIMv1hd-m#p_4Np8+6&*?3SYs~mE&EK$CUy*4) zQbo3Z?+_Th|9~4XN4;cA+oBn{%e|`{k(uwbrXZVkBD^HHOmS4J;-E#fbmV>?kw%{8 zAYjt-XQ4&t?VKAmU-fD;@1Hnyr9@AwA^lLPD|7Jk$)(R%5%=;gYWYkZTfDZ}NA-Cw z&1e#UikO~1{Nx7qpm2jTZbo_Pe22Tx@p98s56};u7TW3@e{rrC{Plf*yb`Hx_}KNb znk@Q3)+G04g^@PxxBFxI3ewzv7DSzlr^kNm4H_TL`@Hwd1;G-WVFDU61KP4nDTVj*fgRW7*wk~>Tcv@&C&O`ebdBJZ1+N_U*jUnwsM=WM#sL|oVupVWi=MM@1B?|--6M+uJM-jI~7w~tFW@KAv;{*pB<%b zdz+tUU7&T1x!I!&V?$^3i|sp|C+wgbY(0-sRWTl11G1OLG3?DBQ&T0#>oN26$Vl+M zePS`>CA?xjdVTXb!;?a!93n^zBCWRxL{o9GOa*szu;uy67hHiC??}8IFro;u;EWq% z28*eNaZ8F6=**M*N7PCshpRZ29nqrS1kq=|ECe{Jb!I%}0j$&uwrjOJ^fmyFJLYy< zhd#(oCU5fO?Fwm5nbY8p6!W^06|eKad^lX1kV(IL0zQ3&sq30K!%A|D~ z2fEi}YQh?d`L?mdd1=mh#4kabc=*iPlT3;Ewo)U0*|m z&$bSP9*f$TxumssTEB5Pps3*toV)dy@RotT#yiXY{odSi8jQ^{U**+5m$$6iI|J#T+X^spu>mzP!S%hOu$r5k3&(1M`ax}oX z8l{|jggHCOC7Bje2XH)dLxaW6tpfa=UF6t^{S!~VDt7K3sbjsa*W@!Z-K7ggU1WG) zjM}<8f(wv+KHJsUqnwFvEi7{Xrl-pCx_ZW@=hPT*p3}?>EdD5e_slIn;YV z=gaNe@;p5rLO0&D_uNiik*gT0u3yYhKM->CoQL8?z1Ik{?glT&Bq9Elow>R5*$s;a zt9ya`EQu{E^&ev|9a|i~teIGKI4EMXBg>=eP>|RxY}5a&fq4Aj%zHE$7BO0^_%Tuc zjT@;twmFIq%mvC}n5Dk_AZ@-#WZ*8k_J+;;p~miTrjkG&?MaKpuzap##EIHk(Q|CIt=Fr@l=mEw^0wIMPrI1%T)|jw#3H{1j}Qib z1a(RVYOHypJxY5!C9N7FrTTmiiQR(QTlw3&P%58&SQTVV5TTPx0}IuCYQ+FMT`0|H-lQv z1$Y{)cMhKGFQ5JJ`nHG&I1ZTO8sN7)m1b1fscNq;5v}lQp7Rqh+Wzp@R|Wmg!t+#f z9b>AGM2-Y+KIY{GLs)oWOm~J?KPU6tF6?}faeVcqp>#rhit;lKf!MX%{%X};5DQx0 zOea@QO6W8H{oGz)-tJMQ>sI~oQnvamKtwj+;hM>bFX+z|g1P*nj?e6#glc7&y|e1S zD0PUv5I_K-_TQ4Mc0EONdGyGv6Avr#A$D9(W~Yx*Og_Ht6RA>v8B!_xsXuS3wCj8- zJQk21NwEf3XnvgEFkV!@>&fN&bb0l&Z4Us1+Xh7s4(~ZvDeEY^8JcECYI#>TlOl`C z;7z>9`66X*A>B$IaNy#FhKm4#B#QcGGSei)Zp|mH=mtNqa|-Zq$T2br)DoIzJ@iqG z1T|Aj|71^L<)sE)cycG=b_XG?Jh!(xgJGuM^HGU#X1qe~JLjEACLl*j>%GOc=?Y&3 zTW`$!j-vC4CoWC|FCKT@nN13Qieh6~Pb)aFTLc4Qs&o^*a{yx`v|n!W!_JUY7`49$ zB-b}-UTf(&++e*d8pU=M-TFZ5yr=%flYCEj&(i0e$L?y$rD&Pa;wsX-ZKUCNgR%m* z4*@-OH{_F6o0+x%P?UolSm@K4hv*2V^=I#@&np;xRak#HSSCVOFWdAeEt-_j(OW%v zXGfuF5$v8JZC3!t7eX^-;NU=r?amn3n%M=h)!^vjDnc&Lbba2kLn&s@DKMfg*vrwi zvc`O|#7FWjc9ZKNFiRlLgQ} NrbZTq`3GI1{|{p#T@?TT literal 0 HcmV?d00001 diff --git a/Images/Weather/VeryCloudy.png b/Images/Weather/VeryCloudy.png new file mode 100644 index 0000000000000000000000000000000000000000..827925957a2fb800d55d776d5ca56abff9b6d825 GIT binary patch literal 5534 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 literal 0 HcmV?d00001 diff --git a/Presets/TopUI/preset.json b/Presets/TopUI/preset.json new file mode 100644 index 0000000..6a5aed6 --- /dev/null +++ b/Presets/TopUI/preset.json @@ -0,0 +1,4 @@ +{ + "source": "nvg://ordinalscale.widget.mashiros.top/widget/topui", + "settings": "settings.xml" +} \ No newline at end of file diff --git a/Presets/TopUI/preview.png b/Presets/TopUI/preview.png new file mode 100644 index 0000000000000000000000000000000000000000..fb7528583eb5dca2d71e8831eee9b67b6c88b0b1 GIT binary patch literal 23392 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