mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2026-01-16 04:12:07 +01:00
97 lines
4.3 KiB
PHP
97 lines
4.3 KiB
PHP
// included by gtkhtml.pas
|
|
|
|
{$IFDEF read_forward_definitions}
|
|
{$ENDIF read_forward_definitions}
|
|
|
|
//------------------------------------------------------------------------------
|
|
|
|
{$IFDEF read_interface_types}
|
|
|
|
THtmlDocumentState = (HTML_DOCUMENT_STATE_DONE,HTML_DOCUMENT_STATE_PARSING);
|
|
|
|
PHtmlDocument = ^THtmlDocument;
|
|
THtmlDocument = record
|
|
parent_instance : TGObject;
|
|
//dom_document : PDomDocument;
|
|
stylesheets : PGSList;
|
|
//parser : PHtmlParser;
|
|
current_stream : PHtmlStream;
|
|
//image_factory : PHtmlImageFactory;
|
|
state : THtmlDocumentState;
|
|
//hover_node : PDomNode;
|
|
//active_node : PDomNode;
|
|
//focus_element : PDomElement;
|
|
end;//THtmlDocument
|
|
|
|
PHtmlDocumentClass = ^THtmlDocumentClass;
|
|
THtmlDocumentClass = record
|
|
parent_class : TGObjectClass;
|
|
request_url : procedure (document:PHtmlDocument; url:Pgchar; stream:PHtmlStream);cdecl;
|
|
link_clicked : procedure (document:PHtmlDocument; url:Pgchar);cdecl;
|
|
set_base : procedure (document:PHtmlDocument; url:Pgchar);cdecl;
|
|
title_changed : procedure (document:PHtmlDocument; new_title:Pgchar);cdecl;
|
|
submit : procedure (document:PHtmlDocument; method:Pgchar; url:Pgchar; encoding:Pgchar);cdecl;
|
|
//node_inserted : procedure (document:PHtmlDocument; node:PDomNode);cdecl;
|
|
//node_removed : procedure (document:PHtmlDocument; node:PDomNode);cdecl;
|
|
//text_updated : procedure (document:PHtmlDocument; node:PDomNode);cdecl;
|
|
//style_updated : procedure (document:PHtmlDocument; node:PDomNode; style_change:THtmlStyleChange);cdecl;
|
|
//relayout_node : procedure (document:PHtmlDocument; node:PDomNode);cdecl;
|
|
//repaint_node : procedure (document:PHtmlDocument; node:PDomNode);cdecl;
|
|
//dom_mouse_down : function (document:PHtmlDocument; event:PDomEvent):gboolean;cdecl;
|
|
//dom_mouse_up : function (document:PHtmlDocument; event:PDomEvent):gboolean;cdecl;
|
|
//dom_mouse_click : function (document:PHtmlDocument; event:PDomEvent):gboolean;cdecl;
|
|
//dom_mouse_over : function (document:PHtmlDocument; event:PDomEvent):gboolean;cdecl;
|
|
//dom_mouse_out : function (document:PHtmlDocument; event:PDomEvent):gboolean;cdecl;
|
|
end;//THtmlDocumentClass
|
|
|
|
{$ENDIF read_interface_types}
|
|
|
|
//------------------------------------------------------------------------------
|
|
|
|
{$IFDEF read_interface_rest}
|
|
|
|
function HTML_TYPE_DOCUMENT : GType;
|
|
function HTML_DOCUMENT(obj : pointer) : PHtmlDocument;
|
|
function HTML_DOCUMENT_CLASS(klass : pointer) : PHtmlDocumentClass;
|
|
function HTML_IS_DOCUMENT(obj : pointer) : boolean;
|
|
|
|
function html_document_get_type:GType;cdecl; external gtkhtmllib;
|
|
function html_document_new:PHtmlDocument;cdecl; external gtkhtmllib;
|
|
function html_document_open_stream(document:PHtmlDocument; mime_type:Pgchar):gboolean;cdecl; external gtkhtmllib;
|
|
procedure html_document_write_stream(document:PHtmlDocument; buffer:Pgchar; len:gint);cdecl; external gtkhtmllib;
|
|
procedure html_document_close_stream(document:PHtmlDocument);cdecl; external gtkhtmllib;
|
|
procedure html_document_clear(document:PHtmlDocument);cdecl; external gtkhtmllib;
|
|
//procedure html_document_update_hover_node(document:PHtmlDocument; node:PDomNode);cdecl; external gtkhtmllib;
|
|
//procedure html_document_update_active_node(document:PHtmlDocument; node:PDomNode);cdecl; external gtkhtmllib;
|
|
//procedure html_document_update_focus_element(document:PHtmlDocument; element:PDomElement);cdecl; external gtkhtmllib;
|
|
//function html_document_find_anchor(doc:PHtmlDocument; anchor:Pgchar):PDomNode;cdecl; external gtkhtmllib;
|
|
|
|
{$ENDIF read_interface_rest}
|
|
|
|
//------------------------------------------------------------------------------
|
|
|
|
{$IFDEF read_implementation}
|
|
|
|
function HTML_TYPE_DOCUMENT : GType;
|
|
begin
|
|
HTML_TYPE_DOCUMENT:=html_document_get_type;
|
|
end;//HTML_TYPE_DOCUMENT
|
|
|
|
function HTML_DOCUMENT(obj : pointer) : PHtmlDocument;
|
|
begin
|
|
HTML_DOCUMENT:=PHtmlDocument(GTK_CHECK_CAST(obj,HTML_TYPE_DOCUMENT));
|
|
end;//HTML_DOCUMENT
|
|
|
|
function HTML_DOCUMENT_CLASS(klass : pointer) : PHtmlDocumentClass;
|
|
begin
|
|
HTML_DOCUMENT_CLASS:=GTK_CHECK_CLASS_CAST(klass,HTML_TYPE_DOCUMENT);
|
|
end;//HTML_DOCUMENT_CLASS
|
|
|
|
function HTML_IS_DOCUMENT(obj : pointer) : boolean;
|
|
begin
|
|
HTML_IS_DOCUMENT:=GTK_CHECK_TYPE(obj,HTML_TYPE_DOCUMENT);
|
|
end;//HTML_IS_DOCUMENT
|
|
|
|
{$ENDIF read_implementation}
|
|
// included by gtkhtml.pas
|