1
0
mirror of https://github.com/salvadordf/CEF4Delphi.git synced 2025-11-23 21:34:53 +02:00

Added overloaded TChromium.CreateBrowser function

This commit is contained in:
Salvador Diaz Fau
2017-06-01 10:33:30 +02:00
parent 688ab57bcc
commit 006d33da3a
29 changed files with 660 additions and 583 deletions

View File

@@ -256,7 +256,16 @@
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployClass Name="ProjectiOSDeviceResourceRules"/>
<DeployClass Name="DependencyModule">
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.dll;.bpl</Extensions>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXResource">
<Platform Name="OSX32">
<RemoteDir>Contents\Resources</RemoteDir>
@@ -570,16 +579,7 @@
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DependencyModule">
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.dll;.bpl</Extensions>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSDeviceResourceRules"/>
<ProjectRoot Platform="iOSDevice64" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Win64" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="iOSDevice32" Name="$(PROJECTNAME).app"/>

View File

@@ -279,5 +279,9 @@
<Transaction>2017/03/26 17:18:35.000.135,=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\Unit1.pas</Transaction>
<Transaction>2017/03/26 17:19:20.000.644,C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFDLLFunctions.pas=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\Unit1.pas</Transaction>
<Transaction>2017/03/26 17:28:33.000.757,C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFDLLFunctions.pas=</Transaction>
<Transaction>2017/05/21 15:27:39.000.810,=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\Unit1.pas</Transaction>
<Transaction>2017/05/21 15:34:16.000.487,C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\Unit1.dfm=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromiumTool.dfm</Transaction>
<Transaction>2017/05/21 15:34:16.000.487,C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\Unit1.pas=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromiumTool.pas</Transaction>
<Transaction>2017/05/21 15:36:08.000.019,C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromiumTool.pas=</Transaction>
</Transactions>
</BorlandProject>

View File

@@ -1,27 +1,34 @@
[Closed Files]
File_0=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFMiscFunctions.pas',0,1,860,1,1,0,0,,
File_1=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFWindowParent.pas',0,1,95,1,115,0,0,,
File_2=TSourceModule,'c:\program files\embarcadero\studio\17.0\SOURCE\VCL\Vcl.Controls.pas',0,1,2512,24,2540,0,0,,
File_3=TSourceModule,'c:\program files\embarcadero\studio\17.0\source\rtl\common\System.Classes.pas',0,1,126,3,155,0,0,,
File_4=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFApplication.pas',0,1,42,71,74,0,0,,
File_5=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFInterfaces.pas',0,1,1206,66,1229,0,0,,
File_6=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFTypes.pas',0,1,1133,30,1156,0,0,,
File_7=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromium.pas',0,1,404,66,423,0,0,,
File_8=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromiumWindow.pas',0,1,1,1,1,0,0,,
File_9=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFFrame.pas',0,1,37,29,68,0,0,,
File_0=TSourceModule,'c:\program files\embarcadero\studio\17.0\source\rtl\win\Winapi.Windows.pas',0,1,3975,26,4004,0,0,,
File_1=TSourceModule,'c:\program files\embarcadero\studio\17.0\SOURCE\RTL\SYS\System.Types.pas',0,1,219,1,179,0,0,,
File_2=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromiumTool.pas',0,1,1,1,1,0,0,,
File_3=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFDisplayHandler.pas',0,1,85,35,133,0,0,,
File_4=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFBrowser.pas',0,1,1,1,1,0,0,,
File_5=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFMiscFunctions.pas',0,1,860,1,1,0,0,,
File_6=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFWindowParent.pas',0,1,95,1,115,0,0,,
File_7=TSourceModule,'c:\program files\embarcadero\studio\17.0\SOURCE\VCL\Vcl.Controls.pas',0,1,2512,24,2540,0,0,,
File_8=TSourceModule,'c:\program files\embarcadero\studio\17.0\source\rtl\common\System.Classes.pas',0,1,126,3,155,0,0,,
File_9=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFApplication.pas',0,1,42,71,74,0,0,,
[Modules]
Module0=default.htm
Count=1
Module0=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromium.pas
Module1=default.htm
Count=2
EditWindowCount=1
[C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromium.pas]
ModuleType=TSourceModule
FormState=0
FormOnTop=0
[default.htm]
ModuleType=TURLModule
[EditWindow0]
ViewCount=1
CurrentView=0
ViewCount=2
CurrentEditView=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromium.pas
View0=0
View1=1
PercentageSizes=1
Create=1
Visible=1
@@ -38,23 +45,32 @@ ClientHeight=9428
DockedToMainForm=1
BorlandEditorCodeExplorer=BorlandEditorCodeExplorer@EditWindow0
TopPanelSize=0
LeftPanelSize=1898
LeftPanelClients=PropertyInspector,DockSite3
LeftPanelData=00000800010100000000AA19000000000000016A0700000000000001000000005D0E000009000000446F636B53697465330100000000A12300001100000050726F7065727479496E73706563746F72FFFFFFFF
RightPanelSize=2000
RightPanelClients=DockSite2,DockSite4
RightPanelData=00000800010100000000AA1900000000000001D00700000000000001000000004312000009000000446F636B53697465320100000000A123000009000000446F636B5369746534FFFFFFFF
LeftPanelSize=0
RightPanelSize=0
BottomPanelSize=0
BottomPanelClients=DockSite1,MessageView
BottomPanelData=0000080001020200000009000000446F636B53697465310F0000004D65737361676556696577466F726D1234000000000000022506000000000000FFFFFFFF
BottomMiddlePanelSize=0
BottomMiddlePanelClients=DockSite0,GraphDrawingModel
BottomMiddelPanelData=0000080001020200000009000000446F636B536974653010000000477261706844726177696E67566965779D1D00000000000002F306000000000000FFFFFFFF
TabDockLeftClients=PropertyInspector=0,DockSite3=1
TabDockRightClients=DockSite4=0,DockSite2=1
[View0]
CustomEditViewType=TWelcomePageView
WelcomePageURL=bds:/default.htm
[View1]
CustomEditViewType=TEditView
Module=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromium.pas
CursorX=101
CursorY=861
TopLine=834
LeftCol=1
Elisions=
Bookmarks={1,866,39}
EditViewName=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromium.pas
[Watches]
Count=0
@@ -117,11 +133,11 @@ State=0
Left=0
Top=0
Width=2000
Height=4226
Height=8845
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=4226
ClientHeight=8845
TBDockHeight=5897
LRDockWidth=2352
Dockable=1
@@ -263,7 +279,7 @@ StayOnTop=0
[PropertyInspector]
PercentageSizes=1
Create=1
Visible=1
Visible=0
Docked=1
State=0
Left=0
@@ -558,11 +574,11 @@ State=0
Left=0
Top=0
Width=1898
Height=3498
Height=9170
MaxLeft=-1
MaxTop=-1
ClientWidth=1898
ClientHeight=3498
ClientHeight=9170
TBDockHeight=3677
LRDockWidth=1898
Dockable=1
@@ -658,21 +674,21 @@ ActiveTabID=DebugLogView
TabDockClients=DebugLogView,BreakpointWindow,ThreadStatusWindow,CallStackWindow,WatchWindow,LocalVarsWindow
[DockSite2]
HostDockSite=DockRightPanel
HostDockSite=RightTabDock
DockSiteType=1
PercentageSizes=1
Create=1
Visible=1
Visible=0
Docked=1
State=0
Left=0
Top=23
Left=4
Top=24
Width=2000
Height=4529
Height=9148
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=4529
ClientHeight=9148
TBDockHeight=7164
LRDockWidth=2000
Dockable=1
@@ -682,21 +698,21 @@ ActiveTabID=ProjectManager
TabDockClients=ProjectManager,ModelViewTool,DataExplorerContainer,frmDesignPreview,TFileExplorerForm
[DockSite3]
HostDockSite=DockLeftPanel
HostDockSite=LeftDockTabSet
DockSiteType=1
PercentageSizes=1
Create=1
Visible=1
Visible=0
Docked=1
State=0
Left=0
Top=23
Width=1898
Height=3498
Height=9170
MaxLeft=-1
MaxTop=-1
ClientWidth=1898
ClientHeight=3498
ClientHeight=9170
TBDockHeight=7164
LRDockWidth=1898
Dockable=1
@@ -706,11 +722,11 @@ ActiveTabID=StructureView
TabDockClients=StructureView,ClassBrowserTool
[DockSite4]
HostDockSite=DockRightPanel
HostDockSite=RightTabDock
DockSiteType=1
PercentageSizes=1
Create=1
Visible=1
Visible=0
Docked=1
State=0
Left=0

Binary file not shown.

View File

@@ -1,9 +1,9 @@
[Stats]
EditorSecs=79682
DesignerSecs=14
InspectorSecs=13
CompileSecs=2168294
OtherSecs=8322
EditorSecs=80382
DesignerSecs=97
InspectorSecs=323
CompileSecs=2247677
OtherSecs=8513
StartTime=22/01/2017 10:49:52
RealKeys=0
EffectiveKeys=0

View File

@@ -371,8 +371,9 @@ type
destructor Destroy; override;
procedure AfterConstruction; override;
function CreateClientHandler(aIsOSR : boolean) : boolean;
function CreateBrowser(const aBrowserParent : TWinControl = nil; const aWindowName : string = '') : boolean;
procedure CloseBrowser(aForceClose : boolean);
function CreateBrowser(const aBrowserParent : TWinControl = nil; const aWindowName : string = '') : boolean; overload;
function CreateBrowser(aParentHandle : HWND; aParentRect : TRect; const aWindowName : string = '') : boolean; overload;
// Internal procedures.
// Only tasks, visitors or callbacks should use them in the right thread/process.
@@ -833,6 +834,25 @@ begin
end;
function TChromium.CreateBrowser(const aBrowserParent : TWinControl; const aWindowName : string) : boolean;
var
TempHandle : HWND;
TempRect : TRect;
begin
if (aBrowserParent <> nil) then
begin
TempHandle := aBrowserParent.Handle;
TempRect := aBrowserParent.ClientRect;
end
else
begin
TempHandle := 0;
TempRect := rect(0, 0, 0, 0);
end;
Result := CreateBrowser(TempHandle, TempRect, aWindowName);
end;
function TChromium.CreateBrowser(aParentHandle : HWND; aParentRect : TRect; const aWindowName : string = '') : boolean;
begin
Result := False;
@@ -841,14 +861,14 @@ begin
(FBrowser = nil) and
(FBrowserId = 0) and
(GlobalCEFApp <> nil) and
CreateClientHandler(aBrowserParent = nil) then
CreateClientHandler(aParentHandle = 0) then
begin
GetSettings(FBrowserSettings);
if FIsOSR then
WindowInfoAsWindowless(FWindowInfo, FCompHandle, False, aWindowName)
else
WindowInfoAsChild(FWindowInfo, aBrowserParent.Handle, aBrowserParent.ClientRect, aWindowName);
WindowInfoAsChild(FWindowInfo, aParentHandle, aParentRect, aWindowName);
if MultithreadApp then