From 99e7dc673733eca20a82b753438ba65b6dc5a2ea Mon Sep 17 00:00:00 2001 From: Jan Holthuis Date: Sat, 25 May 2019 01:56:22 +0200 Subject: [PATCH 1/7] Restyle widget on ControlWidgetPropertyConnect::slotControlValueChanged --- src/widget/controlwidgetconnection.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/widget/controlwidgetconnection.cpp b/src/widget/controlwidgetconnection.cpp index 9348492034bb..d82eb5a9da00 100644 --- a/src/widget/controlwidgetconnection.cpp +++ b/src/widget/controlwidgetconnection.cpp @@ -1,3 +1,4 @@ +#include #include "widget/controlwidgetconnection.h" #include "widget/wbasewidget.h" @@ -125,4 +126,9 @@ void ControlWidgetPropertyConnection::slotControlValueChanged(double v) { qDebug() << "Setting property" << m_propertyName << "to widget failed. Value:" << parameter; } + + // According to http://stackoverflow.com/a/3822243 this is the least + // expensive way to restyle just this widget. + pWidget->style()->unpolish(pWidget); + pWidget->style()->polish(pWidget); } From 9b59a5af04134db8ad98e86104ed49124d5875f2 Mon Sep 17 00:00:00 2001 From: Jan Holthuis Date: Sun, 26 May 2019 00:34:49 +0200 Subject: [PATCH 2/7] Force repaint of Widget on control change --- src/widget/controlwidgetconnection.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/widget/controlwidgetconnection.cpp b/src/widget/controlwidgetconnection.cpp index d82eb5a9da00..eeba4330a813 100644 --- a/src/widget/controlwidgetconnection.cpp +++ b/src/widget/controlwidgetconnection.cpp @@ -131,4 +131,7 @@ void ControlWidgetPropertyConnection::slotControlValueChanged(double v) { // expensive way to restyle just this widget. pWidget->style()->unpolish(pWidget); pWidget->style()->polish(pWidget); + + // These calls don't always trigger the repaint, so call it explicitly. + pWidget->repaint(); } From 9305ce819a9c43bfc5750b2db3afc36ebcb051c8 Mon Sep 17 00:00:00 2001 From: Jan Holthuis Date: Sat, 25 May 2019 01:56:06 +0200 Subject: [PATCH 3/7] Deere: Add support for hotcue button colors --- res/skins/Deere/hotcue_button.xml | 58 +++++++++++----- res/skins/Deere/style.qss | 107 ++++++++++++++++++++++++++++++ 2 files changed, 149 insertions(+), 16 deletions(-) diff --git a/res/skins/Deere/hotcue_button.xml b/res/skins/Deere/hotcue_button.xml index 315caab02489..f5e477762261 100644 --- a/res/skins/Deere/hotcue_button.xml +++ b/res/skins/Deere/hotcue_button.xml @@ -8,20 +8,46 @@ SmallSquareButtonSize: the button size --> diff --git a/res/skins/Deere/style.qss b/res/skins/Deere/style.qss index 43cd709ad8b7..9c81f1945b89 100644 --- a/res/skins/Deere/style.qss +++ b/res/skins/Deere/style.qss @@ -1525,6 +1525,113 @@ WPushButton[value="2"]:hover { border: 0px solid #0080BE; } +/* Hotcue Color: No Color */ +#HotcueButton[value="1"][highlight="0"], +#HotcueButton[value="2"][highlight="0"] { + background-color: #006596; +} + +#HotcueButton[value="1"][highlight="0"]:hover, +#HotcueButton[value="2"][highlight="0"]:hover { + background-color: #0080BE; +} + +/* Hotcue Color: Red */ +#HotcueButton[value="1"][highlight="1"], +#HotcueButton[value="2"][highlight="1"] { + background-color: #c50a08; +} + +#HotcueButton[value="1"][highlight="1"]:hover, +#HotcueButton[value="2"][highlight="1"]:hover { + background-color: #e50c08; +} + +/* Hotcue Color: Green */ +#HotcueButton[value="1"][highlight="2"], +#HotcueButton[value="2"][highlight="2"] { + background-color: #32be44; +} + +#HotcueButton[value="1"][highlight="2"]:hover, +#HotcueButton[value="2"][highlight="2"]:hover { + background-color: #52de64; +} + +/* Hotcue Color: Blue */ +#HotcueButton[value="1"][highlight="3"], +#HotcueButton[value="2"][highlight="3"] { + background-color: #0044ff; +} + +#HotcueButton[value="1"][highlight="3"]:hover, +#HotcueButton[value="2"][highlight="3"]:hover { + background-color: #0064ff; +} + +/* Hotcue Color: Yellow */ +#HotcueButton[value="1"][highlight="4"], +#HotcueButton[value="2"][highlight="4"] { + color: #4B4B4B; + background-color: #f8d200; +} + +#HotcueButton[value="1"][highlight="4"]:hover, +#HotcueButton[value="2"][highlight="4"]:hover { + color: #4B4B4B; + background-color: #f8f200; +} + +/* Hotcue Color: Celeste */ +#HotcueButton[value="1"][highlight="5"], +#HotcueButton[value="2"][highlight="5"] { + color: #4B4B4B; + background-color: #42d4f4; +} + +#HotcueButton[value="1"][highlight="5"]:hover, +#HotcueButton[value="2"][highlight="5"]:hover { + color: #4B4B4B; + background-color: #62f4f4; +} + +/* Hotcue Color: Purple */ +#HotcueButton[value="1"][highlight="6"], +#HotcueButton[value="2"][highlight="6"] { + background-color: #af00cc; +} + +#HotcueButton[value="1"][highlight="6"]:hover, +#HotcueButton[value="2"][highlight="6"]:hover { + background-color: #cf00ec; +} + +/* Hotcue Color: Pink */ +#HotcueButton[value="1"][highlight="7"], +#HotcueButton[value="2"][highlight="7"] { + color: #4B4B4B; + background-color: #fca6d7; +} + +#HotcueButton[value="1"][highlight="7"]:hover, +#HotcueButton[value="2"][highlight="7"]:hover { + color: #4B4B4B; + background-color: #fcc6f7; +} + +/* Hotcue Color: White */ +#HotcueButton[value="1"][highlight="8"], +#HotcueButton[value="2"][highlight="8"] { + color: #4B4B4B; + background-color: #f2f2ff; +} + +#HotcueButton[value="1"][highlight="8"]:hover, +#HotcueButton[value="2"][highlight="8"]:hover { + color: #4B4B4B; + background-color: #ffffff; +} + /*"Enabled" state, e.g. for recording status 0 -- disconnected / off 1 -- connecting / enabling From 5f5aaee506617112bde2db7d35aeac262709f8e7 Mon Sep 17 00:00:00 2001 From: Jan Holthuis Date: Sun, 26 May 2019 00:35:47 +0200 Subject: [PATCH 4/7] Tango: Add support for hotcue button colors --- res/skins/Tango/button_hotcue_deck.xml | 4 ++ res/skins/Tango/style.qss | 58 ++++++++++++++++++++++++++ 2 files changed, 62 insertions(+) diff --git a/res/skins/Tango/button_hotcue_deck.xml b/res/skins/Tango/button_hotcue_deck.xml index e2aa1130fe73..bb1009dbf424 100644 --- a/res/skins/Tango/button_hotcue_deck.xml +++ b/res/skins/Tango/button_hotcue_deck.xml @@ -37,5 +37,9 @@ Variables: ,hotcue__enabled false + + ,hotcue__color_id + highlight + diff --git a/res/skins/Tango/style.qss b/res/skins/Tango/style.qss index a4eae1fd788e..64015982ea19 100644 --- a/res/skins/Tango/style.qss +++ b/res/skins/Tango/style.qss @@ -984,6 +984,64 @@ WLabel#TrackComment { border: 1px solid #eeeeee; } +/* Hotcue Color: No Color */ +#HotcueButton[displayValue="1"][highlight="0"], +#HotcueButton[displayValue="2"][highlight="0"] { + background-color: #666; +} + +/* Hotcue Color: Red */ +#HotcueButton[displayValue="1"][highlight="1"], +#HotcueButton[displayValue="2"][highlight="1"] { + background-color: #c50a08; +} + +/* Hotcue Color: Green */ +#HotcueButton[displayValue="1"][highlight="2"], +#HotcueButton[displayValue="2"][highlight="2"] { + background-color: #32be44; +} + +/* Hotcue Color: Blue */ +#HotcueButton[displayValue="1"][highlight="3"], +#HotcueButton[displayValue="2"][highlight="3"] { + background-color: #0044ff; +} + +/* Hotcue Color: Yellow */ +#HotcueButton[displayValue="1"][highlight="4"], +#HotcueButton[displayValue="2"][highlight="4"] { + color: #333; + background-color: #f8d200; +} + +/* Hotcue Color: Celeste */ +#HotcueButton[displayValue="1"][highlight="5"], +#HotcueButton[displayValue="2"][highlight="5"] { + color: #333; + background-color: #42d4f4; +} + +/* Hotcue Color: Purple */ +#HotcueButton[displayValue="1"][highlight="6"], +#HotcueButton[displayValue="2"][highlight="6"] { + background-color: #af00cc; +} + +/* Hotcue Color: Pink */ +#HotcueButton[displayValue="1"][highlight="7"], +#HotcueButton[displayValue="2"][highlight="7"] { + color: #333; + background-color: #fca6d7; +} + +/* Hotcue Color: White */ +#HotcueButton[displayValue="1"][highlight="8"], +#HotcueButton[displayValue="2"][highlight="8"] { + color: #333; + background-color: #f2f2ff; +} + #CueButton { /* is styled like #HotcueButton, lights up if play position is at main Cue point */ From 87dbea2bab8a87d64ebaab64a03c64231b7ace3b Mon Sep 17 00:00:00 2001 From: Jan Holthuis Date: Sun, 26 May 2019 01:25:33 +0200 Subject: [PATCH 5/7] Shade: Add support for hotcue button colors --- res/skins/Shade/btn/btn_hotcue_1_over.png | Bin 386 -> 2785 bytes res/skins/Shade/btn/btn_hotcue_1_overdown.png | Bin 386 -> 1979 bytes res/skins/Shade/btn/btn_hotcue_2_over.png | Bin 392 -> 3436 bytes res/skins/Shade/btn/btn_hotcue_2_overdown.png | Bin 392 -> 2265 bytes res/skins/Shade/btn/btn_hotcue_3_over.png | Bin 397 -> 3242 bytes res/skins/Shade/btn/btn_hotcue_3_overdown.png | Bin 397 -> 2271 bytes res/skins/Shade/btn/btn_hotcue_4_over.png | Bin 389 -> 3085 bytes res/skins/Shade/btn/btn_hotcue_4_overdown.png | Bin 389 -> 2160 bytes res/skins/Shade/dark.qss | 6 ++- res/skins/Shade/deck_transport.xml | 20 ++++++++ res/skins/Shade/style.qss | 43 ++++++++++++++++++ res/skins/Shade/summer_sunset.qss | 4 ++ 12 files changed, 71 insertions(+), 2 deletions(-) diff --git a/res/skins/Shade/btn/btn_hotcue_1_over.png b/res/skins/Shade/btn/btn_hotcue_1_over.png index 75dbdbee3e5dd0fdd07bfb92d59a2923aa0c4995..5aa006762d60048c0aef15b0692b57436d066487 100644 GIT binary patch delta 2757 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 UF54x;4zz*6)78&qol`;+0CWg>t^fc4 diff --git a/res/skins/Shade/btn/btn_hotcue_2_over.png b/res/skins/Shade/btn/btn_hotcue_2_over.png index 29a78d683d10d90b32245dd4e1b2c798a25571b4..248fb1ea95740ee4658f23fe1541e1a8a108a82b 100644 GIT binary patch delta 3413 zcmV-b4XW~p1MC`*BYz7AdQ@0+Qek%>aB^>EX>4U6ba`-PAZ2)IW&i+q+U;3emLn?; z{AU%j1dtGqi1e#C1mJl=ON1B6?QE1#cfUh^C7%YW;Fe9aI2@xIIBl2a~0 z*T796+s=e9dMSAcVmkM4invPWOG|f;bN!XN_q0W4=*{n#VGI?>V{$Y(us@$?5ps7l;|RJvR(fNn>wb{u_S;sv*C^1- z&h((s3gqu!cYpR)!CdKjsN19LZG@T!kH?K4M4PaSd<;`Q7*t{06E5OdeJ59 zeXH$<%?ftbfSD8^EMUdM+r7Q<)Axg*wam>!@a4r;(0_}};84Smvro(dAYolLm2KbP z&c(ld8L$ilWt+L+0h{kfM3?aDTfA{*FAh_qKk*W>UIJhu>@83xFc9!5u!IzRCdwhe zjs^HMXigld1A!n;NTDS~MkHh^WP4*x4tp*Mo!g)n03isG3}_HQ04qj`3Gr6oLd^+F z6py83TuZIBHEh~q zgRF-64L3S9%a|T-kBW@1X{Vs0w3^`}e{RVQ*pu0ov zJ#J4>)3)iBH$WDJuqhalmrF!#JoUbn)6z$1iI`K#EPlnGnh~Dj0ICxODP^nZe4Pq>mMXR z=Pe5!WYQq(nIvZuzNyo{8vU!$zZ!j4qeO0{(P9s^M4?U~+TQyV9(mPCt*g&{JHX4fO(&E7)U33Y3>-;^oE=$b2$_0e_>6N?Y492rOF_sXOA|SSp}g<1nkNado#Z ze|vo`8MSJHMobYKXB2f*pCpIM#N?UVTOf$+dBF$UENnFKDlzOmPFSm5t-H$YkxEH zLRK5KX?h)7>uw-sI7L+(8q`)RZ+yVrp#HNDY!CPpe^-79|EGd(_&HK5 zxR=qtWC3^cj~}tXSiJ(9xO#LQ#eXTG%+yM#AHmq6;KHmxq)7HW4|dR8hc$Hj7n-Mt zdT?eGu_6P-xKoi9D<{>C(lH^2h!&`XOoA)|;82y?Qdp{=bcD{&*Dxz2^2%ouOGkrx zK}}wGN?)4BNO-`J=fs>*VF*i1F}HY977PQwvh_P{y=>+lcf+GZ%UiQ2RDbxZChW3BY|L_&-bl z?p?%oqLl|%^k*wqk}*0(3#@>4bZ{6}=CHOd6Z3H+6lq*sEsGEgi%G}u2RrnH2a~Dh zMOil&t-!l#B5wIOXEKNAv*ITN!Kh|W;NL^`+qrmF^q{AfL({fSv47Rz>nOuEeN0N_ zaZ~qhR|HDDin8L5PsQ@7uHs<5InDenNoi62sBGs*)=6jbWhAT`D7mbwm11WD=Kp9# zH$y2(yIDx13kV!MD_Cb%Fi(?cWMn)yL^n7fJPlyFFm80xVJg24oq#Nsg{a%(ccW1B z8ujREd0322bo5Yvjeka4G=`MR@d0SHukQB6hcQ+ueY?;$G@K~FiS+WW*P*)sxEa+k zG326!h(x|yY9Fxo6q@<`N+6=kNC@bj7MPUY{m!u7opL5=#rcv&Mhf=0hnF3m6ka)+Iw^%O}n`> z816XpP3k4n`yc*221Ct%@;# zA+`D@+!K3n;(vr*rOm|PWIqM83ln)A&PW2!#5wJQz(t_1mb)UT;M1u>9B4vI8n6bK zmq!E5Asd9t0mF(0uX~DjW+YfTSwCM{KQHDh>l59we%?i)4LOVN+)j{d4`+vu1y1U*=f~z2~!z72Fs0gkQ z{&T^AYGz2a_}xYigolVpZf2^>1#Q`$bt2~NC_9^zxBYOM>(Gk4lr;rVbHh|EMS2dQ zhlm`D*huilmz3S~K4r5dUIqmcoY2n8L-!pe0~Y`W-NQCDGrYhOyE!S^Vh1PL`Pqz@ z>a8t?3x60tUA2eVyZO1Tfl|N=N&!L`V&h#1AbPirZc4pYJA7XaNV=~E_Fh*R0F|X? z9T=&Oj*3`qybofUFuR>bPb&qI_HI>NOi15xfxBQZpV5_rpg~0N#;R7SHHR-K)hf?& zm+SlZcBSh+YIwg>>AH^^-tSbp?&Sv1fsJ4&-+#Nx%ys&X$}IGxgVPdJOjLpng@Q(t z9t9CBjdD{7In1@5Dgi=9c584r@S|0_z4;ja#B(AyE4W~SdQAff)3J- zLF`%MGXFph28Gz-d;;XQcC(bl+Y8YtGL}WYizH# zYP*@mS4An4n*~d>c!>v*2t?qv8HiNu@8$p}iv=XA{Bj_%K4T=fse$5!a%|RQFgD0D z_D1M3E)SjSasc=7LB-e0RQK^g#n;PJ_kYPj)t9gC`z`GAa|-wILB-e4Dcr{g6<
sxSF~``U5k=U4aRgN!%q?Y?$g`8j*LuN_x@&fe}9kpD!` zH(9{_saus||K(L_q{K8L?vyqa6&32tnM-Rsm4J3z8+O+1kV(=UXn#&4j?}#m?SFY6 zwp+(=cscSuv`3Dyo^jK1v1Y_L5T##IYuBxOkh&!uIo4)AmjuIaS$1p>X_qYIjO27n zvg+uP^%Jci$tC?Ao!m;lqm#?)cXV<-|Bg;B`rpyXh4?!`%5$9(t+YUkvzFM=gn#>lA{As4_J5e6mCDh?J=amY}e zEQpG9)G8FALZ}s5buhW~3z{?}DK3tJYr(;f#j1mgv#t)Vf*|+-;^OM0=zk(5{x2!C zi1FaKAMfrx?%o0ZMun+n*94$ymXS^-glukA2)!bRAq*gnu*6J#P83t{9AEeF@%1jo zv%Js!IeL}6$pD`~Jj-;$BHkdL*|c=d`@|7ek`&@|;&Fp6Nc_lk+2uFRMTh-7Gh$@Y z^TZKiq1eH42eXo)5>FFH6@OKue1Fzuh4U6?wNhiPd-4~C^V-TX*J+L*iA5|yga8>e zlu?0&7_Ay9CepN@@bC{ievw=D3saMBQaAwwUu^qh6bS7C z&AM%WAKP~G1PD9>S6bU&Z2<94((7$4dIa=s0~gnAP2K}8cYwhsT}(10M+(sN7Ye}p z8GTa@=)VPe*4*A&`#607GSpS-1~@nb#)_1^?(y#K&ffk#)9UXBleTiSbIu~{00006 zVoOIv0RI600RN!9r<0K}7=8zINliru;{_QP1`~342Sfk>09HvvK~y-)W0aIv`OiQ_ zz{0@5!0_am10yvIlaV^`pNWCWVAQ}tXdnwdNlwP~SkvhD|ACBT8HlbCmjx8NkZc2q r@gi9UqPvu8VK|zwhp2&!)UE;mdfFK?_}NCM00000NkvXXu0mjf6v}-7 delta 366 zcmaDO)xkVLxt@Wg*vT`50|;t3QaTtI7&r?&B8wRqxP?HN@zUM8KR`jT64!_l=c3fa zlFa-(g^eIqk{1IsTA!OwsyDnTmp5_407Q%i~&sufaFi<65o3qb0vlw9)5 z^K$YNQxr-vQWav9{D8_*6oON8Qj_b!27>g&C@B;q=B4H+q!s1oDrA(D6jrda73>L?TgwOLgwDAX#{Ml4xB8|VrdkSl`o(@M${ zi&7aJQ}UBi72IHEC^!e3z1Xv<2dFOE)5S5wqBnU;`jqgW=N()R96E5|z=tO@nL~Ld zPqaF4z(sWOgaa!Yn=d$s)l8bx^Lk@f{eO9nd5tfm3L_o1G#-&~nAB*{aK1Z5vg2LQ os#ZnAgb&LP3uY)NZ(Ys6kbFzopr06AKPXaE2J diff --git a/res/skins/Shade/btn/btn_hotcue_2_overdown.png b/res/skins/Shade/btn/btn_hotcue_2_overdown.png index 54f8dcf045fd1cb4970097e1325726bcf7fd42ea..a89346b0e30b9f50ae70d0e0c459fb73d3404323 100644 GIT binary patch delta 2234 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 diff --git a/res/skins/Shade/btn/btn_hotcue_4_over.png b/res/skins/Shade/btn/btn_hotcue_4_over.png index 53501b003cd35001e59248dd57ae0483a5e07bdd..944eef1c632702369c03e6e796200cb339eabf40 100644 GIT binary patch delta 3059 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 diff --git a/res/skins/Shade/btn/btn_hotcue_4_overdown.png b/res/skins/Shade/btn/btn_hotcue_4_overdown.png index f6b4cd4314d8fce4e72d678df7f13c535c9253e4..6dd65f063ccfd90b5350fc3ba2be98deddb6a3e4 100644 GIT binary patch delta 2127 zcmV-V2(b5s1Mm=#BYy@8dQ@0+Qek%>aB^>EX>4U6ba`-PAZ2)IW&i+q+O1bxcI+q& z{AU%j1dtGd<%rigvx8aw6xiw4?IbsywiDw9S%@kj2{-=xce;OYk>>28Xig<1k1Li~ z$ncW=aUE^&aX*hA@f-{H{q8bA=wh^d{7mDNH}uQ(13l$Ky?^g_+D<+BRCEq}DC9LW z;iaEOo{E@`{trW3q2tBU&2rBFT=tynqhsjdcT|AU1^SpA4G!#&=OM(ff(sj3!IL;a zaP_So#gn=GiJ!Yb_XNPp+XH^So&9`;<52Xmtn`4>*&pONejBA*ivnF{rdx|z^~K*_ zH~7uj^PJ;YoqxsT09QH}^|6%w2EhtAd4HC0EB*!Vy6=KJd-Dyfbu6_yU-6>^0@gFc z(1V2;#%^0^Ffq~~MN8C(cVA|uLTwWe*BvIQ13#TJxM^UH(M=ay!k)LR`7l|=%soJo z0+a=Oad*4Nj#uwHMRP7U55eaPRK|JuJq+U>t#Dh6{IB=04@k0o|YSM$edYi@J9(=N5H0%>BvR6V|%zaLb#ZwF`kM zA|zw`&CrdqMZ$7gvF>vk4Vc9?*=y}#BtO++oZMj8G%Drj;?}~L5qa&iksl7YpMUav zz<<3o{gVOr>QWvD-18A1dV>?gFW?@%L6o%j*;1LY6&_;_j&PU>U&teaC}$qiEXGhp z{HAq(BSk`xaY& z*6L>NJW2`k1Iy5nbF+A1iV!%*PplD`u7CL6!Ry|D^OuVL2H!h)-7oOHYuzvKy@S{N z0^hsVy#eP(ML)*(4qo>yz9o0UHf|xcFp(*Sm4@Q67Ryl@k;Tzk4Q^=D*~jdZCl8)u z>L?O{h$cp)=0KCG)!d)}of0|qIjqf|kRl?|o*>`Ak5XkrQHez7x0v!0(+-rg)qh(3 zxK0qYAc-T!Yn{fg7BF$<7M1sGSfA^bz zY#kEv1y{bhM`lZ?6U<+6UE`;B_`q%2QTG4K?Azq<^EX6kZwrI8l2W5*)}71mKlQeTPn~0pFm^;6X_C z+k4FAQQ<%rR19VPv>{dztYL}NL5HK2P(H(F!Q6|5nH!3afU-ZLjJ4QF ztq5GLR5&BNrNW|)oYEzkjWiohAp>QP#6D5gOst$b5D_b0XX**xhKGV)*c?QV)k~5?MP*HNa9f=HZ_iIcQ0o(g*0G}8@(<$bld$SuimP9yBgC4R6kwy^9m$sG15eblR3?t9n*dPV za@hvjS{I>G!3m;9WD$T6v42ZEiF%-evUsx^)>(xSjgE61^>4s?9UXv zkWk!v680|r-jT3Vaqmgk**pKH0?EB6VINiPtN7lv?icvpz)Qh}nv?JQM1@p75T5Hg z1!zg!2V{jvp{D0_bmd7n9;`@bo^J-+rz1Zca6kX#`G9+A`X>YK)qkZt4!C0^dd6Ya z?{H>GP&@I&A-Ev&{SWZQi5KYtXmR+1FrbK-G>E=c^y zb=l=N&P9j)JTqcs((}X-VxicZ37qAZB5<-E_Z;z zCtWfmM+(sN7exxd`x$*x4(PuHde+?DTKhPC05a57>IOJC1jdS#z3%bu?#|x+J=5y% z2a~pPv~$iP>;M1&24YJ`L;(K){{a7>y{D6rF&KXbbV*G`2jc}97Y8Rw*TS#>0037> zL_t(I%VU(3SNYFCMZm(qz`*dF>4!cw43qrFagm9E%3##Mp=Kc4)9)AAo_@cGi%%C9 zvJj()kgJF`@Ru~FKB)!|jF)k_cr;-T5d&FZB`viK1OWGh8cE!;o-+Ud002ovPDHLk FV1l=X5R(7^ delta 363 zcmew$(8@ePxt@Wg*vT`50|;t3QaTtI7&r?&B8wRqxP?HN@zUM8KR`jT64!_l=c3fa zlFa-(g^eIqk{1IsTA!OwsyDnTmp5_407Q%i~&sufaFi<65o3qb0vlw9)5 z^K$YNQxr-vQWav9{D8_*6oON8Qj_b!27>g&C@B;q=B4H+q!s1oDrA(D6jrda73>L?TgwOLgwDAX#{Ml4xB8|VrdkSl`o(@M${ zi&7aJQ}UBi72IHEC^!e3z1Xv<2dFN>)5S5wqBnU;%9QY*=N()R96E5|z=pS54MTZ8 z3)!AN;37JC!hscy&SxDy+gD4R`TyqNN%fl!MGV}AT^u{RGMN20?U<1B;Xs8X+lAO3 lUY?I77B;*oOUgtU7%C13FXXiOvKnX!gQu&X%Q~loCIC{ef^+}? diff --git a/res/skins/Shade/dark.qss b/res/skins/Shade/dark.qss index 980ef9ad911f..9b23d39961bb 100644 --- a/res/skins/Shade/dark.qss +++ b/res/skins/Shade/dark.qss @@ -78,5 +78,7 @@ WLibrary QRadioButton::indicator:checked { background: url(skin:/btn/btn_lib_radio_button_on_dark.svg) center center; } - - +/* Hotcue Color: No Color */ +#HotcueButton[highlight="0"] { + background-color: #b39a00; +} diff --git a/res/skins/Shade/deck_transport.xml b/res/skins/Shade/deck_transport.xml index a22a3e7d7d78..d681dc1ffffd 100644 --- a/res/skins/Shade/deck_transport.xml +++ b/res/skins/Shade/deck_transport.xml @@ -473,6 +473,7 @@ hotcue + HotcueButton 0,0 2 @@ -504,9 +505,14 @@ [Channel],hotcue_1_enabled false + + [Channel],hotcue_1_color_id + highlight + hotcue + HotcueButton 21,0 2 @@ -538,9 +544,14 @@ [Channel],hotcue_2_enabled false + + [Channel],hotcue_2_color_id + highlight + hotcue + HotcueButton 0,21 2 @@ -572,8 +583,13 @@ [Channel],hotcue_3_enabled false + + [Channel],hotcue_3_color_id + highlight + + HotcueButton hotcue 21,21 @@ -606,6 +622,10 @@ [Channel],hotcue_4_enabled false + + [Channel],hotcue_4_color_id + highlight + diff --git a/res/skins/Shade/style.qss b/res/skins/Shade/style.qss index 1a7f3eff96c0..2b07f6abe0ff 100644 --- a/res/skins/Shade/style.qss +++ b/res/skins/Shade/style.qss @@ -490,4 +490,47 @@ WLibrary QPushButton { margin: 1px 2px 3px 10px; } +/* Hotcue Color: No Color */ +#HotcueButton[highlight="0"] { + background-color: #fd0564; +} + +/* Hotcue Color: Red */ +#HotcueButton[highlight="1"] { + background-color: #c50a08; +} + +/* Hotcue Color: Green */ +#HotcueButton[highlight="2"] { + background-color: #32be44; +} + +/* Hotcue Color: Blue */ +#HotcueButton[highlight="3"] { + background-color: #0044ff; +} + +/* Hotcue Color: Yellow */ +#HotcueButton[highlight="4"] { + background-color: #f8d200; +} + +/* Hotcue Color: Celeste */ +#HotcueButton[highlight="5"] { + background-color: #42d4f4; +} + +/* Hotcue Color: Purple */ +#HotcueButton[highlight="6"] { + background-color: #af00cc; +} + +/* Hotcue Color: Pink */ +#HotcueButton[highlight="7"] { + background-color: #fca6d7; +} +/* Hotcue Color: White */ +#HotcueButton[highlight="8"] { + background-color: #f2f2ff; +} diff --git a/res/skins/Shade/summer_sunset.qss b/res/skins/Shade/summer_sunset.qss index 1d5a8df00f9b..7e00d1ba503b 100644 --- a/res/skins/Shade/summer_sunset.qss +++ b/res/skins/Shade/summer_sunset.qss @@ -70,3 +70,7 @@ WLibrary QPushButton { border: 1px solid #52F904; } +/* Hotcue Color: No Color */ +#HotcueButton[highlight="0"] { + background-color: #52f904; +} From 272510dbe25240aabefc05a98dcfd6be6772b99e Mon Sep 17 00:00:00 2001 From: Jan Holthuis Date: Tue, 28 May 2019 12:13:20 +0200 Subject: [PATCH 6/7] Deere: Make the default hotcue mark match the button color --- res/skins/Deere/deck_visual_row.xml | 2 +- res/skins/Deere/sampler_controls_row.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/res/skins/Deere/deck_visual_row.xml b/res/skins/Deere/deck_visual_row.xml index 3a9d7a0d032b..82ffa49ade6e 100644 --- a/res/skins/Deere/deck_visual_row.xml +++ b/res/skins/Deere/deck_visual_row.xml @@ -34,7 +34,7 @@ top - #00FF00 + #006596 #000000 %1 diff --git a/res/skins/Deere/sampler_controls_row.xml b/res/skins/Deere/sampler_controls_row.xml index 53560dfd8149..8341c5265bdb 100644 --- a/res/skins/Deere/sampler_controls_row.xml +++ b/res/skins/Deere/sampler_controls_row.xml @@ -46,7 +46,7 @@ #00FF00 bottom - #00FF00 + #006596 #FFFFFF %1 From 287c203b26c59d764584d9bf93f1ac7c99371eac Mon Sep 17 00:00:00 2001 From: Jan Holthuis Date: Tue, 28 May 2019 12:16:04 +0200 Subject: [PATCH 7/7] Tango: Make the default hotcue mark match the button color --- res/skins/Tango/deck_overview.xml | 2 +- res/skins/Tango/preview_deck.xml | 2 +- res/skins/Tango/sampler.xml | 2 +- res/skins/Tango/waveform.xml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/res/skins/Tango/deck_overview.xml b/res/skins/Tango/deck_overview.xml index 3942a15025b7..8da395a8e9de 100644 --- a/res/skins/Tango/deck_overview.xml +++ b/res/skins/Tango/deck_overview.xml @@ -28,7 +28,7 @@ Variables: bottom|right - #00FF00 + #666666 #FFFFFF %1 diff --git a/res/skins/Tango/preview_deck.xml b/res/skins/Tango/preview_deck.xml index 6bf26ef1836d..f59963fb5c9c 100644 --- a/res/skins/Tango/preview_deck.xml +++ b/res/skins/Tango/preview_deck.xml @@ -123,7 +123,7 @@ Variables: #00FF00 bottom|right - #00FF00 + #666666 #FFFFFF %1 diff --git a/res/skins/Tango/sampler.xml b/res/skins/Tango/sampler.xml index 1df6a097b2dd..00e73db07ec0 100644 --- a/res/skins/Tango/sampler.xml +++ b/res/skins/Tango/sampler.xml @@ -207,7 +207,7 @@ Variables: #00FF00 bottom|right - #00FF00 + #666666 #FFFFFF %1 diff --git a/res/skins/Tango/waveform.xml b/res/skins/Tango/waveform.xml index d83b1b325925..7708e49063a9 100644 --- a/res/skins/Tango/waveform.xml +++ b/res/skins/Tango/waveform.xml @@ -33,7 +33,7 @@ Variables: bottom|right - #00FF00 + #666666 #FFFFFF %1