From 7bcbf65ad66735fc4733f719e579421e7c470281 Mon Sep 17 00:00:00 2001 From: Lasse Holmstedt <lasse.holmstedt@nokia.com> Date: Fri, 30 Jul 2010 11:48:05 +0200 Subject: [PATCH] QML Observer: Made toolbar and crumble path look better Now the style is something similar to Qt Creator's default coloring. --- src/libs/qmljsdebugger/editor/crumblepath.cpp | 54 ++++++++++++------ src/libs/qmljsdebugger/editor/editor.qrc | 1 + .../editor/images/color-picker-hicontrast.png | Bin 0 -> 3206 bytes .../editor/images/color-picker.png | Bin 3185 -> 3173 bytes .../qmljsdebugger/editor/images/from-qml.png | Bin 3251 -> 3205 bytes .../qmljsdebugger/editor/images/pause.png | Bin 3110 -> 3097 bytes src/libs/qmljsdebugger/editor/images/play.png | Bin 3367 -> 3363 bytes .../qmljsdebugger/editor/images/reload.png | Bin 0 -> 3418 bytes .../editor/images/select-marquee.png | Bin 2878 -> 2871 bytes .../qmljsdebugger/editor/images/select.png | Bin 3359 -> 3308 bytes .../qmljsdebugger/editor/images/to-qml.png | Bin 3271 -> 3227 bytes src/libs/qmljsdebugger/editor/images/zoom.png | Bin 3296 -> 3252 bytes src/libs/qmljsdebugger/editor/qmltoolbar.cpp | 4 +- .../qmljsdebugger/editor/toolbarcolorbox.cpp | 4 +- src/libs/qmljsdebugger/include/crumblepath.h | 1 + src/tools/qml/qmlobserver/qml.pri | 2 + src/tools/qml/qmlobserver/qmlruntime.cpp | 11 +++- src/tools/qml/qmlobserver/qmlruntime.qrc | 3 +- src/tools/qml/qmlobserver/toolbarstyle.css | 28 +++++++++ 19 files changed, 82 insertions(+), 26 deletions(-) create mode 100644 src/libs/qmljsdebugger/editor/images/color-picker-hicontrast.png create mode 100644 src/libs/qmljsdebugger/editor/images/reload.png create mode 100644 src/tools/qml/qmlobserver/toolbarstyle.css diff --git a/src/libs/qmljsdebugger/editor/crumblepath.cpp b/src/libs/qmljsdebugger/editor/crumblepath.cpp index 4fdbfefc49d..00666cf5d2a 100644 --- a/src/libs/qmljsdebugger/editor/crumblepath.cpp +++ b/src/libs/qmljsdebugger/editor/crumblepath.cpp @@ -57,11 +57,10 @@ private: CrumblePathButton::CrumblePathButton(const QString &title, QWidget *parent) : QPushButton(title, parent) { - setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Fixed); + setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Fixed); setToolTip(title); setMinimumHeight(24); setMaximumHeight(24); - setStyleSheet(lastSegmentSheet(true)); } @@ -119,10 +118,14 @@ void CrumblePathButton::setSegmentType(int type) // CrumblePath // CrumblePath::CrumblePath(QWidget *parent) : - QWidget(parent) + QWidget(parent), m_background(new QWidget(this)) { - setMinimumHeight(24); - setMaximumHeight(24); + setMinimumHeight(25); + setMaximumHeight(25); + setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Minimum); + + m_background->setStyleSheet("QWidget { background-color:#2d2d2d;}"); + m_background->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); } CrumblePath::~CrumblePath() @@ -159,12 +162,13 @@ void CrumblePath::popElement() last->setParent(0); last->deleteLater(); - int segType = CrumblePathButton::MiddleSegment; + int segType = CrumblePathButton::MiddleSegment | CrumblePathButton::LastSegment; if (!m_buttons.isEmpty()) { if (m_buttons.length() == 1) segType = CrumblePathButton::FirstSegment | CrumblePathButton::LastSegment; m_buttons.last()->setSegmentType(segType); } + resizeButtons(); } void CrumblePath::clear() @@ -181,33 +185,45 @@ void CrumblePath::resizeEvent(QResizeEvent *) void CrumblePath::resizeButtons() { - int buttonWidth = 0; - if (m_buttons.length() > 1) { + int buttonMinWidth = 0; + int buttonMaxWidth = 0; + int totalWidthLeft = width(); + + if (m_buttons.length() >= 1) { QPoint nextElementPosition(0,0); m_buttons[0]->raise(); // rearrange all items so that the first item is on top (added last). for(int i = 0; i < m_buttons.length() ; ++i) { - QWidget *button = m_buttons[i]; - buttonWidth = (width() + ArrowBorderSize * m_buttons.length()) / m_buttons.length(); - button->setMaximumWidth(buttonWidth); - button->setGeometry(QRect(nextElementPosition, QSize(buttonWidth, button->height()))); + CrumblePathButton *button = m_buttons[i]; + + QFontMetrics fm(button->font()); + buttonMinWidth = ArrowBorderSize + fm.width(button->text()) + ArrowBorderSize * 2 ; + buttonMaxWidth = (totalWidthLeft + ArrowBorderSize * (m_buttons.length() - i)) / (m_buttons.length() - i); + + if (buttonMinWidth > buttonMaxWidth && i < m_buttons.length() - 1) { + buttonMinWidth = buttonMaxWidth; + } else if (i > 3 && (i == m_buttons.length() - 1)) { + buttonMinWidth = width() - nextElementPosition.x(); + buttonMaxWidth = buttonMinWidth; + } + + button->setMinimumWidth(buttonMinWidth); + button->setMaximumWidth(buttonMaxWidth); + button->move(nextElementPosition); nextElementPosition.rx() += button->width() - ArrowBorderSize; + totalWidthLeft -= button->width(); button->show(); if (i > 0) button->stackUnder(m_buttons[i - 1]); } - } else if (m_buttons.length() == 1) { - QWidget *button = m_buttons[0]; - int buttonWidth = 2 * width() / (3 * m_buttons.length()); - - button->setMaximumWidth(buttonWidth); - button->setGeometry(QRect(QPoint(0, 0), QSize(buttonWidth, button->height()))); - button->show(); } + + m_background->setGeometry(0,0, width(), height()); + m_background->update(); } void CrumblePath::mapClickToIndex() diff --git a/src/libs/qmljsdebugger/editor/editor.qrc b/src/libs/qmljsdebugger/editor/editor.qrc index 0e72b9a0973..c3fa47c2891 100644 --- a/src/libs/qmljsdebugger/editor/editor.qrc +++ b/src/libs/qmljsdebugger/editor/editor.qrc @@ -16,5 +16,6 @@ <file>images/segment-hover-end.png</file> <file>images/segment-hover.png</file> <file>images/segment-selected-end.png</file> + <file>images/color-picker-hicontrast.png</file> </qresource> </RCC> diff --git a/src/libs/qmljsdebugger/editor/images/color-picker-hicontrast.png b/src/libs/qmljsdebugger/editor/images/color-picker-hicontrast.png new file mode 100644 index 0000000000000000000000000000000000000000..95b88ac8f0a20ce091821002793d1cfc3302c0b2 GIT binary patch literal 3206 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 literal 0 HcmV?d00001 diff --git a/src/libs/qmljsdebugger/editor/images/color-picker.png b/src/libs/qmljsdebugger/editor/images/color-picker.png index 73d9ae3dfc40995337e3a0762831fa908e390120..026c31b3e1ddaaf4697b077ac693f3ad576b7023 100644 GIT binary patch delta 467 zcmV;^0WALU808otiBL{Q4GJ0x0000DNk~Le0000G0000G2nGNE03Y-JVX+~f3V)DE zL_t(|+G70w|33pIfQb~vo}Qkf+1c5;WEsHA%iHz;|NmF)?Ch87>+5?-GC)N|CHD94 z-=%NgzGZm(_ASH9moGzLaxBCcARr*%_x0;nhV$poGkp8@je(Dk?-YswjEsy}HQL(R zPG)9iKF7z$=l%QlZw3|?7KTTU9)CUh`t@ruObz4z|NpTWz@(?Am&L@yG?|Hs>9>f8 z2<x9ee-?cD^lAP3_wV=JxpU_WTqTxhWMW`o;9jwEZ9rvJ^*LEt+5htL^55j;<!xZ< zkukafObiSR+zS^j5Bl=;$GzWw{yq-~2sq5c!}FYnhewN$0Za@G4BT_)FMkhu|NiT} zZ{L4Dd+_k_LTPDfNd^W6Wn>rQGJs>=g4F>pUwyjw@#D8=w{JgKBr7W`jviCE3}7}e zG?jYz_`{XgZ$3Y}cK!Y$85vB?_zYk@e)3k{gU6pwT)cd5s+^p>IIc8;%K(;X)0Zg5 z#ivO#Ffj1oOJL{*z|sLD11JLnBLf4&e<)_aX8<x_q%=DN1^_N5|GHWeiHHCI002ov JPDHLkV1faM<A(qM delta 479 zcmV<50U-Y681Wb(iBL{Q4GJ0x0000DNk~Le0000O0000O2nGNE0N{5$_^~0M3V)nQ zL_t(|+G70w|33pQ0TTm_!KekawZPNUQ#3m}TbCvl@bdC@{r~^}6+1iorTY5%UaDH4 zqM{P}`}gnCw{PDvynXwY;pNMhA-L4CkYj;>fPmlEuU{F?pFhv=?b|m7K0dxvBw4`7 z$cR<3t*z~3W@hGde0+S~zkmN`V1Hp@VR-cD(W9?lzZT=NfDv0x#$o}Jo}OM76BE;9 zCMKreA|fKJfByVg@afa1_3z)m-*@NEoi8}O`~Uxc42&h7xL2%P8&FwQeNI+Z_P@Nm z{5N@dc^h2%QOqJ>0TTlQ1NXv(%Y(jr{c-R2pTExo0s;>6@bEn6;o;Gu)PDjd1_lQ1 zx$~C?y?_7p-nZ{RpFMc^c%ihkv?K!qgEGDlAl3qoc?(ttynOZP-p7yMp54CvV3Dk> ztT=kYAlCwB14C1(hmSv8dHv?|vuoGyFOreLG@KF(SdX8)mG|KB=Mxt%-<v8YCohgG zNt0^<%e3iB6yxI4q!}0(cr@^3NJ19i$_I=L3=E763=IFF7;iGi2N*}I%;9eVU;rx@ Vr!nZ&hN1uf002ovPDHLkV1h?=>s0^% diff --git a/src/libs/qmljsdebugger/editor/images/from-qml.png b/src/libs/qmljsdebugger/editor/images/from-qml.png index e3a6e24c1994c04a9a15513af6f94fd6ee159ee2..666382c06dde13aae6cf433729da5cb155cf095b 100644 GIT binary patch delta 499 zcmV<P0Sx}L8HE`kiBL{Q4GJ0x0000DNk~Le0000G0000G2nGNE03Y-JVX+~f3V*Ok zL_t(|+MJU?NEBfhhM#|TC#y9{S3&HO5J8=#po8p6La_%i@YJbO&?)FD(FPIdLADOk zsUXljj9!#3g@Xiv<7~UM)-FMWx`J~_ciFAhndS4+ET+>SJ@8-t58nTMKmJz%y+9}a zRDc~3`9%Pi#2?qT?RlV2MEKVU5`Pd8kxV9Y8|VQdegf)`z!$?Xs8lK~TbibkOeS$% z*Phe$_mdM7no{cNYBsxa(0)rGDC6T)inac4Y`*wPv*F$`E$fvx3vmn<7ZwP|quiXl z#hLDomsbV`9v*RUI0AsNw8Y13mWI=yJ#(IsjvMsWW9W}&STB4}o0fGyFn_{OJkIvm zPeL(`(-+#gcJ3;d+b$AmhFO08mg1XFcO$LWd>lBA!=C*cRo?^PL)c`!Ym**g?1riU zCt3oDMB<2pt#X+;U8h#7u{&BvDcCscu=TnGB_|C`2kyWlJvGI~;1AkPoh14WR8^js zmNgC#=)hyGP++z^Pc$#k<Vc=rS<~Jua0edOhleRWE9P?5+=I`>qH)|V{6#*WPXV2N pUpc6a2iXyk?ZcPKYt;X;KLBXvMQRH=6qW!0002ovPDHLkV1i#?;*9_R delta 545 zcmV++0^a?F8M7H7iBL{Q4GJ0x0000DNk~Le0000O0000O2nGNE0N{5$_^~0M3V+^7 zL_t(|+U%9RYg17e#((FU+XO#~6%$G&h**Re99$|CGGq{h4E_O5odmN4$r3O^26sCg z0xr4;S#)ubE@qHQi50R~#DE`H2=_{x5QpA;d0(fLDEYY6c2NAm8P4Ir!}D<7=O_{3 zFflk}{(gbL@J1;$56q3Z+X9**;(zW-K}7Zz5R=jL9mjbJEDYcGv-}E(h)Ahax&efN zfL{SM{7jWnF%j7+m&>$Tt-W*8G)bjW^!t6svaBbWOlCbAja~(cTI<TBghmQXi#4Cm zS9X?nmyES8((_id){hSK6*U@-rDlAWb1N}Iv!RFSbo%bT9Q+#5fLg7FZGYRioi^`o zJ6xZ=MzlLm_3>+VK5egRtuucVQ8t@pZE+nrX>fG$ILl|Qa4~p+8PDY7v-fOo+Bdb< z55~^HfN>6by&m1K9lUQI0I!Zz_<ZUM5fvt=Jb;;rgEk<UOpeY|Da@B9uH*8;+rU*& zKP{ZtFbLE`t3c70z&Hm0xprKRLZQ(4-tmIR>H#iQ&Jt{!_q5h`rdGu?2LmFJ$kswT zd^z^vJcei7(pndNb&($ji9~{UJici?x8542abIiw<{-N0C#uzI0hs%ps+iQK!!$+2 j_A`{~|Cjmi3;Y-WYu%loa*XW800000NkvXXu0mjfZiM^u diff --git a/src/libs/qmljsdebugger/editor/images/pause.png b/src/libs/qmljsdebugger/editor/images/pause.png index c5d33a2d04b7ae11b35e88e4ef8033057a809093..114d89b12bdca29a40dd90d6004b53d00d323257 100644 GIT binary patch delta 390 zcmV;10eSwW7?~I$iBL{Q4GJ0x0000DNk~Le0000G0000G2nGNE03Y-JVX+~f3V%dN zL_t(|+N6_BZo)7Sh2MmqRD`3D<8Xo^!Ge>p>as}fiZfK)fD6De0tganJC5gdQz~2p zESQZwqw(kWMj9cBXQF++jPm?lM8@Zw<ot89nY<1LSM`tedV-4rNMe-dbi-k((`lu% znHl9df5Ftn!g0B*xmx*Ap7Z>MB!7}iIkstl<B_N;jdU7AI7ig=m4z7Ky=qwo91bDs zI-Qip0M_#63;@8^wOW9^{XT9iOQPRbbi2tzfCIEw6tRWFAt1|yX?kCQ^Ii?9FRC$M zyA8;)1ZgVw6?jhz&;rp<-0f7dOwsAwx8PLaLV!_?0N+i6tSA(ZEZC-j5nDl5B$8@E zK-)Q_yWM?2tqP+moqvE+(?}}>Nvi4rfD{`7TK@qdNaDSq-M&3UlJhT-F+%vu&*$5A k8|}g+K%U*k1W(4#09at*Lxr&l`Tzg`07*qoM6N<$f)l>7FaQ7m delta 403 zcmV;E0c`%67^WB@iBL{Q4GJ0x0000DNk~Le0000O0000O2nGNE0N{5$_^~0M3V%^a zL_t(|+U%7vZo)tiMgJ_e9K{6<h>jz12Pz|_i3G<0C1touEAq=vmXT4s}Op1tN z6QL+rbo^$uGsWBaUz#OV#VuuUW8DFND!SBItyXWwnCyHPk@aG+m@SvfU-kKXKKnPo z7?VA1Hf1~-5ys=*YZPSwX2zK8d4D);XfPo3`}DHiW&mbaSyZ<za5^c<Qi6uH3g;9} z(=CJAdy%4G9FH6{s!G&apsuwWplPJ`UT`>sfTH-Gs;czrkk0@I$YY*|79Ed_G$l=v zZUE=KSXFrt2?4tuBTWsGgt|@Oz1D!%K=4xC?}gG-5XS~-dVK~?1dbWDX=nn#XWIgK zE;t-IhTOKW%&^RX6_y#!Ibgr<mO&!|D?%|*0I1rQddy_XvLis1YG(9)0+`8oPl%%H xLl%+s$8;L(ob&lUnf$6>65W5aJD{_^1^^Eu&r2z@FslFn002ovPDHLkV1jUQt_1)9 diff --git a/src/libs/qmljsdebugger/editor/images/play.png b/src/libs/qmljsdebugger/editor/images/play.png index af75fcdb6285032ce073ab90bb1648d19d372b3f..011598a746fda2fb68de10ee4233429e474b7908 100644 GIT binary patch delta 658 zcmV;D0&V@L8lxH^iBL{Q4GJ0x0000DNk~Le0000G0000G2nGNE03Y-JVX+~f3V%*X zL_t(|+LV(^NK|1I$ItiO@6KrI%rK5cLbMBwgl47?1;s}XgrFcOs1|{3dZ;TmZQMl= z35imRAlewTZBdJS&?+glutkB9F}=*0=6Ua(`#sKS5lNDzp4Hi$AHQ=re?~-*>^=Yh z5C8xPTd3KIm%sr4i0CpG%tyq&xqr!7wiO5m0ARo_whlG8yIXb+$2$|x5b?}rK>~ge zb_Jt?n)@34{YM)PKEJ=v8i&LYG&sgB{$fJ|005;mNh(8KW5k@haY7!ubm(lTwq}Nq zhP{$kwIRUs6qcl8JmZp2E;V)U(F0?>vh8?te|4m~L`Z|{t+fhpUDvpdXMb{j&Xkmc z9y)|UO^467>Hb?6<i3`M>+#OS6e6Df6C{2&Kk`M50b+_YakPLC$k@hGmZHiXL3VPm zM<w4hwLZQ(*&gpm)B(Wg8iQ=6VA9#V&SgtFRroBwIG@yVd0D6B3TD*`<}i)5dqbvY zphIp8SB{{;?Q0COxq_0G1b?Y~CbbeuYb@#lMk}JCI#6SA$@#*=_x9U~C4mO7aEpIm z1IQO0<8wtC4L1fsYqSUnj7GLNlL~x%l&+9Pbu;rVb2U~UQ-9r{?D~j86XT2+=fEw_ zFhvzhPctF+tA7s&M!Cgb$LeG2JQ4t)K{A?=l8Tu$31`|w^Gn59B4@h&YI^=bqAN-N z{R1Hcx5*Zvci~#`q_SRrprQGxxpvO^_`il%4G3vGnu(mMN`=Buh7qOJH9KIZ6J5#8 sWr2vssun|t2JcwHTCfB5rqlRy015j|I=c?svj6}907*qoM6N<$g3z5RyZ`_I delta 662 zcmV;H0%`rD8mAf|iBL{Q4GJ0x0000DNk~Le0000O0000O2nGNE0N{5$_^~0M3V%{b zL_t(|+U(UkYg9oL0N^uoAG!O;F4-iTKnyCe45Tp;LX3)qAlN7<=r53{)w<belgiz_ zd)*=^+NBT-n15g+*oXuRNhN~Vh>*l}U-vmP=lBEk#x)N_aA2x|^Ks4@&S69Zhj}<0 z^7;1xAflfx06@K7HxDA#FEgmsYJUsBDXdnjw*i11c!@aYH(TdFd-?>{9mjcX+xGRn zLUBD9mx++V*_|+X0jI5D^I5G{Tdh<o(+AdMAtgl=0OkWVaLI^9=Ce1F*~DAhw(EsL zA+>M7_ap2^uJV;fA$eq-;PU8|p=e|(cW3O#Sl71gyS<bx7VunOd9JUTVSiI~g^NDA z6zKuwW|H#w<<TfNk*PS2^Qu~{UfT_d1sbi6Y_(mr)!mlg{B6|;zpIXDQAf2=rUM*0 zmlER_2WL~mi8b4{7vkdRaSzQ#TX|qWMkcwCUoc39T3`)Q%1HBs*2fIZU|Qa!{?i)D zm&QuDTz&xnTRj7fW?LA@A%7Afi=@znl-QAN%vm`-ZT4#xTAXjD4g6^6N~&8+OG{g& zQmOY0S{+w$1td{%r4Xb<jgSBpG3`^*?E8?lA`c&KY`nR*zP>L0xI}>$B9J1+88Oa* zYn<i%5$o93$&B9aTNNlDl}e@ezxze804XArNFov}74+*f?p!YKjcdL`#3#jKaSZ@^ zS|qW6rfb~NO?H-_8JKjZG9+oSP%JpT2Hq7=N<E)RoxD12p2`~1SaCh~!SeF*&R%9w w9PoI~n8(l$pBC>IH}^A5+5esV*MT1c0HMG{t-WRwPXGV_07*qoM6N<$f|;T*?f?J) diff --git a/src/libs/qmljsdebugger/editor/images/reload.png b/src/libs/qmljsdebugger/editor/images/reload.png new file mode 100644 index 0000000000000000000000000000000000000000..7042bec9ae9f1076acd08e9fa72fda4f51118cfe GIT binary patch literal 3418 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 literal 0 HcmV?d00001 diff --git a/src/libs/qmljsdebugger/editor/images/select-marquee.png b/src/libs/qmljsdebugger/editor/images/select-marquee.png index a28381f117653497bff3245a2712acd341b545f9..92fe40d1adc99326c9edb2c31d3dd7a042a04f0d 100644 GIT binary patch delta 162 zcmdldwp~oIGr-TCmrII^fq{Y7)59eQNDF{42OE%-|NK93qvCw7@+40e$B>F!Zzg+l zH5l-?#4mZCZIgAG`&jRkpjBdz4z+IPWO+7`U-_M%3+IBUT#>t>3~O$9OxwJz?wU@f zi676M#%<i6yOuC2Rk0gb-st+{to<imL2g-H*SiJ%iA)nR=JYc%xJD`Rt$o$(2(*^L M)78&qol`;+05ae@)&Kwi delta 169 zcmdlkwogp4Gr-TCmrII^fq{Y7)59eQNK1e)2OE%lP;UEUqvCw7x=c?O$B>F!Nq_$T zw`bO66lU%{xPq01k=xAiKSO=RnfyB&CJM&#a7ipQX^UzSdk}D@!&$S<m8F?uws!|Z zkFthnVrM|of&YRcE{j)YR4i4RlPY*d+(XcB!-m6BpBINd`>-8o8^izq%nU9+m7HXc Q<Z*!bp00i_>zopr0FXmDasU7T diff --git a/src/libs/qmljsdebugger/editor/images/select.png b/src/libs/qmljsdebugger/editor/images/select.png index 5b0376f6f7e0a725ff5d236a8767cf0d733eafd7..672285582b5cc30d0cfe457a20c2982e1b056a99 100644 GIT binary patch delta 603 zcmV-h0;K()8tfS%iBL{Q4GJ0x0000DNk~Le0000G0000G2nGNE03Y-JVX+~f3V#<# zL_t(|+KiGtXj4%bhM#M!Q6aJM53B*{Ag!d*DIEf#U{Q<EP8quC;*`OuxMVOxa4fhK z910y`K+;-7O27_IDTQ=NjZ?V|^@ar7<c4$8T+B~Dm!yPXN?-UmoaH(1dEXBa0nh*^ z;Od+j7m$c>se759pZD(V?JfCyzJEzz7;tb=O6SGVd_JEmm&-;h7JCbf0$0y-BO+%2 zfRSV}`L)$*DG_Px?Cksq1OiWhTfpUu0B%I1(RZa%$r6zh5ouJb)ynen@_XPRaJ}D6 zKVWETYU=6!{=QYO*OiFWMdYuDG_%=kW_EV=1#q|5O+P>b#?$Ha!SV62)qifcm59_t z#1@f;ZQHfg)zuFjH`f5I9{_Ma9*=Jpi$$x^Xebd;B4TwwH4!;64CDL4!oo-w&>v1s z*Y(|CFc@sN+c+E!04bG9Rw9x3l1in%ZEbD+0?hsz&vNkl{m*n=uPLQ0+qRWq7)MH} zqq(`cSHR8QApiFT4H)0v-hV!*R4P_Fo!%WA8+%<S6n^Wvp7nS<kAW-a0RX%k8ylO4 zhlhngAn+XUMk0~LX0usMrBa^&Z+A-v0fyu8_~QEddIY%BsqMkq+S=#S(^D0VM&AIQ zK`j6bg~Q={6B84jp3a?aw|g>|%l$M>)0m!~4g$_W0Ig?w<qCyDAu!W4|70?mkAQ0s pV30K6_R7l2%bA&(M_mX11^}`#PS96pGu{9I002ovPDHLkV1n}f7#IKm delta 654 zcmV;90&)H98J`*<iBL{Q4GJ0x0000DNk~Le0000O0000O2nGNE0N{5$_^~0M3V%vT zL_t(|+U%7-XcJK!$G>M<t3qSrKd=U*gQU_(r*=390gD=hX3Ee_7pDwP#U+C`6i30O z;84hL7No63q#T&R=|Uh~65|xEp<d`=lU#V0=J1m1&%slI=4f*eT>Qdsc@N%)@ArKl zk0T-sQ)e(_4IMDjZ;|6T4!~JwEPrQC%(7qHt`6eyc(7P3zMPqvnFTNbz~{*V5&bm) zH~>?XN~Kh<*VUDkm1h8^0GxC7PJfmQ001U8Ha6aOyIn>^RxX$O#Pj@J0GHjO9Tad; z5QOKNrWr(ZL_}7z*=($?uD$?p3&4dx-3$sCou8k-S1y;0cDv1ps7*xQiGQe5C=~Ls zSnMHyYrSp;1#keSWm(><)oO-q+l+`>L}U_?WtwIyold`U+?)r%4GI8&8=@%g92^`N zmSr&_Vnk#(pcWAwsjB*MX=!QF4KQ*-$y$n{>_#Gyh;7^O`FsFCnx+}+>+A0%N&1k< zWWE5<2d(MvdzhP>yRRrpi+?d@n5M~8RXt>k9WE{|J_c~9_oBT-!~vMjX0v;ZM#GS0 zc{daaJ*if!Ulm0u1OkCO&TID!0D$23_V&*H{(hC``3C@ksZ?sY)9ExNNqPey`0JH> z1x$#dxV*Ksl>%_pspZYh&CR#R$Hz<%gr@)kURwkJqse6QdN>>o^kZ~>%<uQlmP)11 zx~{9yXfy&~%qxKFnO==25{ZPa>)-PE{A&Q?UIA|609;vHTYI#yuyEVW0oU)qpWnf$ o<a1)P0oc^f{{KJup96jj07uJ|n3HQUCIA2c07*qoM6N<$f?e7zGXMYp diff --git a/src/libs/qmljsdebugger/editor/images/to-qml.png b/src/libs/qmljsdebugger/editor/images/to-qml.png index 84ff48fa951f40bdc013ec8eaa71a39ad7f6f0ea..2ab951fd082096b1b3838d4e2342d302ce23518d 100644 GIT binary patch delta 521 zcmV+k0`~pK8Jig)iBL{Q4GJ0x0000DNk~Le0000G0000G2nGNE03Y-JVX+~f3V+5) zL_t(|+LV*QYZE~fhriiuG$H8Pl!EvN2;L$|V=63&#zM%c=?a1fiXh}5+Jop(y$E`! zAW}*N5kVqW4;55U2)TF=LIPeqxwx+2+QcSmQR~v@#fD82Bl%!pc+C9Xo8Nn*M1&wp zshz+G{b>U$BJ!gX5s|J1?2-QXo`2^(26lCwA3{JxL`tR7F<=bPMFh3+gmfyE28xYl z^VvJweo!u#X}8;*O2gqW`FtMV_dUmP9%ZxHdE2(%bTW@8lXs5XJuaF3`{c>elKhWK zrE(V7t_2J_5jqefcfG*utyyj_EHDVeFycT+Pp48>fg&1s{xX@}Nlwq7VSn+`eQLED zhbJd{E}N#=+3P^@`$^5vM#J#s8+Ozox-CNPT7k;V7s&cLQ-wm0i0ir?0oJ^qsMR$9 zUWH!sKK_9*MrmnZsaC5fO&eIjT>R;lB4D(pR#6I^9l!Z_?=467TAZ7iLE9t{tRUFN zRx|g@*cy!xdkKfe50aUf=w54}X_~mMdnJ)b+|UE@#mHy<RIDysIDe68%Np2)E)V`P z7psO?ZZw`xTh_zPgY+*Ch92b&>h=0%U_=f18-uKf$fq8GVfixv;C50dxvb&Y00000 LNkvXXu0mjfsQmH0 delta 566 zcmV-60?GZG8OIqRiBL{Q4GJ0x0000DNk~Le0000O0000O2nGNE0N{5$_^~0M3V-rR zL_t(|+U%7-Xj4%X#((d%(N<!fElH6ICH|wNMaUq6n1DhYBm|*k6U5?_Jf-01P_R&3 zof4d!ge0hokVP=Wp+pB05F9cXj1TeEkQjv)HRL!&>g!AMO6Z{Y!5!}5-tX|8^WAe5 z5n(T(vd8%Q6O7sg6-C*)Jq%3rxqsgVTEJ#6u&t*evTa!q5PNh?(|iI<@5DDu0ud3( zWHMI(U#}WgF2&BKx~`uA5<ohYN_`WNw}nE1cDw!ijLYRB8jaHFbj*6a{x}ke+^^MY zZ^TMyry!Y3K1k$miN170;_>)xae!j6xCD5tT>V^htu?>F(Zv8WCuUaj`G5RCw`iI+ z35@LMB3;+-0tr#T?0jbQ$Ue^9yg=#UORCi>e!t(AJRA-?wrS$Usn?nuQaR9cQyZ@{ zJ~qa&#W`wEtDN?F357zoM22BFdj~((ztjEN1z>ID74IiMFs1m|uXHJw%QPB|p%kPe z=Gg?GJ@1y-RN$jmI9O7-IDdPIg{upws=6x${cQT>+0>fm@puRtvs^wO!|iteVN<ID z!!TBY!Qed+X$>3|z@zD(zUzT^$7!xNS7Nc)@*o#E?m@3q^R1Hr>0B<ik<Dh8tq;v< z4~8BUJya@{JHUjaQL&3@x)m+pla){T|7HIB34RR#!7QA>1(b2A01E&B07*qoM6N<$ Ef^w(|yZ`_I diff --git a/src/libs/qmljsdebugger/editor/images/zoom.png b/src/libs/qmljsdebugger/editor/images/zoom.png index 4abf31444006ba1d80eb508c24e8cd0b0606d8f8..ebae877310cc1053dd2a36af352ba077ef952d6a 100644 GIT binary patch delta 547 zcmV+;0^I%J8MGN8iBL{Q4GJ0x0000DNk~Le0000G0000G2nGNE03Y-JVX+~e3V#9L zNkl<Zc-oYaO=}ZT6o%jF4Ab@p2o*8pqlC0kBWfdsLfkaq+MPSmjnJJ-A&G0D8$VVS z+`8x@yMRc#Py@+gCe$(Mkd^-+nMpD;-gAx%NvM)3=>r!o=W-v;Ij<%nm{F_MisSM4 zmFIcep6B^N5VVz2uj}>tPsE_j1b@|P_4#xfyiX)<U}GbN$z%f8?ZUE7d?I?*Xf!^> z3M!S#?sz;o+24O;CK5@A2%-oG0)cI}aeVxai0EFk*|h%`tN?)T`!6>)x6M@QDoiuP z>S~Df^$?~RVQZ^^Z1#?>lsZ_{!3qG3Mx(pQ<aHPZL(>SF#xM-V+8V($8Gp%S4n$O3 zBrpJAI2<Ajrx0PBU#g}FbR94Z14I<XcA%7MJI)U<{}qVHKligU8${H;NKkFHzLRa+ z^Uurzr39AMfn|M-nECL+7|Z4Ifl}(t&dz;gvsr}UZ=9Yw=ybk;nST+{t!}qFj1>St zsZ=Tw(PJXoB_f@fTg<#iM0mHE`7<*=bR36b1&b&Y3fGv~V&*H%eAw&tUR+850Qr1= zkD0%Sh{?=PT-W`0DFFcFa=E9>{6Rz_5qU5e3|jLPmZ9J8ABo6Y5z$5D=KNun^)e@u l$>`~Hx_G{}^ayeM835e~VH&P{OC$gQ002ovPDHLkV1f%#{2BlN delta 592 zcmV-W0<ZnF8Q>WqiBL{Q4GJ0x0000DNk~Le0000O0000O2nGNE0N{5$_^~0L3V#9% zNkl<Zc-rihzl+mw7{;HZxeEtwa-40U<qC>aih@umxZdC@PEHOkio>C!gSaY);2}6T z`J-6>gj)qQwOS~|^E!191h=M1(=_k%x-_-QwO&qcQ2fG6LWbw_ectE&eq*RA4s)3} z<n{Lhti3+g>ve=-h~aQp^?m=2=YM%+&+`Uh7&;<yPej}}jv*q`YBU=A2ZUjWAPBAw zhvB2OwG$|p^9X_fz1~jQb>ChTkt-tdau$%vf$#gZAP62*s~gB>b08H_1QZI#vAS9~ zvc3K6xrlrgk+z6{WV#FngTbv_ZhbkQKZ>QL5o~*em6Z`}J3^^+62;=FOn)55*Z1RK zPe8xlKby-PgJlt>Nf-uUS%hs9%gaPITY`vGlie?JV9fy_iiS`n$R7vMFaXn3WHKg5 zMu~W82XP!b-EJ4E`cnafs-oB10ZAumPwEWfIKJI(e-PLGG!-X_@mS%y9k}lMNJQ=@ z4i;TE)*L`vL^kX77Y{3y(|;%y*AYcy?Cy5a>9j!dE6HyM228APiHOr`H7_-r?`k5F zA^C>nIg)2cz9M;ERV8)EGvnuoh?4|4X;q%&N0J+=dY9zQMGnm00H#wi^ZY{c!eokW zsOsed17^jOUQga%tLnAM06bRJ+8;UiwI;$(RCP;LGpbrioxuX(*(KUk)u#ZQc>v@8 eFZ16Ad>;UyQ5)UX4Ne~b0000<MNUMnLSTYo_zVyL diff --git a/src/libs/qmljsdebugger/editor/qmltoolbar.cpp b/src/libs/qmljsdebugger/editor/qmltoolbar.cpp index 333616289c0..14c9c7c1a60 100644 --- a/src/libs/qmljsdebugger/editor/qmltoolbar.cpp +++ b/src/libs/qmljsdebugger/editor/qmltoolbar.cpp @@ -21,7 +21,7 @@ QmlToolbar::QmlToolbar(QWidget *parent) : ui->select = new QAction(QIcon(":/qml/images/select.png"), tr("Select"), this); ui->selectMarquee = new QAction(QIcon(":/qml/images/select-marquee.png"), tr("Select (Marquee)"), this); ui->zoom = new QAction(QIcon(":/qml/images/zoom.png"), tr("Zoom"), this); - ui->colorPicker = new QAction(QIcon(":/qml/images/color-picker.png"), tr("Color Picker"), this); + ui->colorPicker = new QAction(QIcon(":/qml/images/color-picker-hicontrast.png"), tr("Color Picker"), this); ui->toQml = new QAction(QIcon(":/qml/images/to-qml.png"), tr("Apply Changes to QML Viewer"), this); ui->fromQml = new QAction(QIcon(":/qml/images/from-qml.png"), tr("Apply Changes to Document"), this); ui->designmode->setCheckable(true); @@ -47,7 +47,7 @@ QmlToolbar::QmlToolbar(QWidget *parent) : addSeparator(); addAction(ui->zoom); addAction(ui->colorPicker); - addAction(ui->fromQml); + //addAction(ui->fromQml); ui->colorBox = new ToolBarColorBox(this); ui->colorBox->setMinimumSize(24, 24); diff --git a/src/libs/qmljsdebugger/editor/toolbarcolorbox.cpp b/src/libs/qmljsdebugger/editor/toolbarcolorbox.cpp index c4d4d4e0fe1..8e1b94cfdd5 100644 --- a/src/libs/qmljsdebugger/editor/toolbarcolorbox.cpp +++ b/src/libs/qmljsdebugger/editor/toolbarcolorbox.cpp @@ -19,7 +19,7 @@ namespace QmlViewer { ToolBarColorBox::ToolBarColorBox(QWidget *parent) : QLabel(parent) { - m_copyHexColor = new QAction(tr("Copy"), this); + m_copyHexColor = new QAction(QIcon(":/qml/images/color-picker-hicontrast.png"), tr("Copy"), this); connect(m_copyHexColor, SIGNAL(triggered()), SLOT(copyColorToClipboard())); setScaledContents(false); } @@ -63,7 +63,7 @@ QPixmap ToolBarColorBox::createDragPixmap(int size) const QPainter p(&pix); QColor borderColor1 = QColor(143, 143 ,143); - QColor borderColor2 = Qt::white; + QColor borderColor2 = QColor(43, 43, 43); p.setBrush(QBrush(m_color)); p.setPen(QPen(QBrush(borderColor2),1)); diff --git a/src/libs/qmljsdebugger/include/crumblepath.h b/src/libs/qmljsdebugger/include/crumblepath.h index a8846fad9da..cd1f09f3b34 100644 --- a/src/libs/qmljsdebugger/include/crumblepath.h +++ b/src/libs/qmljsdebugger/include/crumblepath.h @@ -66,6 +66,7 @@ private: private: QList<CrumblePathButton*> m_buttons; + QWidget *m_background; }; } // namespace QmlViewer diff --git a/src/tools/qml/qmlobserver/qml.pri b/src/tools/qml/qmlobserver/qml.pri index c351d58caf3..7d9a503fb69 100644 --- a/src/tools/qml/qmlobserver/qml.pri +++ b/src/tools/qml/qmlobserver/qml.pri @@ -21,6 +21,8 @@ SOURCES += $$PWD/qmlruntime.cpp \ RESOURCES += $$PWD/qmlruntime.qrc +OTHER_FILES += toolbarstyle.css + maemo5 { QT += dbus HEADERS += $$PWD/texteditautoresizer_maemo5.h diff --git a/src/tools/qml/qmlobserver/qmlruntime.cpp b/src/tools/qml/qmlobserver/qmlruntime.cpp index 0109914f031..646f438869a 100644 --- a/src/tools/qml/qmlobserver/qmlruntime.cpp +++ b/src/tools/qml/qmlobserver/qmlruntime.cpp @@ -588,16 +588,23 @@ QDeclarativeViewer::QDeclarativeViewer(QWidget *parent, Qt::WindowFlags flags) canvas = new QmlViewer::QDeclarativeDesignView(this); addToolBar(Qt::TopToolBarArea, canvas->toolbar()); + QFile file(":/toolbarstyle.css"); + file.open(QFile::ReadOnly); + QString toolbarStylesheet = QLatin1String(file.readAll()); + + canvas->toolbar()->setFloatable(false); + canvas->toolbar()->setMovable(false); + canvas->toolbar()->setStyleSheet(toolbarStylesheet); + m_centralWidget = new QWidget(this); QVBoxLayout *layout = new QVBoxLayout(m_centralWidget); layout->setMargin(0); layout->setSpacing(0); layout->addWidget(canvas->crumblePathWidget()); + canvas->crumblePathWidget()->setStyleSheet("QWidget { border-bottom: 1px solid black; }"); layout->addWidget(canvas); - canvas->crumblePathWidget()->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Minimum); m_centralWidget->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); - //canvas->setSizePolicy(Qt:); canvas->setAttribute(Qt::WA_OpaquePaintEvent); canvas->setAttribute(Qt::WA_NoSystemBackground); diff --git a/src/tools/qml/qmlobserver/qmlruntime.qrc b/src/tools/qml/qmlobserver/qmlruntime.qrc index 3a9e6080e35..e8d08c6356e 100644 --- a/src/tools/qml/qmlobserver/qmlruntime.qrc +++ b/src/tools/qml/qmlobserver/qmlruntime.qrc @@ -1,9 +1,10 @@ <RCC> - <qresource prefix="/" > + <qresource prefix="/"> <file>content/Browser.qml</file> <file>content/images/up.png</file> <file>content/images/folder.png</file> <file>content/images/titlebar.sci</file> <file>content/images/titlebar.png</file> + <file>toolbarstyle.css</file> </qresource> </RCC> diff --git a/src/tools/qml/qmlobserver/toolbarstyle.css b/src/tools/qml/qmlobserver/toolbarstyle.css new file mode 100644 index 00000000000..8fbbdf9f875 --- /dev/null +++ b/src/tools/qml/qmlobserver/toolbarstyle.css @@ -0,0 +1,28 @@ +QToolBar { + background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 rgba(85, 85, 85, 255), stop:0.3 rgba(79, 79, 79, 255), stop:0.301 rgba(70, 70, 70, 255), stop:1 rgba(57, 57, 57, 255)); + color: #EEEEEE; +} +QToolBar::separator { + width: 1px; + border-right: 1px solid #6d6d6d; + background: #414141; +} +QToolButton { + border: none; + padding-left:4px; + padding-right:4px; + padding-top:5px; + padding-bottom:5px; +} +QToolButton:checked { + border: none; + padding-left:4px; + padding-right:4px; + padding-top:5px; + padding-bottom:5px; + background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 rgba(65, 65, 65, 255), stop:0.3 rgba(59, 59, 59, 255), stop:0.301 rgba(50, 50, 50, 255), stop:1 rgba(37, 37, 37, 255)); +} +QToolButton:hover { + border: none; + background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 rgba(105, 105, 105, 255), stop:0.3 rgba(99, 99, 99, 255), stop:0.301 rgba(90, 90, 90, 255), stop:1 rgba(77, 77, 77, 255)); +} -- GitLab