mirror of
https://github.com/salvadordf/CEF4Delphi.git
synced 2024-11-24 08:02:15 +02:00
ca8bc9dff4
Added the PDS file to extract the HTML Help files using PasDoc Added more XML documentation Fixed some XML errors. Removed the license copy from the pas units. Updated the LICENSE.md file
99 lines
2.5 KiB
ObjectPascal
99 lines
2.5 KiB
ObjectPascal
unit uCEFNavigationEntry;
|
|
|
|
{$IFDEF FPC}
|
|
{$MODE OBJFPC}{$H+}
|
|
{$ENDIF}
|
|
|
|
{$I cef.inc}
|
|
|
|
{$IFNDEF TARGET_64BITS}{$ALIGN ON}{$ENDIF}
|
|
{$MINENUMSIZE 4}
|
|
|
|
interface
|
|
|
|
uses
|
|
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
|
|
|
|
type
|
|
TCefNavigationEntryRef = class(TCefBaseRefCountedRef, ICefNavigationEntry)
|
|
protected
|
|
function IsValid: Boolean;
|
|
function GetUrl: ustring;
|
|
function GetDisplayUrl: ustring;
|
|
function GetOriginalUrl: ustring;
|
|
function GetTitle: ustring;
|
|
function GetTransitionType: TCefTransitionType;
|
|
function HasPostData: Boolean;
|
|
function GetCompletionTime: TDateTime;
|
|
function GetHttpStatusCode: Integer;
|
|
function GetSSLStatus: ICefSSLStatus;
|
|
|
|
public
|
|
class function UnWrap(data: Pointer): ICefNavigationEntry;
|
|
end;
|
|
|
|
implementation
|
|
|
|
uses
|
|
uCEFMiscFunctions, uCEFSSLStatus;
|
|
|
|
function TCefNavigationEntryRef.IsValid: Boolean;
|
|
begin
|
|
Result := PCefNavigationEntry(FData)^.is_valid(FData) <> 0;
|
|
end;
|
|
|
|
function TCefNavigationEntryRef.GetUrl: ustring;
|
|
begin
|
|
Result := CefStringFreeAndGet(PCefNavigationEntry(FData)^.get_url(FData));
|
|
end;
|
|
|
|
function TCefNavigationEntryRef.GetDisplayUrl: ustring;
|
|
begin
|
|
Result := CefStringFreeAndGet(PCefNavigationEntry(FData)^.get_display_url(FData));
|
|
end;
|
|
|
|
function TCefNavigationEntryRef.GetOriginalUrl: ustring;
|
|
begin
|
|
Result := CefStringFreeAndGet(PCefNavigationEntry(FData)^.get_original_url(FData));
|
|
end;
|
|
|
|
function TCefNavigationEntryRef.GetTitle: ustring;
|
|
begin
|
|
Result := CefStringFreeAndGet(PCefNavigationEntry(FData)^.get_title(FData));
|
|
end;
|
|
|
|
function TCefNavigationEntryRef.GetTransitionType: TCefTransitionType;
|
|
begin
|
|
Result := PCefNavigationEntry(FData)^.get_transition_type(FData);
|
|
end;
|
|
|
|
function TCefNavigationEntryRef.HasPostData: Boolean;
|
|
begin
|
|
Result := PCefNavigationEntry(FData)^.has_post_data(FData) <> 0;
|
|
end;
|
|
|
|
function TCefNavigationEntryRef.GetCompletionTime: TDateTime;
|
|
begin
|
|
Result := CefBaseTimeToDateTime(PCefNavigationEntry(FData)^.get_completion_time(FData));
|
|
end;
|
|
|
|
function TCefNavigationEntryRef.GetHttpStatusCode: Integer;
|
|
begin
|
|
Result := PCefNavigationEntry(FData)^.get_http_status_code(FData);
|
|
end;
|
|
|
|
function TCefNavigationEntryRef.GetSSLStatus: ICefSSLStatus;
|
|
begin
|
|
Result := TCefSSLStatusRef.UnWrap(PCefNavigationEntry(FData)^.get_sslstatus(FData));
|
|
end;
|
|
|
|
class function TCefNavigationEntryRef.UnWrap(data: Pointer): ICefNavigationEntry;
|
|
begin
|
|
if (data <> nil) then
|
|
Result := Create(data) as ICefNavigationEntry
|
|
else
|
|
Result := nil;
|
|
end;
|
|
|
|
end.
|