qt: fix invisible menus under linux

git-svn-id: trunk@14168 -
This commit is contained in:
paul 2008-02-17 15:15:25 +00:00
parent b961973398
commit 7a50172ef9

View File

@ -112,7 +112,7 @@ type
public public
constructor Create(const AWinControl: TWinControl; const AParams: TCreateParams); virtual; reintroduce; constructor Create(const AWinControl: TWinControl; const AParams: TCreateParams); virtual; reintroduce;
constructor CreateFrom(const AWinControl: TWinControl; AWidget: QWidgetH); virtual; constructor CreateFrom(const AWinControl: TWinControl; AWidget: QWidgetH); virtual;
procedure InitializeWidget; procedure InitializeWidget; virtual;
procedure DeInitializeWidget; procedure DeInitializeWidget;
procedure RecreateWidget; procedure RecreateWidget;
procedure DestroyNotify(AWidget: TQtWidget); virtual; procedure DestroyNotify(AWidget: TQtWidget); virtual;
@ -903,6 +903,7 @@ type
FMenuItem: TMenuItem; FMenuItem: TMenuItem;
protected protected
function CreateWidget(const APrams: TCreateParams): QWidgetH; override; function CreateWidget(const APrams: TCreateParams): QWidgetH; override;
procedure InitializeWidget; override;
procedure DoPopupClose; procedure DoPopupClose;
public public
constructor Create(const AMenuItem: TMenuItem); overload; constructor Create(const AMenuItem: TMenuItem); overload;
@ -6493,6 +6494,12 @@ begin
FActionHandle := nil;; FActionHandle := nil;;
end; end;
procedure TQtMenu.InitializeWidget;
begin
Widget := CreateWidget(FParams);
setProperty(Widget, 'lclwidget', Int64(PtrUInt(Self)));
end;
constructor TQtMenu.Create(const AMenuItem: TMenuItem); constructor TQtMenu.Create(const AMenuItem: TMenuItem);
var var
AParams: TCreateParams; AParams: TCreateParams;