From 63185c68cfd8b4c884d77e0fbe0e0e6b86402316 Mon Sep 17 00:00:00 2001 From: paul Date: Fri, 21 Sep 2007 16:01:14 +0000 Subject: [PATCH] Qt: - fix statusbar panels width - change statusbar penels frame to styled git-svn-id: trunk@12114 - --- lcl/interfaces/qt/qtwidgets.pas | 6 ++++++ lcl/interfaces/qt/qtwscomctrls.pp | 24 ++++++++---------------- 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/lcl/interfaces/qt/qtwidgets.pas b/lcl/interfaces/qt/qtwidgets.pas index 13ce444fdc..d5b36cfaea 100644 --- a/lcl/interfaces/qt/qtwidgets.pas +++ b/lcl/interfaces/qt/qtwidgets.pas @@ -872,6 +872,7 @@ type public APanels: Array of QLabelH; procedure showMessage(text: PWideString; timeout: Integer = 0); + procedure addWidget(AWidget: QWidgetH; AStretch: Integer = 0); end; { TQtDialog } @@ -6076,6 +6077,11 @@ begin QStatusBar_showMessage(QStatusBarH(Widget), text, timeout); end; +procedure TQtStatusBar.addWidget(AWidget: QWidgetH; AStretch: Integer = 0); +begin + QStatusBar_addWidget(QStatusBarH(Widget), AWidget, AStretch); +end; + { TQtDialog } function TQtDialog.CreateWidget(parent: QWidgetH; f: QtWindowFlags): QWidgetH; diff --git a/lcl/interfaces/qt/qtwscomctrls.pp b/lcl/interfaces/qt/qtwscomctrls.pp index 5c44926933..94de8335ef 100644 --- a/lcl/interfaces/qt/qtwscomctrls.pp +++ b/lcl/interfaces/qt/qtwscomctrls.pp @@ -243,8 +243,8 @@ const PanelBevelToQtFrameShapeMap: array[TStatusPanelBevel] of Integer = ( {pbNone } Integer(QFrameNoFrame), -{pbLowered} Integer(QFramePanel) or Integer(QFrameSunken), -{pbRaised } Integer(QFramePanel) or Integer(QFrameRaised) +{pbLowered} Integer(QFrameStyledPanel) or Integer(QFrameSunken), +{pbRaised } Integer(QFrameStyledPanel) or Integer(QFrameRaised) ); TickMarkToQtSliderTickPositionMap: array[TTickMark] of QSliderTickPosition = @@ -497,9 +497,9 @@ begin // QWidget_setContentsMargins(QtStatusBar.APanels[i], 0, 0, 2, 0); - QWidget_geometry(QtStatusBar.Widget, @R); + R := QtStatusBar.getFrameGeometry; QWidget_setGeometry(QtStatusBar.APanels[i], 0, 0, AStatusBar.Panels[i].Width, R.Bottom); - QStatusBar_addWidget(QStatusBarH(QtStatusBar.Widget), QtStatusBar.APanels[i], 100); + QtStatusBar.addWidget(QtStatusBar.APanels[i], AStatusBar.Panels[i].Width); end; end; @@ -637,22 +637,14 @@ begin QFrame_setLineWidth(QFrameH(QtStatusBar.APanels[i]), 1); QFrame_setMidLineWidth(QFrameH(QtStatusBar.APanels[i]), 0); - if AStatusBar.Panels[i].Bevel = pbNone then - QFrame_setFrameStyle(QFrameH(QtStatusBar.APanels[i]), Ord(QFrameNoFrame)) - else - if AStatusBar.Panels[i].Bevel = pbLowered then - QFrame_setFrameStyle(QFrameH(QtStatusBar.APanels[i]),Ord(QFramePanel) or Ord(QFrameSunken)) - else - if AStatusBar.Panels[i].Bevel = pbRaised then - QFrame_setFrameStyle(QFrameH(QtStatusBar.APanels[i]), Ord(QFramePanel) or Ord(QFrameRaised)); + QFrame_setFrameStyle(QFrameH(QtStatusBar.APanels[i]), PanelBevelToQtFrameShapeMap[AStatusBar.Panels[i].Bevel]); - QWidget_frameGeometry(QtStatusBar.Widget, @R); + R := QtStatusBar.getFrameGeometry; QWidget_setGeometry(QtStatusBar.APanels[i], 0, 0, AStatusBar.Panels[i].Width, R.Bottom); - QStatusBar_addWidget(QStatusBarH(QtStatusBar.Widget),QtStatusBar.APanels[i], 100); - QWidget_show(QtStatusBar. APanels[i]); + QtStatusBar.addWidget(QtStatusBar.APanels[i], AStatusBar.Panels[i].Width); + QWidget_show(QtStatusBar.APanels[i]); end; - end end; end;