/*
* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description: Constants for AVKON to be used in resource files.
*
*/
#ifndef __AVKON_HRH__
#define __AVKON_HRH__
#if !defined(__UIKON_HRH__)
#include <uikon.hrh>
#endif
#if !defined(__EIKON_HRH__)
#include <eikon.hrh>
#endif
#include <AknFontCategory.hrh>
#include <AknFontIdOffsets.hrh>
// This file is very important for applications!
//
// Here we have many names you can find from Series 60 specifications
// This file provides access for applications to the following services:
// * Selection Service
// * Find
//
// moved from uikon.hrh
#define EEikStatusPaneLayoutAknLafDefined 0x10
// internal, do not use (maybe you might need to use LoopScrolling though, but use it with some other flags...)
#define EAknListBoxMultipleSelection EEikListBoxMultipleSelection
#define EAknListBoxIncrementalMatching EEikListBoxIncrementalMatching
#define EAknListBoxScrollBarSizeExcluded 0x0080
#define EAknListBoxLoopScrolling 0x1000
#define EAknListBoxEnterMarks 0x2000
#define EAknListBoxShiftEnterMarks 0x4000
// Note there's also EAknListBoxViewerFlags, which is better for apps.
#define EAknListBoxViewerFlag 0x8000
#define EAknListBoxPointerMultiselectionList 0x10000
#define EAknListBoxPointerMarkableList 0x20000
#define EAknListBoxDisableItemSpecificMenu 0x40000
#define EAknListBoxAlwaysShowItemSpecificMenu 0x80000
// These are combined to the viewerflag to make it fit to WORD in resources.
#define EAknListBoxPageAtOnceScrolling EAknListBoxViewerFlag
#define EAknListBoxDisableHighlight EAknListBoxViewerFlag
// The next ones are used internally by SingleGraphicStyle and DoubleGraphicStyle
#define EAknListBoxFlagsMarkableCheck (EAknListBoxShiftEnterMarks)
#define EAknListBoxFlagsMultiselectionCheck (EAknListBoxEnterMarks)
#define EAknGenericListBoxFlags (EAknListBoxScrollBarSizeExcluded)
// Implementation detail, do not use - for dialog flags
#define EAknDialogGenericFullScreen (EEikDialogFlagNoDrag | EEikDialogFlagNoTitleBar | EEikDialogFlagFillAppClientRect | EEikDialogFlagCbaButtons | EEikDialogFlagWait)
//
//
// SELECTION SERVICE IMPLEMENTATION STARTS HERE (Use these in applications!)
//
// LISTBOX FLAGS (use these in applications)
//
#define EAknListBoxSelectionList (EAknGenericListBoxFlags)
#define EAknListBoxSelectionListWithShortcuts (EAknListBoxSelectionList | EAknListBoxIncrementalMatching)
#define EAknListBoxMenuList (EAknGenericListBoxFlags)
#define EAknListBoxMarkableList (EAknGenericListBoxFlags | EAknListBoxMultipleSelection | EAknListBoxShiftEnterMarks)
#define EAknListBoxMarkableListWithShortcuts (EAknListBoxMarkableList | EAknListBoxIncrementalMatching)
#define EAknListBoxMultiselectionList (EAknGenericListBoxFlags | EAknListBoxMultipleSelection | EAknListBoxEnterMarks)
#define EAknListBoxMultiselectionListWithShortcuts (EAknListBoxMultiselectionList | EAknListBoxIncrementalMatching)
// if pen input is supported, then these two flags can be used
// to get Multiselection and Markable lists to work as s60 style by using stylus
#define EAknListBoxStylusMultiselectionList (EAknListBoxPointerMultiselectionList | EAknGenericListBoxFlags | EAknListBoxMultipleSelection | EAknListBoxEnterMarks)
#define EAknListBoxStylusMarkableList (EAknListBoxPointerMarkableList | EAknGenericListBoxFlags | EAknListBoxMultipleSelection | EAknListBoxShiftEnterMarks)
#define EAknListBoxSelectionGrid (EAknListBoxSelectionList)
#define EAknListBoxSelectionGridWithShortcuts (EAknListBoxSelectionList | EAknListBoxIncrementalMatching)
#define EAknListBoxMarkableGrid (EAknListBoxMarkableList)
#define EAknListBoxMarkableGridWithShortcuts (EAknListBoxMarkableList | EAknListBoxIncrementalMatching)
#define EAknListBoxMenuGrid (EAknListBoxMenuList)
#define EAknListBoxItemSpecificMenuDisabled ( EAknListBoxDisableItemSpecificMenu )
#define EAknListBoxItemSpecificMenuAlwaysShown ( EAknListBoxAlwaysShowItemSpecificMenu )
//
// Viewers (see Selection service)
//
#define EAknListBoxViewerFlags (EAknListBoxPageAtOnceScrolling | EAknListBoxDisableHighlight)
//
// DIALOG FLAGS (applications should use these!)
//
#define EAknDialogSelectionList (EAknDialogGenericFullScreen)
#define EAknDialogMenuList (EAknDialogGenericFullScreen)
#define EAknDialogMarkableList (EAknDialogGenericFullScreen | EEikDialogFlagDontEatUpDownEvents)
#define EAknDialogMultiselectionList (EAknDialogGenericFullScreen)
#define EAknDialogGenericNoteFlags (EEikDialogFlagNoDrag |EEikDialogFlagNoTitleBar | EEikDialogFlagCbaButtons )
#define EAknDialogGenericQueryFlags (EEikDialogFlagWait|EEikDialogFlagNoDrag | EEikDialogFlagNoTitleBar | EEikDialogFlagCbaButtons)
// Flags for note dialogs:
#define EAknErrorNoteFlags (EAknDialogGenericNoteFlags | EEikDialogFlagCloseDialogWhenTapped)
#define EAknWarningNoteFlags (EAknDialogGenericNoteFlags | EEikDialogFlagCloseDialogWhenTapped)
#define EAknInformationNoteFlags (EAknDialogGenericNoteFlags | EEikDialogFlagCloseDialogWhenTapped)
#define EAknConfirmationNoteFlags (EAknDialogGenericNoteFlags | EEikDialogFlagCloseDialogWhenTapped)
#define EAknProgressNoteFlags (EAknDialogGenericNoteFlags | EEikDialogFlagNotifyEsc)
#define EAknWaitNoteFlags (EAknProgressNoteFlags)
#define EAknPermanentNoteFlags (EAknDialogGenericNoteFlags | EEikDialogFlagModeless)
#define EAknSoftNotificationNoteFlags (EAknDialogGenericNoteFlags)
// Flags for query dialogs:
#define EGeneralQueryFlags (EAknDialogGenericQueryFlags)
#define EAknGeneralQueryFlags (EAknDialogGenericQueryFlags)
//
// CBA LABELS (applications should use these)
//
#define R_AVKON_SOFTKEYS_SELECTION_LIST R_AVKON_SOFTKEYS_OPTIONS_BACK
#define R_AVKON_SOFTKEYS_MENU_LIST R_AVKON_SOFTKEYS_OK_CANCEL
#define R_AVKON_SOFTKEYS_SETTING_LIST R_AVKON_SOFTKEYS_OPTIONS_CANCEL
#define R_AVKON_SOFTKEYS_TEXT_SETTING_ITEM R_AVKON_SOFTKEYS_OK_BACK
#define R_AVKON_SOFTKEYS_POPUP_SETTING_ITEM R_AVKON_SOFTKEYS_MENU_LIST
#define R_AVKON_SOFTKEYS_SLIDER_SETTING_ITEM R_AVKON_SOFTKEYS_OPTIONS_BACK
#define R_AVKON_SOFTKEYS_MULTISELECTION_LIST R_AVKON_SOFTKEYS_OK_CANCEL
#define R_AVKON_SOFTKEYS_MARKABLE_LIST R_AVKON_SOFTKEYS_SELECTION_LIST
//
// Menu panes (context specific menu panes)
//
#define R_AVKON_MENUPANE_SELECTION_LIST R_AVKON_MENUPANE_EMPTY
#define R_AVKON_MENUPANE_SETTING_LIST R_AVKON_MENUPANE_EMPTY
#define R_AVKON_MENUPANE_MARKABLE_LIST R_AVKON_MENUPANE_MARKABLE_LIST_EDIT_LIST_IMPLEMENTATION
#define R_AVKON_MENUPANE_MULTISELECTION_LIST R_AVKON_MENUPANE_EMPTY
//
// There are also ready-made HandleCommandL() implementations for selection service in aknutils.h
//
// AknSelectionService::HandleSelectionListProcessCommandL(aCommand, iListBox);
// AknSelectionService::HandleMultiSelectionListProcessCommandL(aCommand, iListBox);
// AknSelectionService::HandleMarkableSelectionListProcessCommandL(aCommand, iListBox);
//
//
// Application icon dimensions (for proper layout in Application Shell and Fast Application Swap)
//
enum
{
EAknApplicationIconWidth = 42,
EAknApplicationIconHeight = 29
};
//
//
// SELECTION SERVICE IMPLEMENTATION ENDS HERE
//
//
//
// FIND IMPLEMENTATION STARTS HERE, use AknFind with these.
//
// Options menu. Use these instead of R_AVKON_MENUPANE_[SELECTION|MARKABLE]_LIST when find popup window is needed
#define R_AVKON_MENUPANE_SELECTION_LIST_WITH_FIND_POPUP R_AVKON_MENUPANE_FIND_POPUP_IMPLEMENTATION
#define R_AVKON_MENUPANE_MARKABLE_LIST_WITH_FIND_POPUP R_AVKON_MENUPANE_FIND_POPUP_IMPLEMENTATION_MARKABLE
#define EAknFindBoxEditorFlags (CEikEdwin::ENoLineOrParaBreaks)
//
// FIND IMPLEMENTATION ENDS HERE
//
// for ProcessCommandL()
enum
{
EAknDummyForProcessCommands = 4000,
EAknMarkAll, // selection service impl
EAknUnmarkAll, // selection service impl
EAknCmdHelp,
EAknCmdAddToPinboard,
EAknCmdFindPopupActivated,
EAknCmdEditModeT9,
EAknCmdEditModeMultitap,
EAknCmdEditModeNumber,
EAknCmdEditInsertNumber,
EAknCmdEditInsertSymbol,
EAknCmdInputLanguage,
EAknCmdPredictiveTextCascade,
EAknCmdT9PredictiveMatches,
EAknCmdT9PredictiveInsertWord,
EAknCmdT9PredictiveEditWord,
EAknCmdT9PredictiveT9Off,
EAknCmdMultitapPredictiveT9On,
EAknCmdExit,
EAknCmdEditTextMenu,
EAknCmdEditListMenu, // selection service impl
EAknCmdMark, // selection service impl
EAknCmdUnmark, // selection service impl
EAknCmdOpen, // selection service impl
// command ids for APAC build
EChinFepCmdInstructions,
EChinFepCmdModePinyin,
EChinFepCmdModeZhuyin,
EChinFepCmdModeStroke,
EChinFepCmdModeLatinUpper,
EChinFepCmdModeLatinLower,
EChinFepCmdModeNumber,
EChinFepCmdModeZhuyinFind,
EChinFepCmdModeStrokeFind,
EAknCmdEditModeArabicIndicNumber,
EAknCmdEditModeAlpha,
EAknCmdEditModeLatinText,
EAknCmdEditModeIndicNumber,
// command ids for Japanese build
EJapanFepCmdModeHiragana,
EJapanFepCmdModeKatakana,
EJapanFepCmdModePictographs,
EJapanFepCmdModeFullWidth,
EJapanFepCmdModeHalfWidth,
EJapanFepCmdModePredictiveOn,
EJapanFepCmdModePredictiveOff,
EJapanFepCmdModeUserDic,
EJapanFepCmdModeKutenCodeInput,
EAknCmdEditInsertPictograph,
EJapanFepCmdPredictiveTextCascade,
EJapanFepCmdMultitapPredictiveT9On,
EJapanFepCmdEditModeAlpha,
EJapanFepCmdEditModeNumber,
// Command ids for CangJie IME and Chinese Option Menu
EAknCmdInputMethod,
EChinFepCmdModeCangJie,
EChinFepCmdModeCangJieOption,
// Edit menu specific command id
EAknCmdEditMenuSctSelected,
// Command ids for Hwr IME and Chinese Option Menu
EPenInputCmdCut,
EPenInputCmdCopy,
EPenInputCmdPaste,
EPenInputCmdSetting,
EPenInputCmdHwrTraining,
EFepInputCmdHelp,
/**
* Command id for eastern arabic-indic digit type menu item.
* @since 3.1
*/
EAknCmdEditModeEasternArabicIndicNumber,
/**
* Command id for launching task swapper from options menu.
* @since 3.1
*/
EAknCmdTaskSwapper,
// Add new command ids here.
/**
* Command ids for Japanese insert symbol
* The behaviour of this id is same as EAknCmdEditInsertSymbol.
*/
EAknCmdEditInsertSymbolJp,
/**
* Command ids for clear direction of Japanese input from options menu.
* @since 3.2
*/
EAknCmdEditClearDirectionLeft,
EAknCmdEditClearDirectionRight,
/**
* Command id for Auto Word Completion Edit menu item.
* @since 3.2
*/
EAknCmdPredictiveModeCascade, // Edit Menu
EAknCmdPredictiveNormal, // To turn AutoCompletion Off
EAknCmdPredictiveAutoWord, // To turn AutoCompletion On
EAknCmdEditItemPlaceHolder,
/**
* Command ids for Japanese Touch input Option Menu
* @since 3.2
*/
EPenInputJpCmdFullWidth,
EPenInputJpCmdHalfWidth,
EPenInputJpCmdConversionOn,
EPenInputJpCmdConversionOff,
EPenInputJpCmdPredictiveOn,
EPenInputJpCmdPredictiveOff,
EPenInputJpCmdSaveWord,
EPenInputJpCmdKutenCode,
EAknCmdEditMenuClose,
/**
* Command to hide application in background
* @since 5.0
*/
EAknCmdHideInBackground,
//preview Input
EPenInputPreview,
EPenInputCmdPreviewOn,
EPenInputCmdPreviewOff,
/**
* Command ids for ITI input Option Menu
* @since
*/
EAknFepCmdPredMatches,
EAknFepCmdPredActivate,
EAknFepCmdPredDeactivate,
EAknFepCmdPredSettings,
EAknFepCmdPredInputLanguage,
EAknFepCmdPredHelp,
EAknFepCmdPredAutoComplSetting,
EAknFepCmdPredAutoComplMultiSetting,
EAknFepCmdPredTypingCorrectionSetting,
EAknFepCmdPredNumberCandidateSetting,
EAknFepCmdPredSettingChange,
EAknFepCmdPredPrimaryCandidateSetting,
// Command ids for Japanese Option Menu
EPenInputCmdRomajiInputOn,
EPenInputCmdRomajiInputOff,
//Command id for launching arabic handwriting recognition dictionary on-off menu
EPenInputCmdRecognitionWithDictionary,
EAknCmdEditModeKorean,
EAknCmdEditModeEnglish,
/**
* Command ids for UDB Editing with ITI input
* @since 3.2.3
*/
EAknFepCmdPredEditUserDictionary,
EAknFepPredDictionaryCmdEdit,
EAknFepPredDictionaryCmdAdd,
EAknFepPredDictionaryCmdDelete,
EAknFepPredDictionaryCmdMarkUnmark,
//Command id for launch phrase creation view
EAknCmdUserDBDlg,
/**
* open smiley dialog in edit menu
*/
EAknCmdEditInsertSmiley,
EPenInputCmdVITUT,
EPeninputCmdFSQ,
EPeninputCmdHwr,
/**
* Command id for dealing with discreet popup's close
*/
EAknDiscreetPopupCmdClose,
// Commands ids for arabic finger hwr option menu
EPenInputCmdHwrInputToPortrait,
EPenInputCmdHwrInputToLandscape,
EPenInputCmdSwitchToVkeyBasedInput,
EPenInputCmdWritingSpeed,
EPenInputCmdGuidingLine,
EChinFepCmdModePinyinPhrase,
EChinFepCmdModeZhuyinPhrase,
EChinFepCmdModeStrokePhrase,
/**
* Command ids for multiple marking state.
*/
EAknCmdMarkingModeEnter,
EAknCmdMarkingModeMarkOne,
EAknCmdMarkingModeMarkAll,
EAknCmdMarkingModeUnmarkAll,
/**
* @deprecated
* Do not use.
*/
EAknCmdEnd = 4999
};
/**
* Note that although these are the command ids resulting from the CBA key press, codes returned from
* CAknDialog::ExecuteLD are mapped in the routine CEikDialog::MappedCommandId. This routine should be consulted
* before knowing what the dialog will return.
*/
enum // CBA constants
{
EAknSoftkeyOk = EEikBidOk,
EAknSoftkeyCancel = EEikBidCancel,
EAknSoftkeySelect = EEikBidSelect,
EAknSoftkeyOptions = 3000,
EAknSoftkeyBack,
EAknSoftkeyMark,
EAknSoftkeyUnmark,
EAknSoftkeyInsert,
EAknSoftkeyYes,
EAknSoftkeyNo,
EAknSoftkeyDone,
EAknSoftkeyClose,
EAknSoftkeyExit,
EAknSoftkeyClear,
EAknSoftkeyUnlock,
EAknSoftkeySave,
EAknSoftkeyShow,
EAknSoftkeyListen,
EAknSoftkeyRead,
EAknSoftkeySearch,
EAknSoftkeyEmpty,
EAknSoftkeyLock,
EAknSoftkeyCall,
EAknSoftkeyAgain,
EAknSoftkeyQuit,
EAknSoftkeyDetails,
EAknSoftkeyNext,
EAknSoftkeyOther,
EAknSoftkeyEdit,
EAknSoftkeyOpen,
EAknSoftkeySend,
EAknSoftkeyView,
EAknSoftkeyContextOptions,
EAknSoftkeyChange,
EAknSoftkeyShiftMSK,
EAknSoftkeyForwardKeyEvent,
EAknSoftkeyHide,
EAknSoftkeyEmergencyCall,
EAknSoftkeyDialler
};
enum
{
EAknSoftkeyDummyUsedWithShortcuts = 3200
};
enum
{
EAknCBAFlagRespondWhenInvisible = 0x02 // softkeys still respond to key events even when control is invisible
};
// Predefined softkey ranges for supporting limited automatic control of such things as
// return from dialog-like contexts.
// All dialog-like contexts should return 0 for values in the first range.
// CEikDialog does not use the other implied ranges at all.
// Other contexts may use the "accept" range for internal behaviour
#define EAknSoftkeyLowestUserRejectId 0x1000
#define EAknSoftkeyLowestUserAcceptId 0x1100
#define EAknSoftkeyLowestUserNeutralId 0x1200
// Define a Cba version number of differentiate from GT CBA
// Current GT version is 0, but it's worth avoiding 1,2 etc in
// case of future incompatibilities.
#define KAknCbaVersion 10
#define KAknBMPAnimVersion 10
// Avkon control id's start from 5700
// Phonebook control id's start from 6000
// Avkon Control Type codes
#define KAknCtFirstControlId 5699
#define KAknCtLastControlId 0x2000
enum
{
EAknCtTest = KAknCtFirstControlId,
EAknControlIdBase = 5700,
EAknCtFormattedListBox, // generic formatted listbox
// "General list pane descendants"
EAknCtSingleListBox,
EAknCtSingleNumberListBox,
EAknCtSingleHeadingListBox,
EAknCtSingleGraphicListBox,
EAknCtSingleGraphicHeadingListBox,
EAknCtSingleNumberHeadingListBox,
EAknCtSingleLargeListBox,
EAknCtDoubleListBox,
EAknCtDoubleNumberListBox, // this is also big number implementation
EAknCtDoubleTimeListBox,
EAknCtDoubleLargeListBox, // this is also big large graphic implementation
EAknCtDoubleGraphicListBox,
EAknCtSettingListBox, // this is also big setting pane implementation
EAknCtSettingNumberListBox, // this is also big setting number pane implementation
// "Pop up window list pane descendants"
EAknCtSinglePopupMenuListBox,
EAknCtSingleGraphicPopupMenuListBox,
EAknCtSingleGraphicHeadingPopupMenuListBox,
EAknCtMenuDoublePopupMenuListBox,
EAknCtSinglePopupSubmenuListBox,
EAknCtDoubleLargeGraphicPopupMenuListBox,
EAknCtSingleHeadingPopupMenuListBox,
// "List pane elements and descendants(settings, edited)"
EAknSetListBox,
// "List pane elements (form, popup)"
EAknFormGraphicListBox,
// These are listboxes too.
EAknCtAppGrid,
EAknCtPinbGrid, // This is provided as example only.
EAknCtQdialGrid, // this is provided as example only.
EAknCtCaleMonthGrid, // this is provided as example only.
// Avkon Status pane controls
EAknCtTitlePane,
EAknCtContextPane,
EAknCtNaviPane,
EAknCtSignalPane,
EAknCtBatteryPane,
EAknCtIndicatorPane,
EAknCtIdleContextPane,
// For AVKON notes and queries:
EAknCtNote,
EAknCtQuery,
EAknCtMultilineQuery,
// For AVKON popup field:
EAknCtPopupField,
EAknCtPopupFieldText,
// For AVKON Form
EAknCtFormLabelEditor,
// For LAF reader
EAknCtLAF,
EAknCtPopupHeadingPane,
EAknCtSearchField,
// For Setting Page
EAknCtSettingPage,
// For AknVolumeControl and AknSlider
EAknCtVolumeControl,
EAknCtSlider,
EAknCtListQueryControl,
EAknCtSpecialCharacterMap,
// For AknPhoneNumberEditor
EAknPhoneNumberEditor,
// Numeric secret editor
EAknCtNumericSecretEditor,
// Popup Setting List Page
EAknCtPopupSettingList,
// Message query
EAknCtMessageQuery,
// Specialized numeric edwins
EAknCtIntegerEdwin,
EAknCtFloatingPointEdwin,
EAknCtSelectionListFixedFind,
EAknCtSelectionListPopupFind,
EAknCtEmptyList,
EAknCtDouble2GraphicListBox,
EAknCtDouble2LargeListBox,
EAknCtDouble2PopupMenuListBox,
// NOTE: DO NOT USE THESE LISTS (break ui-style, only for java)!!!
EAknCtSingle2GraphicListBox,
EAknCtDouble2GraphicLargeListBox,
// END OF NOTE
// Colour selection grid
EAknCtColourSelectionDialogNoneField, // Deprecated
EAknCtColourSelectionDialogGrid, // Deprecated
// Find box in list query dialog
EAknCtListQuerySearchControl,
// Derived query control for ip & fixed point queries
EAknExtCtQuery,
// Derived multiline query control for ip&ip queries
EAknExtCtMultilineQuery,
EAknCtBitmapAnimation,
// button for 5.0
EAknCtButton,
// new popup lists for 3.0
EAknCtSingle2GraphicPopupMenuListBox,
EAknCtDoubleGraphicPopupMenuListBox,
// Colour selection grid control for rel 3.0.
EAknCtColourSelectionGridDialog,
// Small digital clock for Avkon Status pane 3.1
EAknCtDigitalClockPane,
// Empty control for Avkon Status pane 3.1
EAknCtStatuspaneEmpty,
// use messageBox with listQuery, 3.0->
EAknListQueryWithMsgBox,
// Status pane
/** Application side container for universal indicator container */
EAknCtUniversalIndicatorPane,
/** Application side container for signal pane */
EAknCtSignalIndicatorContainerPane,
/** Application side container for battery pane */
EAknCtBatteryIndicatorContainerPane,
// Toolbar extension
EAknCtToolbarExtension,
/** For selection list with adaptive search */
/** @since 5.0 */
EAknCtSelectionListAdaptiveFind,
/** For Smiley Picker Dialog */
/** @since 5.0 */
EAknCtSmileyMap,
/** For slider with feedback style */
/** @since 5.1 */
EAknSliderWithFeedbackStyle,
/** For combined sub-pane in status pane */
/** @since 5.2 */
EAknCtCombinedPane,
// This is the marker for the last AVKON control id: It does not construct a control
EAknCtLastControlId = KAknCtLastControlId
// Control ids beyond (or including) this value will be dealt with as custom controls.
// However, to assist collaboration between applications, the following S60 -specific
// application- related ranges are documented here:
//
// Phonebook- related control ids = 0x2800 - 0x2C00
//
// Applications which do not have to correlate with any other DLLs or apps, should use the
// range 0x2001 - 0x2800
//
// Control ID range 0xF000 - 0xFFFF is reserved for licensee controls.
};
// Navi decorator control types
enum
{
ENaviDecoratorControlNone,
ENaviDecoratorControlTabGroup,
ENaviDecoratorLabel,
ENaviDecoratorImage,
ENaviDecoratorToolTip // Hint text
};
// Navigation pane tab width specifiers
enum
{
EAknTabWidthWithTwoTabs = 36,
EAknTabWidthWithTwoLongTabs = 74,
EAknTabWidthWithThreeTabs = 22,
EAknTabWidthWithThreeLongTabs = 67,
EAknTabWidthWithFourTabs = 18,
EAknTabWidthWithOneTab = 107
};
// Note dialog constants
enum
{
EGeneralLayout = 1,
EConfirmationLayout,
EProgressLayout,
ENoteWithImageLayout,
ETextualNotificationLayout,
ENotificationWithGraphicsLayout,
EAknNoteControlAnimationCreationFailed,
EWaitLayout
};
enum
{
EAknInvalidBorderCount = 1,
EAknInvalidDimensionArrayOutOfBounds,
EAknNoNoteControlDimensionDefined,
EAknNoteControlNullArgumentUsed
};
enum EAknNoteItemType
{
EAknNoteNoType = 1,
EAknNoteBitmap,
EAknNoteNumberTypeIndication,
EAknNoteProgressBar,
EAknNoteLabel,
EAknNoteAnimation
};
enum TNoteCtrlIds
{
EGeneralNote = 1
};
/** Note control flags */
#define EAknNoteNoTextWrapping 0x001 ///< Sets the TNoteFlags::ENoteNoTextWrapping
#define EAknNoteLeftSoftkeyWhenTapped 0x080 ///< Sets the TNoteFlags::ENoteLeftSKWhenTapped
/**
* Note: EAknNoteFlagWithSkinnableGraphics can only be used with AVKON_NOTE_SKINNED.
* Using it with AVKON_NOTE will cause a panic in resource reading.
* @since S60 5.0
*/
#define EAknNoteFlagWithSkinnableGraphics 0x100 ///< Sets the TNoteFlags::ENoteWithSkinnableGraphics
// Query dialog constants
// These are query types, and each type must be mapped
// to a layout (e.g. code layout or data layout)
// If you add or change a type here you need to update
// KQueryTypeToLayout in aknquerycontrol.cpp otherwise
// query control will crash with EAknPanicNotSupported
// because the layout is not known
enum
{
EDataLayout = 1,
EConfirmationQueryLayout,
ECodeLayout,
ETimeLayout,
EDateLayout,
EListLayout,
EMultiListLayout,
EMultiLineDataLayout,
EDurationLayout,
ETextSoftNotification,
ENumberLayout,
EPinLayout,
EPhoneLayout,
EMessageQueryLayout,
EStaticSizeDataLayout,
EFloatingPointLayout,
EIpLayout,
EFixedPointLayout,
EDataLayoutAllowEmptyInput,
ELocationLayout
};
enum
{
ETextEditor=1,
ESecretEditor,
ETimeEditor,
EDateEditor,
ENumberEditor,
EDurationEditor,
EIpEditor,
EFixedPointEditor,
ELocationEditor
};
enum EAknMultilineDataLayout
{
EMultiDataFirstEdwin = 1,
EMultiDataSecondEdwin,
EMultiDataFirstSecEd,
EMultiDataSecondSecEd,
EMultiDataFirstTimeEd,
EMultiDataSecondTimeEd,
EMultiDataFirstDateEd,
EMultiDataSecondDateEd,
EMultiDataFirstDurEd,
EMultiDataSecondDurEd,
EMultiDataFirstPhoneEd,
EMultiDataSecondPhoneEd,
EMultiDataFirstNumEd,
EMultiDataSecondNumEd,
EMultiDataFirstPinEd,
EMultiDataSecondPinEd,
EMultiDataFirstIpEd,
EMultiDataSecondIpEd,
EMultiDataFirstLocationEd,
EMultiDataSecondLocationEd,
EMultiDataFirstEdwinAllowEmpty,
EMultiDataSecondEdwinAllowEmpty
};
enum TQueryCtrlIds
{
EGeneralQuery = 0x500,
EMultilineFirstLine,
EMultilineSecondLine
};
enum TListQueryCtrlIds
{
EListQueryMainInboxList = 1,
EListQueryMainDraftList,
EListQueryMainOutboxList,
EListQueryAppViewLabel,
EListQueryMsgEditField,
EListQueryHeading,
EListQueryControl
};
enum TSelectionListCtrlIds
{
ESelectionListControl = 1,
EFindControl,
EAknEmptyListControl,
EAknListQueryMessageBox
};
// layout commands (for lists currently)
enum
{
ELayoutNoCmd = 1,
ELayoutOptional, // optional items
ELayoutRightSeparator, // adds separator
ELayoutTransparentCell, // transparent cell for formattedlistbox only
ELayoutItemMark, // sets column/subcell to handle item mark in multiselection lists
ELayoutNotFilled,
ELayoutNotAlwaysDrawn
};
enum
{
ELayoutAlignNone,
ELayoutAlignCenter,
ELayoutAlignLeft,
ELayoutAlignRight,
ELayoutAlignBidi
};
// Editor alignment
enum
{
EAknEditorAlignNone = ELayoutAlignNone,
EAknEditorAlignCenter = ELayoutAlignCenter,
EAknEditorAlignLeft = ELayoutAlignLeft,
EAknEditorAlignRight = ELayoutAlignRight,
EAknEditorAlignBidi = ELayoutAlignBidi
};
// Editor character case
enum
{
EAknEditorCharactersUpperCase = EAknEditorUpperCase,
EAknEditorCharactersLowerCase = EAknEditorLowerCase,
EAknEditorCharactersTextCase = EAknEditorTextCase
};
/**
*
* Series 60 pre-2.8 Font Ids
*
*/
enum
{
EFontNone = 0,
ELatinPlain12,
ELatinBold12,
ELatinBold13,
ELatinBold17,
ELatinBold19,
ENumberPlain5,
EClockBold30,
ELatinClock14,
EFontCustom,
EPlain12,
EPlain16,
EApacPlain12 = EPlain12,
EApacPlain16 = EPlain16,
EBold18,
EBold24,
ELatinBold16,
ECalcBold21,
ECalcOperBold21,
ECalcOperBold13,
EHighestFixedLayoutFont = KHighestFixedLayoutFont
};
/**
* Series 60 Logical Fonts
*
* @since Series 60 2.6
*/
enum TAknLogicalFontId
{
EAknLogicalFontPrimaryFont = KHighestFixedLayoutFont + KAknFontCategoryPrimary,
EAknLogicalFontSecondaryFont = KHighestFixedLayoutFont + KAknFontCategorySecondary,
EAknLogicalFontTitleFont = KHighestFixedLayoutFont + KAknFontCategoryTitle,
EAknLogicalFontPrimarySmallFont = KHighestFixedLayoutFont + KAknFontCategoryPrimarySmall,
EAknLogicalFontDigitalFont = KHighestFixedLayoutFont + KAknFontCategoryDigital,
EAknHighestLogicalFont = KAknHighestLogicalFont
};
#define ELayoutEmpty (-16380)
// For layout resource of findbox
enum
{
EAknLayoutFindPaneIconId = 1,
EAknLayoutFindPaneEditorId,
EAknLayoutMainPaneListGenPane,
EAknLayoutMainPaneListGenPaneWithFindBox,
EAknLayoutMainPaneFindPane,
EAknListSinglePane,
EAknListSingleNumberPane,
EAknListSingleHeadingPane,
EAknListSingleGraphicPane,
EAknListSingleGraphicHeadingPane,
EAknListSingleNumberHeadingPane,
EAknListSingleLargeGraphicPane,
EAknListDoubleNumberPane,
EAknListDoubleTimePane,
EAknListDoubleLargeGraphicPane,
EAknListDoubleGraphicPane,
EAknListSettingNumberPane,
EAknLayoutFindPaneVShadow,
EAknLayoutFindPaneHShadow,
EAknLayoutFindPaneOutlineRect,
EAknLayoutEmptyList1stLine,
EAknLayoutEmptyList2ndLine
};
// Status pane pane Uids
#define EEikStatusPaneUidSignal 0x100059B9
#define EEikStatusPaneUidBattery 0x100059BA
#define EEikStatusPaneUidContext 0x100059BB
#define EEikStatusPaneUidTitle 0x100059BC
#define EEikStatusPaneUidNavi 0x100059BD
#define EEikStatusPaneUidIndic 0x100059BE
#define EEikStatusPaneUidMessage 0x100059BF
#define EEikStatusPaneUidClock 0x100059C0
#define EEikStatusPaneUidDigitalClock 0x10275090
#define EEikStatusPaneUidEmpty 0x102750A3
#define EEikStatusPaneUidCombined 0x2001E2D9
// POPUP_FIELD flags
#define EAknPopupFieldFlagAllowsUserDefinedEntry 0x01
#define EAknPopupFieldFlagInitialised 0x02
#define EAknPopupFieldFlagButton 0x04
#define EAknPopupFieldNoGraphic 0x08
enum
{
EAknDialogQueryValueTextEditor1 = 1,
EAknDialogQueryValueNumberEditor1,
EAknDialogQueryValuePhoneEditor1,
EAknDialogQueryValueTimeEditor1,
EAknDialogQueryValueDateEditor1,
EAknDialogQueryValueDurationEditor1,
EAknFormQueryControl,
EAknPopupFieldEmptyListNote
};
// POPUP_SETTING_LIST flags
enum
{
EAknPopupSettingListFlagAllowsUserDefinedEntry = 0x001,
EAknPopupSettingListFlagInitialised = 0x002
};
// FORM default menu constants
enum
{
EAknFormCmdEdit = 950,
EAknFormCmdAdd,
EAknFormCmdSave,
EAknFormCmdLabel,
EAknFormCmdDelete,
EAknFormMaxDefault
};
/**
* Avkon controls that support vertical and horizontal orientation should use
* these constants for orientation.
*
* @since 3.2
*/
enum TAknOrientation
{
EAknOrientationVertical = 0,
EAknOrientationHorizontal
};
// Slider layouts
enum
{
EAknFormSliderLayout1 = 1,
EAknFormSliderLayout2,
EAknFormSliderLayout3,
EAknSettingsItemSliderLayout,
EAknSettingsItemSliderLayoutWithGraphics,
EAknMIDPFormSliderLayout,
EAknSliderLayoutVertical,
EAknSliderLayoutHorizontal
};
// Slider value types
enum
{
EAknSliderValueNone,
EAknSliderValueBareFigure,
EAknSliderValuePercentage,
EAknSliderValueFraction,
EAknSliderValueDecimal
};
// Slider feedback styles
enum TAknFeedbackStyle
{
EAknSliderFbStable,
EAknSliderFbDynamic
};
/** Volume layouts */
enum
{
ESettingsVolumeControl, /** setting page volume control */
ENaviPaneVolumeControl, /** navi pane volume control */
EPopupVolumeControl /** volume pop up control */
};
/** dynamic volume layouts
* @since 3.2 */
enum TAknVolumeControlDynamicLayouts
{
EDynRangeSettingsVolumeControl = 3, /** Hi-res volume control */
EDynRangeNaviPaneVolumeControl, /** Hi-res volume control */
EDynRangePopupVolumeControl, /** Hi-res volume control */
ESmallPopupVolumeControl, /** same as EDynRangePopupVolumeControl */
ESmallPopupVolumeControlWithPercent /** same as EDynRangePopupVolumeControl */
};
// Small indicator pane indicators & navi pane editor indicators
enum
{
// Status pane's indicator pane's indicators.
EAknIndicatorIrActive,
EAknIndicatorEnvelope,
EAknIndicatorEmailMessage,
EAknIndicatorDataMessage,
EAknIndicatorFaxMessage,
EAknIndicatorOtherMessage,
EAknIndicatorSecuredConnection,
EAknIndicatorVoiceMailWaiting,
EAknIndicatorVoiceMailWaitingOnLine1,
EAknIndicatorVoiceMailWaitingOnLine2,
EAknIndicatorVoiceMailWaitingOnBothLines,
EAknIndicatorHomeZone,
EAknIndicatorBluetooth,
EAknIndicatorBluetoothModuleOn,
EAknIndicatorOutbox,
EAknIndicatorKeyguard,
EAknIndicatorAllCallsForwarded,
EAknIndicatorCallsForwardedOnLine1,
EAknIndicatorCallsForwardedOnLine2,
EAknIndicatorCallsForwardedOnBothLines,
EAknIndicatorCallsForwardedToVoiceMailbox,
EAknIndicatorSelectedLine,
EAknIndicatorAlarmClock,
EAknIndicatorHeadset,
EAknIndicatorLoopset,
EAknIndicatorIHFActive,
EAknIndicatorInstantMessage,
EAknIndicatorTTY,
EAknIndicatorUSBConnection,
EAknIndicatorMissedCalls,
EAknIndicatorRemoteMailboxEmailMessage,
EAknIndicatorLocation,
EAknIndicatorHeadsetUnavailable,
EAknIndicatorRoaming,
EAknIndicatorLocationOn,
EAknIndicatorLocationOff,
EAknIndicatorPoC,
EAknIndicatorWlanAvailable,
EAknIndicatorWlanActive,
EAknIndicatorWlanActiveSecure,
EAknIndicatorCarkit,
EAknIndicatorPoCDnD,
EAknIndicatorPoCMissed,
EAknIndicatorTvOut,
EAknIndicatorVoIP,
EAknIndicatorTARM,
EAknIndicatorTARMModuleOn,
EAknIndicatorMobileTV,
EAknIndicatorMobileTVRec,
EAknIndicatorHAC,
EAknIndicatorMemoryCard,
EAknIndicatorVideoSharing,
EAknIndicatorSynchronization,
EAknIndicatorGPS,
EAknIndicatorBluetoothVisible,
EAknIndicatorBluetoothModuleOnVisible,
EAknIndicatorFMTxSending,
EAknIndicatorFMTxEnabled,
EAknIndicatorMissedCalendarAlarm,
EAknIndicatorUSBMemConnected,
EAknIndicatorUSBMemActive,
EAknIndicatorStopWatch,
EAknIndicatorMecoServiceTab,
EAknIndicatorHDMI,
EAknIndicatorIntegratedIM,
// Navi pane editor indicators
EAknNaviPaneEditorIndicatorT9 = 100,
EAknNaviPaneEditorIndicatorUpperCase,
EAknNaviPaneEditorIndicatorLowerCase,
EAknNaviPaneEditorIndicatorTextCase,
EAknNaviPaneEditorIndicatorNumberCase,
EAknNaviPaneEditorIndicatorQuery,
EAknNaviPaneEditorIndicatorQwertyShift,
// indicators for selection modes
EAknNaviPaneEditorIndicatorUpperCaseSelect,
EAknNaviPaneEditorIndicatorLowerCaseSelect,
EAknNaviPaneEditorIndicatorTextCaseSelect,
EAknNaviPaneEditorIndicatorNumberCaseSelect,
EAknNaviPaneEditorIndicatorAutoComplete,
EAknNaviPaneEditorIndicatorArabicCase = 130,
EAknNaviPaneEditorIndicatorHebrewCase,
EAknNaviPaneEditorIndicatorArabicIndicNumberCase,
EAknNaviPaneEditorIndicatorDevanagariCase = 140,
EAknNaviPaneEditorIndicatorDevanagariIndicNumberCase,
EAknNaviPaneEditorIndicatorDevanagariPhoneticUpperCase,
EAknNaviPaneEditorIndicatorDevanagariPhoneticLowerCase,
// APAC
EAknNaviPaneEditorIndicatorPinyin = 150,
EAknNaviPaneEditorIndicatorZhuyin,
EAknNaviPaneEditorIndicatorStroke, // Stroke editor indicator for simplified Chinese.
EAknNaviPaneEditorIndicatorZhuyinFind,
EAknNaviPaneEditorIndicatorStrokeFind,
EAknNaviPaneEditorIndicatorCangJie,
EAknNaviPaneEditorIndicatorPinyinPhrase,
EAknNaviPaneEditorIndicatorZhuyinPhrase,
EAknNaviPaneEditorIndicatorStrokePhrase,
EAknNaviPaneEditorIndicatorStrokeTradPhrase,
// THAI
EAknNaviPaneEditorIndicatorThai = 170,
EAknNaviPaneEditorIndicatorStrokeTrad, // Stroke editor indicator for traditional Chinese.
//FARSI aND URDU
EAknNaviPaneEditorIndicatorFarsiAndUrduCase,
// Application indicators to editor indicator pane
EAknNaviPaneEditorIndicatorAudioAttached = 200,
EAknNaviPaneEditorIndicatorImageAttached,
EAknNaviPaneEditorIndicatorObjects,
EAknNaviPaneEditorIndicatorAttachment,
EAknNaviPaneEditorIndicatorMessageLength,
EAknNaviPaneEditorIndicatorMessageInfo,
// Extra application indicators to editor indicator pane in small statuspane
EAknNaviPaneEditorIndicatorWaitBar,
EAknNaviPaneEditorIndicatorProgressBar,
EAknNaviPaneEditorIndicatorSecuredConnection,
EAknNaviPaneEditorIndicatorWmlWaitGlobe,
EAknNaviPaneEditorIndicatorGprs,
EAknNaviPaneEditorIndicatorFileSize,
EAknNaviPaneEditorIndicatorWmlWindows,
EAknNaviPaneEditorIndicatorMcePriorityHigh,
EAknNaviPaneEditorIndicatorMcePriorityLow,
EAknNaviPaneEditorIndicatorWmlWindowsText,
EAknNaviPaneEditorIndicatorWlanAvailable,
EAknNaviPaneEditorIndicatorWlanActive,
EAknNaviPaneEditorIndicatorWlanActiveSecure,
// Navi pane editor indicators for Japanese
EAknNaviPaneEditorIndicatorJapaneseHiraganaKanji = 300, // Hiragana/Kanji
EAknNaviPaneEditorIndicatorJapaneseHiragana, // Hiragana
EAknNaviPaneEditorIndicatorJapaneseFullKatakana, // Full-width Katakana
EAknNaviPaneEditorIndicatorJapaneseHalfKatakana, // Half-width Katakana
EAknNaviPaneEditorIndicatorJapaneseFullUpperAlphabet, // Full-width Upper Case alphabet
EAknNaviPaneEditorIndicatorJapaneseFullLowerAlphabet, // Full-width Lower Case alphabet
EAknNaviPaneEditorIndicatorJapaneseFullTextAlphabet, // Full-width Text Case alphabet
EAknNaviPaneEditorIndicatorJapaneseFullNumeric, // Full-width numeric
// Navi pane editor indicators for Korean
EAknNaviPaneEditorIndicatorKoreanHangul,
EAknNaviPaneEditorIndicatorKoreanHangulSelect,
// Navi Pane editor indicators for Vietnamese
EAknNaviPaneEditorIndicatorVietnameseUpperCase = 400,
EAknNaviPaneEditorIndicatorVietnameseLowerCase,
EAknNaviPaneEditorIndicatorVietnameseTextCase,
// Navi Pane editor indicators for Fn key
EAknNaviPaneEditorIndicatorFnKeyPressed =500,
EAknNaviPaneEditorIndicatorFnKeyLocked,
// Navi Pane editor indicators for Greek
EAknNaviPaneEditorIndicatorGreekUpperCase = 600,
EAknNaviPaneEditorIndicatorGreekLowerCase,
EAknNaviPaneEditorIndicatorGreekTextCase,
// Navi Pane editor indicators for Cyrillic
EAknNaviPaneEditorIndicatorCyrillicUpperCase = 700,
EAknNaviPaneEditorIndicatorCyrillicLowerCase,
EAknNaviPaneEditorIndicatorCyrillicTextCase,
// Navi pane indicator for hybrid mode in easy dialling
EAknNaviPaneEditorIndicatorHybridLatin = 800,
// Reserved for dynamic indicators
EAknNaviPaneEditorIndicatorDynamicUidRangeFirst = 10000,
EAknNaviPaneEditorIndicatorDynamicUidRangeLast = 11000
};
enum // Indicator states
{
EAknIndicatorStateOff,
EAknIndicatorStateOn,
EAknIndicatorStateAnimate
};
enum // Signal indicator states
{
// GPRS indicator states
EAknSignalGprsIndicatorOff = 0,
EAknSignalGprsIndicatorAvailable, // Same as EAknSignalGprsIndicatorOff
EAknSignalGprsIndicatorAttached,
EAknSignalGprsIndicatorEstablishingContext,
EAknSignalGprsIndicatorContext,
EAknSignalGprsIndicatorSuspended,
EAknSignalGprsIndicatorMultipdp,
// Common packet data indicator states
EAknSignalCommonPacketDataIndicatorOff = 0x100,
EAknSignalCommonPacketDataIndicatorAvailable, // Same as EAknSignalCommonPacketDataIndicatorOff
EAknSignalCommonPacketDataIndicatorAttached,
EAknSignalCommonPacketDataIndicatorEstablishingContext,
EAknSignalCommonPacketDataIndicatorContext,
EAknSignalCommonPacketDataIndicatorSuspended,
EAknSignalCommonPacketDataIndicatorMultipdp,
// WCDMA indicator states
EAknSignalWcdmaIndicatorOff = 0x200,
EAknSignalWcdmaIndicatorAvailable,
EAknSignalWcdmaIndicatorAttached,
EAknSignalWcdmaIndicatorEstablishingContext,
EAknSignalWcdmaIndicatorContext,
EAknSignalWcdmaIndicatorMultipdp,
EAknSignalWcdmaIndicatorSuspended,
// CDMA indicator states
EAknSignalCdmaIndicatorOff = 0x300,
EAknSignalCdmaIndicatorNoService,
EAknSignalCdmaIndicatorAvailable,
EAknSignalCdmaIndicatorNotAvailable,
EAknSignalCdmaIndicatorActive,
EAknSignalCdmaIndicatorDormant,
EAknSignalCdmaIndicatorSending,
EAknSignalCdmaIndicatorReceiving,
// EDGE indicator states
EAknSignalEdgeIndicatorOff = 0x400,
EAknSignalEdgeIndicatorAvailable,
EAknSignalEdgeIndicatorAttached,
EAknSignalEdgeIndicatorEstablishingContext,
EAknSignalEdgeIndicatorContext,
EAknSignalEdgeIndicatorSuspended,
EAknSignalEdgeIndicatorMultipdp,
// HSDPA indicator states
EAknSignalHsdpaIndicatorOff = 0x500,
EAknSignalHsdpaIndicatorAvailable,
EAknSignalHsdpaIndicatorAttached,
EAknSignalHsdpaIndicatorEstablishingContext,
EAknSignalHsdpaIndicatorContext,
EAknSignalHsdpaIndicatorSuspended,
EAknSignalHsdpaIndicatorMultipdp
};
#define KAknSignalOffLineMode 0x00010000
// Grid layout flags
#define EAknGridHorizontalOrientation 0x01
#define EAknGridVerticalOrientation 0x02
#define EAknGridRightToLeft 0x04
#define EAknGridLeftToRight 0x08
#define EAknGridBottomToTop 0x10
#define EAknGridTopToBottom 0x20
// Chooses right-to-left or left-to-right depending on language's writing direction
// You MUST use CurrentDataIndex() and CurrentItemIndex() from grid correctly if you
// choose this flag! (Most cases you want to use CurrentDataIndex(), not CurrentItemIndex!)
#define EAknGridLanguageSpecificHorizontalDirection 0x40
#define EAknGridFollowsItemsAndStops 0x00
#define EAknGridFollowsItemsAndLoops 0x01
#define EAknGridFollowsGrid 0x02
#define EAknGridStops 0x04
#define EAknGridIncrementLineAndStops 0x08
#define EAknGridIncrementLineAndLoops 0x10
// Bitmap Animation flags
#define EAknBitmapAnimationPlayModePlay 0x00
#define EAknBitmapAnimationPlayModeCycle 0x01
#define EAknBitmapAnimationPlayModeBounce 0x02
// Defining colors in resource file (this is for defining your own color schemes, do not use in
// applications!) (num is the number from LAF specification!) This is used in eikcolor.ra to setup
// color lists.
#define AVKON_COLOR(num,r,g,b) CTRL_COLOR { logical_color=(num); color = COLOR { red=(r); green=(g); blue=(b); }; }
// This is used in eikcolor.ra
#define AVKON_RGB(num,r,g,b) COLOR { red=(r); green=(g); blue=(b); }
//
// defines for different listbox layouts
// gfx = index to the image in icon array in A column
// heading = heading text in B column
// text = main text for C column
// optgfx1 = index to optional image in D column
// optgfx2 = index to 2nd optional image in D column
//
// Example: LB_SINGLE_GRAPHIC_HEADING(1, qgn_icon_1, qtn_text_1)
#define LB_SINGLE(text) text
#define LB_SINGLE_NUMBER(num,text) #num ## "/t" ## text
#define LB_SINGLE_HEADING(heading, text) heading ## "/t" ## text
#define LB_SINGLE_GRAPHIC(gfx, text) #gfx ## text
#define LB_SINGLE_GRAPHIC_HEADING(gfx, heading, text) #gfx ## "/t" ## heading ## "/t" ## text
// SCT enumerations
enum // ids in SCT_CHAR_SET resource.
{
EAknSCTLowerCase,
EAknSCTUpperCase,
EAknSCTNumeric,
EAknSCTFullCase,
EAknSCTHalfCase,
EAknSCTQwerty,
EAknSCTChiChineseInputModes = EAknSCTUpperCase,
EAknSCTChiLatinInputModes = EAknSCTLowerCase,
// The following definitions are used for category buttons
EAknSCTPictograph = 10,
EAknSCTPictograph1,
EAknSCTPictograph2
};
// For Setting Page resource so that no number is displayed
#define EAknSettingPageNoOrdinalDisplayed (-16380)
// Flag for Setting Item resource
#define EAknSettingItemNumberedStyle (0x0001)
#define EAknSettingItemIncludeHiddenInOrdinal (0x0002)
enum TSCTQueryCtrlIds
{
EAknSCTQueryHeadingId = 1,
EAknSCTQueryContentId
};
enum TSmileyQueryCtrlIds
{
EAknSmileyQueryHeadingId = 1,
EAknSmileyQueryContentId
};
// Enemerations for Avkon KeySounds
enum TAvkonSKeyRepeatType
{
ESKeyTypeShort,
ESKeyTypeLong,
ESKeyTypeRepeat
};
// These SID numbers should specify all AVKON defined SID's
// The first item starts from 1000 so there are no clashes
// with application defined SID's (which should start at 0)
enum TAvkonSystemSID
{
EAvkonSIDNoSound = 1000,
EAvkonSIDDefaultSound = 1001,
EAvkonSIDStandardKeyClick = 1002,
EAvkonSIDConfirmationTone = 1003,
EAvkonSIDInformationTone = 1003,
EAvkonSIDWarningTone = 1004,
EAvkonSIDErrorTone = 1005,
EAvkonSIDVolumeMaxTone = 1006,
EAvkonSIDVolumeMinTone = 1007,
EAvkonSIDReadialCompleteTone = 1008,
EAvkonSIDBatteryLowTone = 1009,
EAvkonSIDChargingBatteryTone = 1010,
EAvkonSIDConnectionStartTone = 1011,
EAvkonSIDConnectionStopTone = 1012,
EAvkonSIDOperationReadyTone = 1013,
EAvkonSIDNameDiallerStartTone = 1014,
EAvkonSIDNameDiallerErrorTone = 1015,
EAvkonSIDNameDiallerAbortTone = 1016,
EAvkonSIDPowerOffTone = 1017,
EAvkonSIDPowerOnTone = 1018,
EAvkonSIDRechargeBatteryTone = 1019,
EAvkonSIDVoiceRecordingTone = 1020,
EAvkonSIDVoiceRecordingStartTone = 1021,
EAvkonSIDVoiceRecordingStopTone = 1022,
EAvkonSIDWrongCharger = 1023,
EAvkonSIDNetBusy = 1024,
EAvkonSIDNetCallWaiting = 1025,
EAvkonSIDNetReorder = 1026,
EAvkonSIDNetCongestion = 1027,
EAvkonSIDNetSpecialInformation = 1028,
EAvkonSIDNetRadioNotAvailable = 1029,
EAvkonSIDIHFActive = 1030,
EAvkonSIDRadioPathAcknowledge = 1031,
EAvkonSIDDial = 1032,
EAvkonSIDRingGoing = 1033,
EAvkonSIDLocationRequest = 1034
};
// These are used as priority values for Media Server
enum TAvkonSoundsPriority
{
EAvkonKeyClickPriority = 45, // contains DTMF and camera
EAvkonPoweringTonesPriority = 50,
EAvkonLowLevelNotesPriority = 55,
EAvkonConfirmationNotePriority = 55,
EAvkonVolumeSettingTonesPriority = 60,
EAvkonConnectionTonesPriority = 65,
EAvkonHighLevelNotesPriority = 70,
EAvkonErrorNotePriority = 70,
EAvkonWarningNotePriority = 70,
EAvkonVoiceDiallingTonesPriority = 73,
EAvkonNetworkingTonesPriority = 75,
EAvkonRecordingTonesPriority = 80,
EAvkonChargingTonesPriority = 85,
EAvkonNewMessageTonesPriority = 90,
EAvkonAlarmTonesPriority = 95,
EAvkonRingingTonesPriority = 100
};
// These are used as priority preference values for Media Server
enum TAvkonSoundsPreference
{
EAknAudioPrefIncomingCall = 0x01340001,
EAknAudioPrefIncomingCallLine2 = 0x01330001,
EAknAudioPrefIncomingDataCall = 0x01320001,
EAknAudioPrefAutoRedialCompleted = 0x01310001,
EAknAudioPrefAlarmClock = 0x01220001,
EAknAudioPrefCalendarAlarm = 0x01210001,
// Message Preferences
EAknAudioPrefNewSMS = 0x01120001,
EAknAudioPrefNewSpecialMessage = 0x01110001,
// Battery preferences
EAknAudioPrefBatteryLow = 0x01030001,
EAknAudioPrefRechargeBattery = 0x01020001,
EAknAudioPrefWrongCharger = 0x01010001,
// Recording Tone preferences
EAknAudioPrefVoiceRecStart = 0x00930001,
EAknAudioPrefVoiceRecRecording = 0x00920001,
EAknAudioPrefVoiceRecStop = 0x00910001,
// Network preferences
EAknAudioPrefRadioPathAck = 0x00890001,
EAknAudioPrefDial = 0x00880001,
EAknAudioPrefRingGoing = 0x00870001,
EAknAudioPrefBusy = 0x00860001,
EAknAudioPrefCallWaiting = 0x00850001,
EAknAudioPrefReorder = 0x00840001,
EAknAudioPrefCongestion = 0x00830001,
EAknAudioPrefSpecialInformation = 0x00820001,
EAknAudioPrefRadioNotAvailable = 0x00810001,
// High level preferences
EAknAudioPrefError = 0x00720001,
EAknAudioPrefWarning = 0x00710001,
// Voice Dialling preferences
EAknAudioPrefVoiceStarting = 0x00630001,
EAknAudioPrefVoiceError = 0x00620001,
EAknAudioPrefVoiceAbort = 0x00610001,
// Connection preferences
EAknAudioPrefConnectionStart = 0x00530001,
EAknAudioPrefConnectionStop = 0x00520001,
EAknAudioPrefOperationReady = 0x00510001,
// Volume / IHF preferences /Previews
EAknAudioPrefFilePreview = 0x00440001,
EAknAudioPrefAudioVolumeMin = 0x00430001,
EAknAudioPrefAudioVolumeMax = 0x00420001,
EAknAudioPrefIHFActive = 0x00410001,
// Low Level preferences
EAknAudioPrefCharging = 0x00330001,
EAknAudioPrefConfirmation = 0x00320001,
EAknAudioPrefDefaultTone = 0x00310001,
// Phone power preferences
EAknAudioPrefPowerOn = 0x00220001,
EAknAudioPrefPowerOff = 0x00210001,
// Key press / camera click preferences
EAknAudioPrefKeyPressNonDTMF = 0x00140001,
EAknAudioPrefKeyDownDTMF = 0x00130001,
EAknAudioPrefKeyUpDTMF = 0x00120001,
EAknAudioPrefCamera = 0x00110001,
// Record and VoCos Preferences
EAknAudioPrefVoiceRec = 0x00060001,
EAknAudioPrefComposer = 0x00050001,
EAknAudioPrefRingFilePreview = 0x00040001,
EAknAudioPrefVocosPlayback = 0x00030001,
EAknAudioPrefVocosTrain = 0x00020001,
EAknAudioPrefVocosRecog = 0x00010001,
EAvkonKeyClickPreference = 0x00140001,
EAvkonConfirmationNotePreference = 0x00320001,
EAvkonErrorNotePreference = 0x00720001,
EAvkonWarningNotePreference = 0x00710001
};
// Constants for integer editor widths; may be required in resource
#define EAknMaxIntegerDigits 12
enum TMessageQueryCtrlIds
{
EAknMessageQueryHeaderId = 1,
EAknMessageQueryContentId
};
// CAknIncallBubble flags
/**
* Bit Explanation
* 0 and 1 Call state
* 2 No Ciphering
* 3 Is muted
* 4 Is Visible
* 5 Is a Fax
* 6 Is a Data call
* 7 Is a Hscsd data call
* 8 Line 2 indication
* 9 Is a Video call
* 10 Is an emergency call
* 11 Is a VoIP call
* 12 Is a full screen touch input window show
* 13 If a full screen touch input window hide
* ...
* ...
* 31 Reserved for incall bubble notifier internal use.
*/
enum TAvkonIncallStatusBubbleFlags
{
EAknStatusBubbleAlerting = 0x00, // One of
EAknStatusBubbleActive = 0x01, // these
EAknStatusBubbleOnHold = 0x02, // to set
EAknStatusBubbleDisconnected = 0x03, // the call state
EAknStatusBubbleNoCiphering = 0x04,
EAknStatusBubbleMuted = 0x08,
EAknStatusBubbleVisible = 0x10,
EAknStatusBubbleFax = 0x20,
EAknStatusBubbleData = 0x40,
EAknStatusBubbleDataHscsd = 0x80,
EAknStatusBubbleLine2 = 0x100,
EAknStatusBubbleVideo = 0x200,
EAknStatusBubbleEmergency = 0x400,
EAknStatusBubbleVoIP = 0x800,
EAknStatusBubbleInputShow = 0x1000,
EAknStatusBubbleInputHide = 0x2000,
EAknStatusBubbleReservedInternal = 0x80000000
};
/**
* Timeouts for note dialog wrappers
* These should be kept same as CAknNoteDialog::TTimeout.
*/
enum TAknNoteDialogTimeout
{
EAknNoteDialogUndefinedTimeout = 0,
EAknNoteDialogShortTimeout = 1500000,
EAknNoteDialogLongTimeout = 3000000,
// Change these if Notes UI spec changes:
EAknConfirmationNoteTimeout = EAknNoteDialogShortTimeout,
EAknInformationNoteTimeout = EAknNoteDialogLongTimeout,
EAknErrorNoteTimeout = EAknNoteDialogLongTimeout,
EAknWarningNoteTimeout = EAknNoteDialogLongTimeout
};
/**
* Tones for note dialog wrappers
* These should be kept same as CAknNoteDialog::TTone.
*/
enum TAknNoteDialogTone
{
EAknNoteDialogNoTone = 0,
EAknNoteDialogConfirmationTone = EAvkonSIDConfirmationTone,
EAknNoteDialogWarningTone = EAvkonSIDWarningTone,
EAknNoteDialogErrorTone = EAvkonSIDErrorTone
};
enum TAknSelectionListDialogFlags
{
EAknFlagFind = 0x0001
};
enum TAknIconArrayType
{
EAknIconArrayNone,
EAknIconArraySimple,
EAknIconArrayComplex
};
// This enum is to distinguish at runtime whether you are in
// European or APAC build variant.
enum EVariantFlag
{
EEuropeanVariant=0,
EApacVariant
};
// This can be extended for additional subvariants. Routine in AknUtils should be updated
// to return the correct sub-variant.
enum ESubVariantFlag
{
ENoSubVariant = 0,
EPrcSubVariant,
EHongKongSubVariant,
ETaiwanSubVariant
};
// This is the max length of the screensaver text
#define KScreensaverTextMaxLength 15
// These flags are to be used in conjunction with CAknForm
#define KSingleLineHorizontalScrollingEditorFlags EEikEdwinAlternativeWrapping | EEikEdwinNoWrap
#define KMultiLineExpandingEditorFlags EEikEdwinNoHorizScrolling | EEikEdwinResizable
// Deprecated
#define AVERELL_NOTE AVKON_NOTE
#define AVERELL_CONFIRMATION_QUERY AVKON_CONFIRMATION_QUERY
#define AVERELL_DATA_QUERY AVKON_DATA_QUERY
enum TAknKeyBlockMode
{
EDefaultBlockMode = 0,
ENoKeyBlock
};
// Separator line.
enum TAknSeparatorLinePosition
{
ENoLine,
EAColumn,
EABColumn,
EBCColumn,
EBCColumnStretched
};
enum TAknColourSelectionDialogIds
{
ECtrlGridType = 100,
EColourGridPopup,
EColourGridPopupNone
};
// custom text cursor constants
enum TAknCustomTextCursorIds
{
KAknCustomTextCursorIdLeftToRight = 0x101fdf03,
KAknCustomTextCursorIdRightToLeft = 0x101fdf04,
KAknCustomTextCursorIdLeftToRightThin = 0x101fe51c,
KAknCustomTextCursorIdRightToLeftThin = 0x101fe51d
};
enum TAknNaviPaneBackgroundTypes
{
EAknNaviPaneBackgroundTypeNotDefined = 0,
EAknNaviPaneBackgroundTypeWipe = 1,
EAknNaviPaneBackgroundTypeSolid = 2
};
// common bitmap file definitions (for .rss etc.)
#define COMMONDIALOGS_BITMAP_FILE "z:\\resource\\apps\\commondialogs.mbm"
#define CALLSTATUS_BITMAP_FILE "z:\\resource\\apps\\callstatus.mbm"
#define MEMORYCARDUI_BITMAP_FILE "z:\\resource\\apps\\aknmemorycardui.mbm"
#define AVKON_BITMAP_FILE "z:\\resource\\apps\\avkon2.mbm"
#define AVKON_VARIATED_BITMAPS_FILE "z:\\resource\\apps\\variatedbitmaps.mbm"
#define SMILEY_ICONS_MIF_FILE "z:\\resource\\apps\\smiley.mif"
// End key closing event. If this window server event is received,
// by default application will be closed unless it is system application.
#define KAknUidValueEndKeyCloseEvent 0x101F87F0
enum TAknStylusPopUpCmdLinkIds
{
EAknStylusPopUpCmdLink1 = 0,
EAknStylusPopUpCmdLink2
};
/**
* Battery indicator states.
*/
enum TAknBatteryIndicatorStates
{
EAknBatteryIndicatorNormal = 1,
EAknBatteryIndicatorPowerSave
};
// Category button IDs enumerations for SCT
// Those IDs are used on AVKON_SCT_CATEGORY_BUTTON resource.
// r:5.0
enum TAknSCTCategoryButtons
{
EAknSCTCategoryButtonHalfCase = 0,
EAknSCTCategoryButtonFullCase,
EAknSCTCategoryButtonPicto,
EAknSCTCategoryButtonPicto1,
EAknSCTCategoryButtonPicto2,
EAknSCTCategoryButtonLastId // not set to ids
};
enum TAknFepDualLanguageSettingDualInput
{
EAknFepDualLanguageSettingDualInputPrimary,
EAknFepDualLanguageSettingDualInputSecondary
};
enum TAknSctPageNaviButtons
{
EAknSctTableNaviExit = 0,
EAknSctPageNaviPrevPage,
EAknSctPageNaviNextPage,
EAknSctTableNaviSpecialChar,
EAknSctTableNaviEmotion,
EAknSctPageNaviLastId
};
//
// Flags for CAknDiscreetPopup
//
// Popup's duration is long (default is short)
#define KAknDiscreetPopupDurationLong 0x00000001
// Popup switches the device light on
#define KAknDiscreetPopupLightsOn 0x00000002
// Popup plays the confirmation tone
#define KAknDiscreetPopupConfirmationTone 0x00000004
// Popup plays the warning tone
#define KAknDiscreetPopupWarningTone 0x00000008
// Popup plays the error tone
#define KAknDiscreetPopupErrorTone 0x00000010
#endif // __AVKON_HRH__
//
// Flags for CAknSettingPage (used in extension resource)
//
#define KAknSettingPageNoEmbeddedSoftKeys 0x00000001