Hitchcock User Interface Toolkit


The Hitchcock User Interface Toolkit (HUITK) is a library of classes that can be used for creating graphical user interfaces that are primarily two-dimensional, but can utilize three-dimensional objects and effects, for instance rotations. HUITK has been designed to be used with hardware-accelerated graphics, but limited functionality software-only rendering is also supported. HUITK has been developed on Symbian OS 9.1.

You are reading the HUITK API documentation. This is a reference manual of the HUITK API classes. For higher-level developer documentation, see More Information .

Typical Usage

  • Create environment. Specify the renderer to use, e.g., EHuiRendererGles11.

  • Create a display. The most convenient way is to use CHuiDisplayCoeControl.

  • Create one or more control groups.

  • Create controls and append them to the groups.

  • Display one (or more) of the groups.

Normal runtime behaviour:
  • Action and animation commands can be posted using the environment.

  • Controls handle input events in CHuiControl::OfferEventL().

  • Controls can manipulate visuals.

  • Groups can be shown, hidden, and transformed.

  • Display refresh is paused while nothing is happening. See CHuiEnv::ContinueRefresh().

  • Delete CoeControls owned by the application (including CHuiDisplayCoeControl instances).

  • Shut down by deleting the environment.


The following classes form the public API of the toolkit. The API documentation also includes information about internal classes. Note that exported methods are listed under an "Exported API" subsection in each class's description.

Core Functionality:
  • CHuiEnv

  • CHuiDisplay

  • CHuiDisplayCoeControl

  • CHuiControl

  • CHuiControlGroup

  • CHuiRoster

  • CHuiStatic

  • THuiTimedValue

  • THuiTimedPoint

  • THuiCommand (and derived classes such as THuiValueCommand)

  • THuiEvent

  • HuiUtil (only static methods)

  • MHuiMappingFunction implementations such as THuiLinearMappingFunction

  • THuiRealPoint

  • THuiRealRect

  • THuiRealSize

Graphics (note HuiDrawing.h):
  • CHuiGc (available in CHuiVisual::Draw() methods)

  • CHuiTransformation

  • CHuiCurvePath

  • CHuiMesh

  • THuiMaterial

  • CHuiS60Skin

  • CHuiTextureManager

  • CHuiTextureProcessor

  • CHuiTexture

  • CHuiAnimatedTexture

  • THuiTextureHandle

  • THuiImage (reference to a region of a texture)

Visuals and Layouts (note HuiVisuals.h and HuiLayouts.h):
  • CHuiVisual
    • CHuiImageVisual

    • CHuiLineVisual

    • CHuiMeshVisual

    • CHuiTextVisual

  • CHuiLayout
    • CHuiAnchorLayout

    • CHuiFlowLayout

    • CHuiGridLayout

Brushes (note HuiBrushes.h):
  • CHuiBrushArray (see CHuiVisual::EnableBrushesL())

  • CHuiBrush
    • CHuiBorderBrush

    • CHuiDropShadowBrush

    • CHuiGradientBrush

    • CHuiShadowBorderBrush

Common controls:
  • CHuiSoftKeyControl

More Information

More information is available in the Nokia internal Wiki pages: http://nwiki.nokia.com/NSSProjects/HUIToolkit

Copyright © 2006 Nokia. All rights reserved.

This material, including documentation and any related computer programs, is protected by copyright controlled by Nokia. All rights are reserved. Copying, including reproducing, storing, adapting or translating, any or all of this material requires the prior written consent of Nokia. This material also contains confidential information which may not be disclosed to others without the prior written consent of Nokia.