CPbkContactEditorDlg Class Reference

class CPbkContactEditorDlg : public CAknForm

A contact editing dialog implementation. This class can be used to construct an UI editor dialog that is specifically tailored to edit contacts in a similar fashion as in the platform contacts application.

Public Member Functions
~CPbkContactEditorDlg ()
IMPORT_C TContactItemId ExecuteLD ()
IMPORT_C void HideExitCommand ()
IMPORT_C CPbkContactEditorDlg * NewL ( CPbkContactEngine &, CPbkContactItem &, TBool , TInt , TBool )
IMPORT_C void ResetWhenDestroyed ( CPbkContactEditorDlg **)
IMPORT_C void SetExitCallback (MPbkEditorOkToExitCallback *)
IMPORT_C void SetExitCommandId ( TInt )
IMPORT_C void SetHelpContext ( TCoeHelpContext )
Protected Member Functions
CPbkContactEditorDlg ( CPbkContactEngine &, CPbkContactItem &, TInt )
void BaseConstructL ( TBool , TBool )
TBool CheckForDuplicateEntryL ()
void CloseAllPopups ()
void ConstructContextMenuL ()
void ConstructNaviPaneL ()
TBool ContactAlreadyExistsL ()
TBool DuplicateNameMatchL ( CContactIdArray *)
TBool IsNewContact ()
void ReloadThumbnailL ()
void StoreTitlePaneTextL ()
void UpdateTitlePaneL ()
void WriteContactToDbL ()
Private Member Functions
void CmdAddItemL ()
void CmdDeleteItemL ()
void CmdDoneL ()
void CmdEditItemLabelL ()
void CmdFetchThumbnailL ()
void CmdRemoveThumbnailL ()
void CmdSaveL ()
void DynInitMenuPaneL ( TInt , CEikMenuPane *)
void GetHelpContext ( TCoeHelpContext &)
void HandleControlStateChangeL ( TInt )
TKeyResponse OfferKeyEventL (const TKeyEvent &, TEventCode )
TBool OkToExitL ( TInt )
void PostLayoutDynInitL ()
void PreLayoutDynInitL ()
void ProcessCommandL ( TInt )
void SetInitialCurrentLine ()
Inherited Functions
CAknControl::CAknControl()
CAknControl::~CAknControl()
CAknDialog::CAknDialog()
CAknDialog::CreateMenuBarL(TInt)
CAknDialog::DisplayMenuL()
CAknDialog::Draw(const TRect &)const
CAknDialog::ExecuteLD(TInt)
CAknDialog::FocusChanged(TDrawNow)
CAknDialog::HideMenu()
CAknDialog::MenuShowing()const
CAknDialog::MopSupplyObject(TTypeUid)
CAknDialog::PrepareLC(TInt)
CAknDialog::RunLD()
CAknDialog::SetEmphasis(CCoeControl *,TBool)
CAknDialog::SizeChanged()
CAknDialog::~CAknDialog()
CAknForm::AddItemL()
CAknForm::CAknForm()
CAknForm::ConstructL(TInt)
CAknForm::DeleteCurrentItemL()
CAknForm::Deleting()const
CAknForm::DoNotSaveFormDataL()
CAknForm::EditCurrentLabelL()
CAknForm::HandlePointerEventL(const TPointerEvent &)
CAknForm::HandleResourceChange(TInt)
CAknForm::PrepareForFocusTransitionL()
CAknForm::QuerySaveChangesL()
CAknForm::SaveFormDataL()
CAknForm::SetChangesPending(TBool)
CAknForm::SetFormFlag(TFlags,TBool)
CAknForm::UnsavedEdit()const
CAknForm::~CAknForm()
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CCoeControl::AccumulatedZoom()const
CCoeControl::ActivateGc()const
CCoeControl::ActivateL()
CCoeControl::BackedUpWindow()const
CCoeControl::Background()const
CCoeControl::CCoeControl()
CCoeControl::CCoeControl(CCoeEnv *)
CCoeControl::CCoeControl(const CCoeControl &)
CCoeControl::CapturesPointer()const
CCoeControl::ClaimPointerGrab(TBool)
CCoeControl::ClaimPointerGrab(TInt,TBool)
CCoeControl::CloseWindow()
CCoeControl::ComponentArrayExists()const
CCoeControl::Components()
CCoeControl::Components()const
CCoeControl::ControlContext()const
CCoeControl::ControlEnv()const
CCoeControl::CopyControlContextFrom(const CCoeControl *)
CCoeControl::CreateBackedUpWindowL(RWindowTreeNode &)
CCoeControl::CreateBackedUpWindowL(RWindowTreeNode &,TDisplayMode)
CCoeControl::CreateWindowL()
CCoeControl::CreateWindowL(RWindowGroup *)
CCoeControl::CreateWindowL(RWindowTreeNode &)
CCoeControl::CreateWindowL(const CCoeControl *)
CCoeControl::CustomGc()const
CCoeControl::DeactivateGc()const
CCoeControl::DrawBackground(const TRect &)const
CCoeControl::DrawDeferred()const
CCoeControl::DrawForeground(const TRect &)const
CCoeControl::DrawNow()const
CCoeControl::DrawNow(const TRect &)const
CCoeControl::DrawableWindow()const
CCoeControl::EnableDragEvents()
CCoeControl::EnableReportControlStateChange(TBool)
CCoeControl::EnableWindowTransparency()
CCoeControl::FindBackground()const
CCoeControl::FindFontProvider()const
CCoeControl::GetColor(TInt,TRgb &)const
CCoeControl::GetGc()const
CCoeControl::GrabbingComponent()const
CCoeControl::GrabbingComponent(TInt)const
CCoeControl::HandleComponentControlsResourceChange(TInt)
CCoeControl::HandleControlArrayEventL(CCoeControlArray::TEvent,const CCoeControlArray *,CCoeControl *,TInt)
CCoeControl::HandlePointerBufferReadyL()
CCoeControl::HandleRedrawEvent(const TRect &)const
CCoeControl::HitTest()const
CCoeControl::IgnoreEventsUntilNextPointerUp()
CCoeControl::Index(const CCoeControl *)const
CCoeControl::InitComponentArrayL()
CCoeControl::IsActivated()const
CCoeControl::IsBackedUp()const
CCoeControl::IsBeingDestroyed()const
CCoeControl::IsBlank()const
CCoeControl::IsDimmed()const
CCoeControl::IsFocused()const
CCoeControl::IsNonFocusing()const
CCoeControl::IsReadyToDraw()const
CCoeControl::IsVisible()const
CCoeControl::LayoutManager()const
CCoeControl::MaximumWidth()const
CCoeControl::NotifyFontChange(const CCoeFontProvider *)
CCoeControl::Observer()const
CCoeControl::OverrideColorL(TInt,TRgb)
CCoeControl::OwnsWindow()const
CCoeControl::Parent()
CCoeControl::Parent()const
CCoeControl::Position()const
CCoeControl::PositionChanged()
CCoeControl::PositionRelativeToScreen()const
CCoeControl::PrepareForFocusGainL()
CCoeControl::PrepareForFocusLossL()
CCoeControl::ProcessPointerBufferReadyL()
CCoeControl::ProcessPointerEventL(const TPointerEvent &)
CCoeControl::Rect()const
CCoeControl::RecursivelyMergeInputCapabilities(TCoeInputCapabilities &)const
CCoeControl::RecursivelyMergedInputCapabilities()const
CCoeControl::RefetchPixelMappingL()
CCoeControl::RemoveFromParent()
CCoeControl::ReportEventL(MCoeControlObserver::TCoeEvent)
CCoeControl::RequestRelayout(const CCoeControl *)
CCoeControl::ResetGc()const
CCoeControl::ScreenFont(const TCoeFont &)const
CCoeControl::SetAllowStrayPointers()
CCoeControl::SetBackground(const MCoeControlBackground *)
CCoeControl::SetBlank()
CCoeControl::SetCanDrawOutsideRect()
CCoeControl::SetComponentsToInheritVisibility(TBool)
CCoeControl::SetContainerWindowL(RBackedUpWindow &)
CCoeControl::SetContainerWindowL(RWindow &)
CCoeControl::SetContainerWindowL(const CCoeControl &)
CCoeControl::SetControlContext(MCoeControlContext *)
CCoeControl::SetCornerAndSize(TGulAlignment,const TSize &)
CCoeControl::SetCustomGc(CWindowGc *)
CCoeControl::SetDimmed(TBool)
CCoeControl::SetExtent(const TPoint &,const TSize &)
CCoeControl::SetExtentToWholeScreen()
CCoeControl::SetFocus(TBool,TDrawNow)
CCoeControl::SetFocusing(TBool)
CCoeControl::SetFontProviderL(const CCoeFontProvider &)
CCoeControl::SetGc(CWindowGc *)const
CCoeControl::SetGloballyCapturing(TBool)
CCoeControl::SetHitTest(const MCoeControlHitTest *)
CCoeControl::SetLayoutManagerL(MCoeLayoutManager *)
CCoeControl::SetMaximumWidth(TInt)
CCoeControl::SetMopParent(MObjectProvider *)
CCoeControl::SetNeighbor(CCoeControl *)
CCoeControl::SetNonFocusing()
CCoeControl::SetObserver(MCoeControlObserver *)
CCoeControl::SetParent(CCoeControl *)
CCoeControl::SetPointerCapture(TBool)
CCoeControl::SetPosition(const TPoint &)
CCoeControl::SetRect(const TRect &)
CCoeControl::SetSize(const TSize &)
CCoeControl::SetSizeWithoutNotification(const TSize &)
CCoeControl::SetTextBaselineSpacing(TInt)
CCoeControl::SetUniqueHandle(TInt)
CCoeControl::SetZoomFactorL(TInt,TZoomType)
CCoeControl::Size()const
CCoeControl::SystemGc()const
CCoeControl::TextBaselineOffset(const TSize &)const
CCoeControl::TextDrawer(TInt)const
CCoeControl::UniqueHandle()const
CCoeControl::Window()const
CCoeControl::WriteInternalStateNowL(RWriteStream &)const
CCoeControl::ZoomWithType()const
CCoeControl::operator=(const CCoeControl &)
CCoeControl::~CCoeControl()
CEikBorderedControl::Border()const
CEikBorderedControl::CEikBorderedControl()
CEikBorderedControl::CEikBorderedControl(const TGulBorder &)
CEikBorderedControl::HasBorder()const
CEikBorderedControl::SetAdjacent(TInt)
CEikBorderedControl::SetBorder(TGulBorder::TBorderType)
CEikBorderedControl::SetBorder(TInt)
CEikDialog::ActivateFirstPageL()const
CEikDialog::ActivePageId()const
CEikDialog::ActivePageIndex()const
CEikDialog::AddAutoDateEditorL(const TDesC &,TInt,const TTime &,const TTime &,TBool,TTime *)
CEikDialog::AddAutoDurationEditorL(const TDesC &,TInt,const TTimeIntervalSeconds &,const TTimeIntervalSeconds &,TBool,TTimeIntervalSeconds *)
CEikDialog::AddAutoFixedPointEditorL(const TDesC &,TInt,TInt,TInt,TInt *,TInt)
CEikDialog::AddAutoFloatEditorL(const TDesC &,TInt,const TReal &,const TReal &,TReal *)
CEikDialog::AddAutoGlobalTextEditorL(const TDesC &,TInt,TInt,TInt,TInt,TInt,CGlobalText *,TInt,TInt)
CEikDialog::AddAutoNumberEditorL(const TDesC &,TInt,TInt,TInt,TInt *)
CEikDialog::AddAutoRangeEditorL(const TDesC &,TInt,TInt,TInt,HBufC *,SEikRange *)
CEikDialog::AddAutoRichTextEditorL(const TDesC &,TInt,TInt,TInt,TInt,TInt,CGlobalText *,TInt,TInt)
CEikDialog::AddAutoSecretEditorL(const TDesC &,TInt,TDes *)
CEikDialog::AddAutoTextEditorL(const TDesC &,TInt,TInt,TInt,TInt,TDes *)
CEikDialog::AddAutoTimeAndDateEditorL(const TDesC &,TInt,const TTime &,const TTime &,TBool,TBool,HBufC *,TTime *)
CEikDialog::AddAutoTimeEditorL(const TDesC &,TInt,const TTime &,const TTime &,TBool,TTime *)
CEikDialog::AddAutoTimeOffsetEditorL(const TDesC &,TInt,const TTimeIntervalSeconds &,const TTimeIntervalSeconds &,TBool,TTimeIntervalSeconds *)
CEikDialog::AdjustAllIdsOnPage(TInt,TInt)
CEikDialog::BorderStyle()
CEikDialog::ButtonCommandObserver()const
CEikDialog::ButtonGroupContainer()const
CEikDialog::CEikDialog()
CEikDialog::ComponentControl(TInt)const
CEikDialog::ConstructAutoDialogLC(TInt,TInt)
CEikDialog::ConstructSleepingAlertDialogL(TInt)
CEikDialog::ConstructSleepingDialogL(TInt)
CEikDialog::Control(TInt)const
CEikDialog::ControlCaption(TInt)const
CEikDialog::ControlOrNull(TInt)const
CEikDialog::ControlsOnPage(RArray< CEikCaptionedControl * > &,TInt)const
CEikDialog::ConvertCustomControlTypeToBaseControlType(TInt)const
CEikDialog::CountComponentControls()const
CEikDialog::CreateCustomControlL(TInt)
CEikDialog::CreateLineByTypeL(const TDesC &,TInt,TInt,TAny *)
CEikDialog::CreateLineByTypeL(const TDesC &,TInt,TInt,TInt,TAny *)
CEikDialog::CurrentLine()const
CEikDialog::DeclareAutoDateEditor(TInt,TTime *)
CEikDialog::DeclareAutoDurationEditor(TInt,TTimeIntervalSeconds *)
CEikDialog::DeclareAutoFixedPointEditor(TInt,TInt *)
CEikDialog::DeclareAutoNumberEditor(TInt,TInt *)
CEikDialog::DeclareAutoRangeEditor(TInt,SEikRange *)
CEikDialog::DeclareAutoSecretEditor(TInt,TDes *)
CEikDialog::DeclareAutoTextEditorL(TInt,TDes *)
CEikDialog::DeclareAutoTimeAndDateEditor(TInt,TTime *)
CEikDialog::DeclareAutoTimeEditor(TInt,TTime *)
CEikDialog::DeclareAutoTimeOffsetEditor(TInt,TTimeIntervalSeconds *)
CEikDialog::DeclareItemAuto(TInt,TInt,TAny *)
CEikDialog::DeleteLine(TInt,TBool)
CEikDialog::DialogFlags()
CEikDialog::DurationEditorValue(TInt)const
CEikDialog::ExitSleepingDialog()
CEikDialog::Extension()const
CEikDialog::FindLineIndex(const CCoeControl &)const
CEikDialog::FixedPointEditorDecimal(TInt)const
CEikDialog::FixedPointEditorValue(TInt)const
CEikDialog::FloatEditorValue(TInt)const
CEikDialog::FloatingPointEditorValue(TInt)const
CEikDialog::FormFlagsFromActivePage()
CEikDialog::GetAutoValuesFromPage(CEikCapCArray *)
CEikDialog::GetColorUseListL(CArrayFix< TCoeColorUse > &)const
CEikDialog::GetCustomAutoValue(TAny *,TInt,const CCoeControl *)
CEikDialog::GetEdwinText(TDes &,TInt)const
CEikDialog::GetFileName(TFileName *,TInt)const
CEikDialog::GetFirstLineOnFirstPageOrNull()
CEikDialog::GetLabelText(TDes &,TInt)const
CEikDialog::GetLineByLineAndPageIndex(TInt,TInt)const
CEikDialog::GetNumberOfLinesOnPage(TInt)const
CEikDialog::GetNumberOfPages()const
CEikDialog::GetSecretEditorText(TDes &,TInt)const
CEikDialog::GetTextEditorText(CGlobalText *&,TInt)
CEikDialog::HandleControlEventL(CCoeControl *,TCoeEvent)
CEikDialog::HandleDialogPageEventL(TInt)
CEikDialog::HandleInteractionRefused(TInt)
CEikDialog::IdOfFocusControl()const
CEikDialog::InputCapabilities()const
CEikDialog::InsertLineL(TInt,TInt,TInt)
CEikDialog::IsEditable()const
CEikDialog::Layout()
CEikDialog::Line(TInt)const
CEikDialog::LineChangedL(TInt)
CEikDialog::ListBoxCurrentItem(TInt)const
CEikDialog::MakeLineVisible(TInt,TBool)
CEikDialog::MakePanelButtonVisible(TInt,TBool)
CEikDialog::MakeVisible(TBool)
CEikDialog::MakeWholeLineVisible(TInt,TBool)
CEikDialog::MappedCommandId(TInt)
CEikDialog::NumberEditorValue(TInt)const
CEikDialog::PageChangedL(TInt)
CEikDialog::PreferredSize(const TSize &)const
CEikDialog::PrepareContext(CWindowGc &)const
CEikDialog::PublishDialogL(TInt,TUid)
CEikDialog::RangeEditorValue(TInt)const
CEikDialog::ReadResourceLC(TInt)
CEikDialog::RegisterDialgWithPageSelector()
CEikDialog::ResetLineMinimumSizes()
CEikDialog::ResetSecretEditor(TInt)
CEikDialog::RotateFocusByL(TInt)
CEikDialog::RouseSleepingDialog()
CEikDialog::SetControlCaptionL(TInt,TInt)
CEikDialog::SetControlCaptionL(TInt,const TDesC &)
CEikDialog::SetDurationEditorMinAndMax(TInt,const TTimeIntervalSeconds &,const TTimeIntervalSeconds &)
CEikDialog::SetDurationEditorValue(TInt,const TTimeIntervalSeconds &)
CEikDialog::SetEditableL(TBool)
CEikDialog::SetEdwinTextL(TInt,const TDesC *)
CEikDialog::SetFileNameL(TInt,const TDesC *)
CEikDialog::SetFixedPointEditorDecimal(TInt,TInt)
CEikDialog::SetFixedPointEditorValueL(TInt,TInt)
CEikDialog::SetFloatEditorMinAndMax(TInt,TInt,TInt)
CEikDialog::SetFloatEditorValueL(TInt,TReal)
CEikDialog::SetFloatingPointEditorValueL(TInt,const TReal *)
CEikDialog::SetLabelL(TInt,TInt)
CEikDialog::SetLabelL(TInt,const TDesC &)
CEikDialog::SetLabelReserveLengthL(TInt,TInt)
CEikDialog::SetLineDimmedNow(TInt,TBool)
CEikDialog::SetLineNonFocusing(TInt)
CEikDialog::SetListBoxCurrentItem(TInt,TInt)
CEikDialog::SetMediatorObserver(MAknDialogMediatorObserver *)
CEikDialog::SetMultilineQuery(TBool)
CEikDialog::SetNumberEditorMinAndMax(TInt,TInt,TInt)
CEikDialog::SetNumberEditorValue(TInt,TInt)
CEikDialog::SetPageDensePacking(TInt,TBool)
CEikDialog::SetPageDimmedNow(TInt,TBool)
CEikDialog::SetRangeEditorMinAndMax(TInt,TInt,TInt)
CEikDialog::SetRangeEditorValue(TInt,const SEikRange &)
CEikDialog::SetSizeAndPosition(const TSize &)
CEikDialog::SetTTimeEditorMinAndMax(TInt,const TTime &,const TTime &)
CEikDialog::SetTTimeEditorValue(TInt,const TTime &)
CEikDialog::SetTextEditorTextL(TInt,const CGlobalText *)
CEikDialog::SetTimeOffsetEditorMinAndMax(TInt,const TTimeIntervalSeconds &,const TTimeIntervalSeconds &)
CEikDialog::SetTimeOffsetEditorValue(TInt,const TTimeIntervalSeconds &)
CEikDialog::SetTitleL(TInt)
CEikDialog::SetTitleL(const TDesC &)
CEikDialog::SlideDialog()
CEikDialog::SwapButtonGroupContainer(CEikButtonGroupContainer *)
CEikDialog::SwitchLineLatency(TInt,TInt)
CEikDialog::TTimeEditorValue(TInt)const
CEikDialog::TimeOffsetEditorValue(TInt)const
CEikDialog::Title()const
CEikDialog::TryChangeFocusToL(TInt)
CEikDialog::TryExitL(TInt)
CEikDialog::UpdatePageL(TBool)
CEikDialog::WriteInternalStateL(RWriteStream &)const
CEikDialog::~CEikDialog()
Protected Member Enumerations
enum TStateFlag { EHideExit , EEscKeyReceived , EUnderDestruction }
Inherited Enumerations
CAknForm:TFlags
CCoeControl:TZoomType
CEikDialog:@117
Protected Attributes
CPbkContactItem & iContactItem
CPbkContactEditorFieldArray * iFieldManager
Private Attributes
CEikMenuBar * iContextMenuBar
CPbkContextPaneIcon * iContextPaneIcon
MPbkContactEditorStrategy * iEditorStrategy
CPbkContactEngine & iEngine
MPbkEditorOkToExitCallback * iExitCallback
TInt iExitCommandId
CExtension * iExtension
TInt iFocusIndex
TCoeHelpContext iHelpContext
CAknNavigationControlContainer * iNaviContainer
TContactItemId * iSavedContactPtr
CPbkContactEditorDlg ** iSelfPtr
TBitFlags iStateFlags
HBufC * iStoredTitlePaneText
CPbkThumbnailCmd * iThumbnailCmd
CPbkThumbnailPopup * iThumbnailHandler
CAknTitlePane * iTitlePane
Inherited Attributes
CAknDialog::iMenuBar
CCoeControl::iCoeEnv
CCoeControl::iContext
CCoeControl::iPosition
CCoeControl::iSize
CEikBorderedControl::iBorder

Constructor & Destructor Documentation

CPbkContactEditorDlg(CPbkContactEngine &, CPbkContactItem &, TInt)

CPbkContactEditorDlg ( CPbkContactEngine & aEngine,
CPbkContactItem & aContactItem,
TInt aFocusIndex
) [protected]

Parameters

CPbkContactEngine & aEngine
CPbkContactItem & aContactItem
TInt aFocusIndex

~CPbkContactEditorDlg()

~CPbkContactEditorDlg ( )

Destructor.

Member Functions Documentation

BaseConstructL(TBool, TBool)

void BaseConstructL ( TBool aIsNewContact,
TBool aEdited
) [protected]

Parameters

TBool aIsNewContact
TBool aEdited

CheckForDuplicateEntryL()

TBool CheckForDuplicateEntryL ( ) [protected]

CloseAllPopups()

void CloseAllPopups ( ) [protected]

CmdAddItemL()

void CmdAddItemL ( ) [private]

CmdDeleteItemL()

void CmdDeleteItemL ( ) [private]

CmdDoneL()

void CmdDoneL ( ) [private]

CmdEditItemLabelL()

void CmdEditItemLabelL ( ) [private]

CmdFetchThumbnailL()

void CmdFetchThumbnailL ( ) [private]

CmdRemoveThumbnailL()

void CmdRemoveThumbnailL ( ) [private]

CmdSaveL()

void CmdSaveL ( ) [private]

ConstructContextMenuL()

void ConstructContextMenuL ( ) [protected]

ConstructNaviPaneL()

void ConstructNaviPaneL ( ) [protected]

ContactAlreadyExistsL()

TBool ContactAlreadyExistsL ( ) [protected]

DuplicateNameMatchL(CContactIdArray *)

TBool DuplicateNameMatchL ( CContactIdArray * aIdArray ) [protected]

Parameters

CContactIdArray * aIdArray

DynInitMenuPaneL(TInt, CEikMenuPane *)

void DynInitMenuPaneL ( TInt aResourceId,
CEikMenuPane * aMenuPane
) [private, virtual]

Function from MEikMenuObserver . The framework calls this function. It removes the unused default form options. If a leave occurs the framework generates a Symbian Leave code.

Parameters

TInt aResourceId The ID of the menu pane.
CEikMenuPane * aMenuPane The menu pane itself.

ExecuteLD()

IMPORT_C TContactItemId ExecuteLD ( )

Runs the dialog. This object is destroyed when this function returns or leaves. NOTE: Current status pane layout is replaced with the Phonebook one. Restoring the original pane is left to be the responsibility of the caller.

GetHelpContext(TCoeHelpContext &)

void GetHelpContext ( TCoeHelpContext & aContext ) const [private, virtual]

Parameters

TCoeHelpContext & aContext

HandleControlStateChangeL(TInt)

void HandleControlStateChangeL ( TInt aControlId ) [private, virtual]

Overridden, so that the form can tell if a line's state has changed. This is used to decide when to save changes. If a leave occurs the framework generates a Symbian Leave code.

Parameters

TInt aControlId

HideExitCommand()

IMPORT_C void HideExitCommand ( )

Hides the 'Exit' command from the options menu. This must be called before calling ExecuteLD.

IsNewContact()

TBool IsNewContact ( ) const [protected]

NewL(CPbkContactEngine &, CPbkContactItem &, TBool, TInt, TBool)

IMPORT_C CPbkContactEditorDlg * NewL ( CPbkContactEngine & aEngine,
CPbkContactItem & aContactItem,
TBool aIsNewContact,
TInt aFocusIndex = -1,
TBool aEdited = EFalse
) [static]

Creates an instance of an editor dialog for an aContactItem.

Parameters

CPbkContactEngine & aEngine Phonebook engine
CPbkContactItem & aContactItem Contact item to edit
TBool aIsNewContact Set to ETrue if aContactItem is a new contact (not yet in the database)
TInt aFocusIndex = -1 Optional index of field to focus initially, default behaviour is to focus the topmost field.
TBool aEdited = EFalse If ETrue sets the contact initially to the edited state. Use when some data is added to aContactItem that needs to be saved even if user edits nothing. Default behaviour is to set the contact to non-edited state.

OfferKeyEventL(const TKeyEvent &, TEventCode)

TKeyResponse OfferKeyEventL ( const TKeyEvent & aKeyEvent,
TEventCode aType
) [private, virtual]

From CCoeControl .

Handles key events.

If a control wishes to process key events, it should implement this function. The implementation must ensure that the function returns EKeyWasNotConsumed if it does not do anything in response to a key event, otherwise, other controls or dialogs may be prevented from receiving the key event. If it is able to process the event it should return EKeyWasConsumed .

When a key event occurs, the control framework calls this function for each control on the control stack, until one of them can process the key event (and returns EKeyWasConsumed ).

Each keyboard key press results in three separate events: EEventKeyDown , EEventKey , and EEventKeyUp , in that order.

To receive key events, which can be processed by this function, the application should call CCoeAppUi::AddToStackL() to add the control to the stack. This only applies, however, to controls which are not components of a compound control. Compound controls should pass key events to their components as necessary: the components themselves do not go on the stack.

Parameters

const TKeyEvent & aKeyEvent The key event.
TEventCode aType The type of key event: EEventKey, EEventKeyUp or EEventKeyDown.

OkToExitL(TInt)

TBool OkToExitL ( TInt aButtonId ) [private, virtual]

Function from CEikDialog . Called by framework when the softkey is pressed. Use this to pop up the options menu or close the dialog. Will call c@ SaveFormDataL() before closing if data has been edited. Will NOT permit exit if attempt to save data fails. If a leave occurs the framework generates a Symbian Leave code.

Parameters

TInt aButtonId Translates the button presses into commands ID.

PostLayoutDynInitL()

void PostLayoutDynInitL ( ) [private, virtual]

Function from CEikdialog . This function is called by the EIKON dialog framework just before the dialog is activated, after it has called PreLayoutDynInitL() and the dialog has been sized. If a leave occurs the framework generates a Symbian Leave code.

PreLayoutDynInitL()

void PreLayoutDynInitL ( ) [private, virtual]

Initializes the dialog's controls before the dialog is sized and layed out. Empty by default.

ProcessCommandL(TInt)

void ProcessCommandL ( TInt aCommandId ) [private, virtual]

Function from MEikCommandObserver . Handle user menu commands. If a leave occurs the framework generates a Symbian Leave code.

Parameters

TInt aCommandId The command identifier to process.

ReloadThumbnailL()

void ReloadThumbnailL ( ) [protected]

ResetWhenDestroyed(CPbkContactEditorDlg **)

IMPORT_C void ResetWhenDestroyed ( CPbkContactEditorDlg ** aSelfPtr )

Sets aSelfPtr to NULL when this dialog is destroyed. Precondition: !aSelfPtr || *aSelfPtr==this

Parameters

CPbkContactEditorDlg ** aSelfPtr

SetExitCallback(MPbkEditorOkToExitCallback *)

IMPORT_C void SetExitCallback ( MPbkEditorOkToExitCallback * aCallback )

Sets exit callback. The callback is called before exit happens. If the callback returns EFalse, the exit process is cancelled.

Parameters

MPbkEditorOkToExitCallback * aCallback Exit callback

SetExitCommandId(TInt)

IMPORT_C void SetExitCommandId ( TInt aCommandId )

Sets the exit command in the options menu to forward aCommandId to the application framework. Allows clients to process and capture the exit command in the application exit situation.

Parameters

TInt aCommandId Command id to send to the framework when the exit occurs.

SetHelpContext(TCoeHelpContext)

IMPORT_C void SetHelpContext ( TCoeHelpContext aContext )

Sets help context. There are many applications using contact editor and they may have an own help topic to be shown, when editor's help is launched. With this command it's possible to define the used help content. If not called after, uses Phonebook's own help context as default.

Parameters

TCoeHelpContext aContext Help context to use

SetInitialCurrentLine()

void SetInitialCurrentLine ( ) [private, virtual]

This is added, so that anyone adding lines either in PreLayoutDynInit() or SetInitialCurrentLine() should have the lines in a consistent state.

StoreTitlePaneTextL()

void StoreTitlePaneTextL ( ) [protected]

UpdateTitlePaneL()

void UpdateTitlePaneL ( ) [protected]

WriteContactToDbL()

void WriteContactToDbL ( ) [protected]

Member Enumerations Documentation

Enum TStateFlag

Enumerators

EHideExit
EEscKeyReceived
EUnderDestruction

Member Data Documentation

CPbkContactItem & iContactItem

CPbkContactItem & iContactItem [protected]

CEikMenuBar * iContextMenuBar

CEikMenuBar * iContextMenuBar [private]

CPbkContextPaneIcon * iContextPaneIcon

CPbkContextPaneIcon * iContextPaneIcon [private]

MPbkContactEditorStrategy * iEditorStrategy

MPbkContactEditorStrategy * iEditorStrategy [private]

CPbkContactEngine & iEngine

CPbkContactEngine & iEngine [private]

MPbkEditorOkToExitCallback * iExitCallback

MPbkEditorOkToExitCallback * iExitCallback [private]

TInt iExitCommandId

TInt iExitCommandId [private]

CExtension * iExtension

CExtension * iExtension [private]

CPbkContactEditorFieldArray * iFieldManager

CPbkContactEditorFieldArray * iFieldManager [protected]

TInt iFocusIndex

TInt iFocusIndex [private]

TCoeHelpContext iHelpContext

TCoeHelpContext iHelpContext [private]

CAknNavigationControlContainer * iNaviContainer

CAknNavigationControlContainer * iNaviContainer [private]

TContactItemId * iSavedContactPtr

TContactItemId * iSavedContactPtr [private]

CPbkContactEditorDlg ** iSelfPtr

CPbkContactEditorDlg ** iSelfPtr [private]

Ref: self pointer for easier leave handling !iSelfPtr || *iSelfPtr==this

TBitFlags iStateFlags

TBitFlags iStateFlags [private]

HBufC * iStoredTitlePaneText

HBufC * iStoredTitlePaneText [private]

CPbkThumbnailCmd * iThumbnailCmd

CPbkThumbnailCmd * iThumbnailCmd [private]

CPbkThumbnailPopup * iThumbnailHandler

CPbkThumbnailPopup * iThumbnailHandler [private]

CAknTitlePane * iTitlePane

CAknTitlePane * iTitlePane [private]