HTMLayout

HTMLayout

HTMLayout is an ultra-slim embeddable layout engine for simple HTML.

Produced by Terra Informatica, it is given away free of charge (for both non-commercial and commercial use) but it is not free software and has some licence requirements (not at all onerous).

Main purpose of HTMLayout is to support so called Web UI in desktop applications and yet to be embeddable.

History

HTMLayout is actually as plain C wrapper for h-smile layout engine used in other Terra Informatica projects, like Sciter and moSciter. [http://www.terrainformatica.com/htmlayout/logfile.whtm Log with version history] can be fount on Terra Informatica site.

Standards compliance

HTMLayout supports a dialect of HTML. It has some problems with rendering certain non-compliant HTML markup (such as LI tags outside of lists), which could be seen as a negative, albeit minor. Its' purpose is not to be a full-featured web browser, but to be a small embeddable engine, which it does adequately, this means:

* Set of standard input elements in HTMLayout is significantly extended by specialized versions for
** Integers;
** Floating numbers with spin buttons;
** Currencies with special formatting like number group separators;
** Dates. See [http://www.terrainformatica.com/htmlayout/images/datetime.jpgdate and calendar screenshot] ;
** Hierarchical lists. See [http://www.terrainformatica.com/htmlayout/images/selects2.jpgscreenshot of various selects] ;
** Horizontal and vertical sliders
* Each DOM element can be extended by the host application by supplying so called "behavior" - set of event handlers implemented in code of the application. The behavior may define how DOM element is reacting on mouse, keyboard, focus, paint events or even custom events raised by other behaviors. See [http://www.terrainformatica.com/htmlayout/behaviors.whtm Behaviors in HTMLayout] . Behaviors are assigned to DOM elements declaratively - by using the "behavior" CSS attribute.
* CSS in HTMLayout is extended to support such features of modern UI as:
** Animation, e.g. some element may have "transition:blend" defined in CSS to present blend animation between two states;
** Drag-n-drop, e.g. CSS definition "div {accept-drop: selector(ul.cart>li);}" declares that the DIV element accepts drops of LI elements residing in ul.cart containers only.
** Implementation of CSS selectors is much more complete, than in usual web browsers.

Platforms

* Windows NT/Intel x86
* Windows NT/Intel x64
* Windows CE/ARM v4
* Windows Mobile/ARM v4i

SDKs, Bindings

Terra Informatica officially supports C SDK with reference C++ wrapper implementation. SDK contains examples of MFC and WTL host applications, examples of HTML markups, brief documentation.

Third party bindings include
* Ruby binding HTMR by Victor Shepelev (no new web-site found, http://rubyforge.org/projects/htmr/ is closed)
* .Net 1.1/Managed C++ binding [http://earthsideterminal.com/ HTMLayout.Net]
* .Net 2.0-3.5/C# binding by Roman Akopov as a part of general purpose [http://code.google.com/p/nabu-library/ Nabu Library] , Nabu.Forms.Html project. Supports all platforms, however mobile is known to be beta.
* No Java binding known to be available.

Also, there is third party [http://htmlayoutlab.com/htmlayout-spy/ HTMLayoutSpy] tool available for Windows x86 platform. This tool does the same job as well known Microsoft Spy++, but for HTMLayout windows.

Support

Free support includes:
* English forum http://terrainformatica.com/forums/forum.php?id=2
* Russian forum http://www.rsdn.ru/forum/group/htmlayout.aspx

For large-scale development, the company offers support contracts for a fee (per developer).

Usage

Applications that are known to use HTMLayout:
* Norton Internet Security
* Norton AntiVirus

Companies that are known to use HTMLayout as [http://www.terrainformatica.com/customers.whtm reported] by Terra Informatica:
* [http://symantec.com/ Symantec Corporation]
* [http://www.hp.com/ Hewlett-Packard Corporation]
* [http://www.symbol.com/ Symbol Technologies, Inc.] (is a part of Motorola company now)
* [http://www.realnetworks.com/ Real Networks, Inc.]
* [http://www.alawargroup.com/ Alawar Entertainment, Inc.]
* [http://www.evernote.com/ EverNote Corporation]
* [http://www.munnin.com/ Munnin]

External links

* Terra Informatica, HTMLayout [http://www.terrainformatica.com/htmlayout/]
* HTMLayoutLab, HTMLayoutSpy [http://htmlayoutlab.com/htmlayout-spy]
* Nabu Library [http://code.google.com/p/nabu-library/]


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • Gecko (layout engine) — Gecko Developer(s) Mozilla Foundation / Mozilla Corporation Stable release 8.0 / November 8, 2011; 6 days ago (2011 11 08) [1] …   Wikipedia

  • Presto (layout engine) — Presto Developer(s) Opera Software ASA Stable release 2.9.168 / 28 June 2011; 4 months ago ( …   Wikipedia

  • WebKit — Developer(s) Apple, KDE, Nokia, Google, RIM, Palm, Samsung, others. Initial release November 4, 1998; 13 years ago …   Wikipedia

  • Trident (layout engine) — Trident Developer(s) Microsoft Written in C++[1] Operating system Microsoft Windows: Windows XP to 7 (supported …   Wikipedia

  • Mariner (layout engine) — Mariner was a canceled project to add performance and stability enhancements to the layout engine used in the Netscape Communicator web browser. Mariner became open source in March 1998 when Netscape released its client code and started the… …   Wikipedia

  • Comparison of layout engines (Cascading Style Sheets) — Cascading Style Sheets CSS Animations Dynamic CSS Comparison of layout engines Comparison of stylesheet languages Internet Explorer box model bug CSS Zen Garden The Zen of CSS Design CSSTidy Style sheet Tableless web design Holy Grail (web… …   Wikipedia

  • List of layout engines — The following is a list of layout engines.Many applications are expandable with plugins. These are listed on a separate page. Graphical *Boxely for AOL applications *Cobra Java based, for Lobo. *Gecko for Firefox, Camino, Mozilla Application… …   Wikipedia

  • NetSurf — running on RISC OS Developer(s) The NetSurf Developers …   Wikipedia

  • Comparison of layout engines (HTML) — HTML HTML and HTML5 Dynamic HTML XHTML XHTML Mobile Profile and C HTML Canvas element Character encodings Document Object Model Font family HTML editor HTML element HTML Frames HTML5 video HTML scrip …   Wikipedia

  • Comparison of layout engines (XHTML) — HTML HTML and HTML5 Dynamic HTML XHTML XHTML Mobile Profile and C HTML Canvas element Character encodings Document Object Model Font family HTML editor HTML element HTML Frames HTML5 video HTML scrip …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”