You've already forked CEF4Delphi
mirror of
https://github.com/salvadordf/CEF4Delphi.git
synced 2025-09-30 21:28:55 +02:00
Added initial QT support (work in progress)
This commit is contained in:
@@ -47,9 +47,9 @@ type
|
|||||||
{$IFDEF MSWINDOWS}
|
{$IFDEF MSWINDOWS}
|
||||||
procedure WndProc(var aMessage: TMessage); override;
|
procedure WndProc(var aMessage: TMessage); override;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
{$IFDEF LCLGTK3}
|
{$IF DEFINED(LCLQT) OR DEFINED(LCLQT5) OR DEFINED(LCLQT6) OR DEFINED(LCLGTK3)}
|
||||||
procedure Paint; override;
|
procedure Paint; override;
|
||||||
{$ENDIF}
|
{$IFEND}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// TChromium instance used by this component.
|
/// TChromium instance used by this component.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -76,13 +76,13 @@ begin
|
|||||||
{$IFDEF MSWINDOWS}
|
{$IFDEF MSWINDOWS}
|
||||||
FUseSetFocus := True;
|
FUseSetFocus := True;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
{$IFDEF LCLGTK3}
|
{$IF DEFINED(LCLQT) OR DEFINED(LCLQT5) OR DEFINED(LCLQT6) OR DEFINED(LCLGTK3)}
|
||||||
BevelOuter := bvNone;
|
BevelOuter := bvNone;
|
||||||
BevelWidth := 0;
|
BevelWidth := 0;
|
||||||
Caption := '';
|
Caption := '';
|
||||||
ControlStyle := ControlStyle - [csNoFocus];
|
ControlStyle := ControlStyle - [csNoFocus];
|
||||||
TabStop := True;
|
TabStop := True;
|
||||||
{$ENDIF}
|
{$IFEND}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{$IFDEF MSWINDOWS}
|
{$IFDEF MSWINDOWS}
|
||||||
@@ -97,13 +97,13 @@ begin
|
|||||||
end;
|
end;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
|
|
||||||
{$IFDEF LCLGTK3}
|
{$IF DEFINED(LCLQT) OR DEFINED(LCLQT5) OR DEFINED(LCLQT6) OR DEFINED(LCLGTK3)}
|
||||||
procedure TCEFLinkedWinControlBase.Paint;
|
procedure TCEFLinkedWinControlBase.Paint;
|
||||||
begin
|
begin
|
||||||
if (Chromium = nil) or not(Chromium.Initialized) then
|
if (Chromium = nil) or not(Chromium.Initialized) then
|
||||||
inherited Paint;
|
inherited Paint;
|
||||||
end;
|
end;
|
||||||
{$ENDIF}
|
{$IFEND}
|
||||||
|
|
||||||
{$IFDEF FPC}
|
{$IFDEF FPC}
|
||||||
procedure TCEFLinkedWinControlBase.SetVisible(Value: Boolean);
|
procedure TCEFLinkedWinControlBase.SetVisible(Value: Boolean);
|
||||||
|
@@ -19,7 +19,7 @@ uses
|
|||||||
{$IFDEF MSWINDOWS}WinApi.Windows, {$ENDIF} System.Classes, Vcl.Controls, Vcl.Graphics,
|
{$IFDEF MSWINDOWS}WinApi.Windows, {$ENDIF} System.Classes, Vcl.Controls, Vcl.Graphics,
|
||||||
{$ELSE}
|
{$ELSE}
|
||||||
{$IFDEF MSWINDOWS}Windows,{$ENDIF} Classes, Forms, Controls, Graphics,
|
{$IFDEF MSWINDOWS}Windows,{$ENDIF} Classes, Forms, Controls, Graphics,
|
||||||
{$IFDEF LCLGTK3}ExtCtrls,{$ENDIF}
|
{$IF DEFINED(LCLQT) OR DEFINED(LCLQT5) OR DEFINED(LCLQT6) OR DEFINED(LCLGTK3)}ExtCtrls,{$IFEND}
|
||||||
{$IFDEF FPC}
|
{$IFDEF FPC}
|
||||||
LCLProc, LCLType, LCLIntf, LResources, InterfaceBase,
|
LCLProc, LCLType, LCLIntf, LResources, InterfaceBase,
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
@@ -33,7 +33,7 @@ type
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Custom TWinControl used by CEF browsers.
|
/// Custom TWinControl used by CEF browsers.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
TCEFWinControl = class({$IFDEF LCLGTK3}TCustomPanel{$ELSE}TWinControl{$ENDIF})
|
TCEFWinControl = class({$IF DEFINED(LCLQT) OR DEFINED(LCLQT5) OR DEFINED(LCLQT6) OR DEFINED(LCLGTK3)}TCustomPanel{$ELSE}TWinControl{$IFEND})
|
||||||
protected
|
protected
|
||||||
function GetChildWindowHandle : {$IFNDEF MSWINDOWS}{$IFDEF FPC}LclType.{$ENDIF}{$ENDIF}THandle; virtual;
|
function GetChildWindowHandle : {$IFNDEF MSWINDOWS}{$IFDEF FPC}LclType.{$ENDIF}{$ENDIF}THandle; virtual;
|
||||||
procedure Resize; override;
|
procedure Resize; override;
|
||||||
|
@@ -237,6 +237,9 @@ uses
|
|||||||
ctypes, keysym, xf86keysym, x, xlib,
|
ctypes, keysym, xf86keysym, x, xlib,
|
||||||
{$IFDEF LCLGTK2}gtk2, glib2, gdk2, gtk2proc, gtk2int, Gtk2Def, gdk2x, Gtk2Extra,{$ENDIF}
|
{$IFDEF LCLGTK2}gtk2, glib2, gdk2, gtk2proc, gtk2int, Gtk2Def, gdk2x, Gtk2Extra,{$ENDIF}
|
||||||
{$IFDEF LCLGTK3}LazGdk3, LazGtk3, LazGLib2, Gtk3Widgets, Gtk3Procs, LazGObject2,{$ENDIF}
|
{$IFDEF LCLGTK3}LazGdk3, LazGtk3, LazGLib2, Gtk3Widgets, Gtk3Procs, LazGObject2,{$ENDIF}
|
||||||
|
{$IFDEF LCLQT}qtwidgets, qt4,{$ENDIF}
|
||||||
|
{$IFDEF LCLQT5}qtwidgets, qt5,{$ENDIF}
|
||||||
|
{$IFDEF LCLQT6}qtwidgets, qt6,{$ENDIF}
|
||||||
uCEFLinuxFunctions,
|
uCEFLinuxFunctions,
|
||||||
{$ENDIF}{$ENDIF}
|
{$ENDIF}{$ENDIF}
|
||||||
uCEFMiscFunctions;
|
uCEFMiscFunctions;
|
||||||
@@ -532,6 +535,12 @@ begin
|
|||||||
TempParent := gdk_x11_window_get_xid(gtk_widget_get_window(TempWidget));
|
TempParent := gdk_x11_window_get_xid(gtk_widget_get_window(TempWidget));
|
||||||
end;
|
end;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
|
{$IF DEFINED(LCLQT) OR DEFINED(LCLQT5) OR DEFINED(LCLQT6)}
|
||||||
|
if ValidCefWindowHandle(aParent) then
|
||||||
|
begin
|
||||||
|
TempParent := QWidget_winId(TQtWidget(aParent).Widget);
|
||||||
|
end;
|
||||||
|
{$IFEND}
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
|
|
||||||
aWindowInfo.parent_window := TempParent;
|
aWindowInfo.parent_window := TempParent;
|
||||||
|
Reference in New Issue
Block a user