- fix statusbar panels width
- change statusbar penels frame to styled

git-svn-id: trunk@12114 -
This commit is contained in:
paul 2007-09-21 16:01:14 +00:00
parent 34cccaa939
commit 63185c68cf
2 changed files with 14 additions and 16 deletions

View File

@ -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;

View File

@ -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;