66
•
supports sections for EIKON and for applications, independently: a section is identified
by application (or EIKON) UID, and a logical colour by an enumerated constant
•
supports mappings for both four-greyscale and sixteen-colour colour schemes: the sixteen-
colour scheme will be used if the screen mode supports 16 or more colours, otherwise the
four-grey scheme will be used
These mappings may be overridden on a per-control basis using functions in
CCoeControl
.
EIKON’s “grey selector”,
CEikGrayPalette
, allows the user to pick colours. It is now
augmented to support colour as well as grey selection — but the name remains unchanged.
A
TEikColorUtils
class provides static functions for colour brightness adjustment.
8.5.3.3.1.4 Tools and utilities
The bitmap converter
bmconv
has been updated to support conversion between Windows
.bmp
s
and EPOC multi-bitmap files (
.mbm
s) in any display mode.
When developing an application intended for use on both a greyscale and colour device, it is very
important that the colour schemes for the application, its icons and other bitmaps be tailored for
the specific device. A bitmap that looks great in 16- or 256-colour mode will be converted to
greys if displayed on a greyscale display, but may be aesthetically quite unusable.
It is therefore recommended that application developers produce application information files and
multi-bitmap files in both colour and greyscale variants and test them both on the emulator. You
are recommended to deliver AIFs as both
.abw
and
.acl
, and MBMs as both
.mbw
and
.mcl
.
Then, use the
instcol
tool to copy the intended variants to
.aif
and
.mbm
respectively.
8.5.3.3.2 Unicode support
CONE supports reading both 8- and 16-bit resources — in narrow as well as wide builds.
CONE supports front-end-processors (FEPs), which may be used transparently with respect to
application programs. The FEP framework is designed to support input of characters from large
Far Eastern character sets by methods which, by now, have been established in the IT industries in
the relevant locales. The FEP framework could also be used for handwriting recognition in
Western alphabets.
Various Unicode fonts have been tested. Unicode was a primary motivator to add vector font
support to EPOC.
FORM has been enhanced to support more general line-wrapping rules, and split into
form.dll
and
wrap.dll
. In non-Western configurations, the
wrap.dll
is replaced by DLLs
implementing the rules for Chinese, Japanese etc.
8.5.3.4 System and shell
8.5.3.4.1 EIKON
Many fixes, usability and API improvements. The major work on EIKON, as described in
§3.3.1.3, is the addition of support for colour.
API improvements:
•
an extra
CColumnListDrawer
function returns the width of items in pixels.
•
a new
CUnifiedFileSelector
class provides support for browsing files across drives,
eg all files in
?:\system\apps\
•
choice lists support font override
•
CEikEdwin
can return average values for lines/edit rectangle, and characters/line, for
better approximate scrollbar sizing
•
in preparation for Unicode,
CEikAppUi::ProcessCommandParametersL()
now takes a (binary)
TDesC8
parameter, rather than a (text)
TDesC
parameter
•
CEikTelephoneNumberEditor
moved from EIKCNPNL into EIKON proper
Internal structure improvements:
•
the EIKON console uses a separate heap, which makes debugging easier since, previously,
any EIKON console program in debug mode would fail on exit with heap imbalance