NG Controls - HTMLPack
(© by LMD Innovative, (http://www.lmd.de
or http://www.lmdtools.com)
Contents
Introduction
Documentation
Mini-HTML Reference
Properties
Events
Methods
Demos
Introduction
NG MiniHTML engine is an enhanced version of the MiniHTML engine
included in the LMD VCL series.
Included
controls in the first release of HTMLPack are:
Other controls will follow in future releases.
By focusing on features of recent Delphi/C++Builder several notable additions were integrated. Among others those are:
Textfield1: <~~textfield1> Textfield2:<~~textfield2>
The following section provides overview about common NG HTMLPack properties, events and methods.
Property |
Type |
Description |
Options |
TNGHTMLOptions |
|
Options.LineGap |
integer |
Height of the interval between two lines of text |
Options.LinkColor |
TColor |
color of the text in <a></a> tag |
Options.LinkStyle |
TFontStyles |
font style of the text in <a></a> tag |
LinkPopupMenu |
TPopupMenu |
Menu that is invoked by right clicking the link |
Storage |
TNGHTMLStorage |
A storage of HTML snippets with support of automatic jumps from one to another by link clicking. Each snippet has Name property that can be used as href in <a> tag. For example, clicking on a link <a href=”News”>News</a> will cause html control to display snippet with name = ‘News’. |
StorageItemIndex |
integer |
An index of the Storage’s snippet to be shown. |
StorageItemNotFoundIndex |
integer |
An index of the snippet to be shown when referred snippet is not found. |
CheckStorageLinks |
boolean |
This flag allows to turn off automatic jumps between storage’s items. |
IsHTML |
boolean |
Setting this property to true makes control to display html code instead of rendered html. |
Offset |
TPoint |
Specifies left-top corner of the rectangle area being rendered. (0,0) by default. |
PlainText |
string |
Use this property to get text without html tags. |
Render |
TNGHTMLRender |
Allows to get direct access to render engine instance. |
Event |
Event type name |
Description |
OnGetImage |
TNGHTMLImageNeededEvent |
This event is used to retrieve image, when img tag has no source specifier (file:, res: or imagelist:). |
OnGetVariable
|
TNGHTMLVariableNeededEvent |
This event is triggered when html engine renders <~~varname> tag. Used for providing variable value. |
OnLinkClick |
TNGHTMLLinkClickEvent |
Triggered when user click a link. |
OnControlCreated
|
TNGHTMLControlCreatedEvent |
Triggered right after an embedded control is created. Use this event to initialize control, e.g. name it, populate with data etc. |
OnAdjustControlPosition |
TNGHTMLControlPositionNeededEvent |
This event is triggered before embedded control is displayed. You can adjust control position at this moment. |
OnControlVisibilityNeeded |
TNGHTMLControlVisibilityNeededEvent |
Triggered before embedded control’s Visible property is set. You can add custom filters here to suppress showing of the embedded control. |
OnStorageItemChanged |
TNGHTMLStorageItemChangedEvent |
This event is triggered when html control’s StorageItemIndex property is changed. In Features demo, this event is used to implement traverse through history. |
OnTagFound
|
TNGHTMLTagFoundEvent |
This event gives you total control on html engine. You can implement new tags, handle unknown tags (see Controls demo for example where unsupported <x> tag is substituted by <b> tag). |
INGHTMLControl interface
Most of INGHTMLControl’s methods are for internal use. However, you can use two of them to unify work with NG HTML controls. These are SetHTML and GetHTML.
Direct access to an engine singleton
function HTMLRender:TNGHTMLRender;
Direct access to a global rendering engine instance.
Direct rendering of HTML to a canvas
You can use following methods to draw HTML text to a canvas:
Both methods return height of rendered HTML texts. If bCalcOnly property is set ti true, then no final rendering is made.
[Top]
To get a quick start we suggest that you check the demo projects which are shipped with any version of NG HTMLPack :
Folder |
Description |
---|---|
\features | This project demonstrates all supported tags of MiniHTML engine. |
\controls | This demo presents all controls included in NG HTMLPack. |
© by LMD Innovative Germany
All other trademarks are
acknowledged.