--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/meetingui/attendeeview/UiSrc/CAttendeeViewerDlg.cpp Tue Feb 02 10:12:19 2010 +0200
@@ -0,0 +1,233 @@
+/*
+* Copyright (c) 2004 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: Provides methods for .
+*
+*/
+
+
+
+// INCLUDE FILES
+#include "cattendeeviewerdlg.h"
+#include "cattendeedialogbase.h"
+#include "mattendeeeng.h"
+#include "cattendeedetailsdlg.h"
+#include "attendeeviewuid.h"
+#include "attendeeview.hrh"
+
+#include <attendeeview_res.rsg>
+#include <stringloader.h>
+#include <caluser.h>
+#include <csxhelp/cale.hlp.hrh>
+#include <mrcommands.hrh>
+
+// ============================ MEMBER FUNCTIONS ==============================
+CAttendeeViewerDlg* CAttendeeViewerDlg::NewL(
+ MDesCArray *aArray,
+ TInt aMenuBarResourceId,
+ TInt aOkMenuBarResourceId,
+ MAttendeeEng& aEngine,
+ TCoeHelpContext& aHelpContext,
+ MAgnEntryUiCallback& aEntryUiCallback )
+ {
+ CAttendeeViewerDlg* self = NewLC( aArray,
+ aMenuBarResourceId,
+ aOkMenuBarResourceId,
+ aEngine,
+ aHelpContext,
+ aEntryUiCallback );
+ CleanupStack::Pop(self); //self
+
+ return self;
+ }
+
+CAttendeeViewerDlg* CAttendeeViewerDlg::NewLC(
+ MDesCArray *aArray,
+ TInt aMenuBarResourceId,
+ TInt aOkMenuBarResourceId,
+ MAttendeeEng& aEngine,
+ TCoeHelpContext& aHelpContext,
+ MAgnEntryUiCallback& aEntryUiCallback )
+ {
+ CAttendeeViewerDlg* self =
+ new(ELeave)CAttendeeViewerDlg( aArray,
+ aEngine,
+ aMenuBarResourceId,
+ aOkMenuBarResourceId,
+ aHelpContext,
+ aEntryUiCallback );
+ CleanupStack::PushL( self );
+ self->ConstructL( aMenuBarResourceId );
+
+ return self;
+ }
+// ----------------------------------------------------------------------------
+// CAttendeeViewerDlg::CAttendeeViewerDlg
+// C++ default constructor can NOT contain any code, that
+// might leave.
+// ----------------------------------------------------------------------------
+//
+CAttendeeViewerDlg::CAttendeeViewerDlg(
+ MDesCArray *aArray,
+ MAttendeeEng& aEngine,
+ TInt aMenuBarResourceId,
+ TInt aOkMenuBarResourceId,
+ TCoeHelpContext& aHelpContext,
+ MAgnEntryUiCallback& aEntryUiCallback ):
+ CAttendeeDialogBase( aArray,
+ aEngine,
+ aMenuBarResourceId,
+ aOkMenuBarResourceId,
+ aEntryUiCallback ),
+ iHelpContext( aHelpContext )
+ {
+
+ }
+
+// ---------------------------------------------------------
+// CAttendeeViewerDlg::~CAttendeeViewerDlg
+// ---------------------------------------------------------
+//
+CAttendeeViewerDlg::~CAttendeeViewerDlg()
+ {
+ }
+
+// ---------------------------------------------------------
+// CAttendeeViewerDlg::DynInitMenuPaneL
+// ---------------------------------------------------------
+//
+void CAttendeeViewerDlg::DynInitMenuPaneL( TInt aResourceId,
+ CEikMenuPane* aMenuPane )
+ {
+
+ const TInt visible( ListBox()->Model()->NumberOfItems() );
+ const TInt marked( ListBox()->SelectionIndexes()->Count() );
+ switch( aResourceId )
+ {
+ case R_ATTENDEEVIEW_VIEWER_MENU:
+ {
+ if ( iEntryUiCallback.IsCommandAvailable( EMRCommandRespondAccept )
+ && marked <= 0 )
+ {
+ aMenuPane->SetItemDimmed( EAttCmdRespond, EFalse );
+ }
+ else
+ {
+ aMenuPane->SetItemDimmed( EAttCmdRespond, ETrue );
+ }
+
+ if ( marked > 0 )
+ {
+ aMenuPane->SetItemDimmed( EAttDetails, ETrue );
+ }
+ if ( visible <= 0 )
+ {
+ aMenuPane->SetItemDimmed( EAttDetails, ETrue );
+ }
+ break;
+ }
+ case R_ATTENDEEVIEW_VIEWER_CONTEXT_MENU:
+ {
+ if ( marked > 0 )
+ {
+ aMenuPane->SetItemDimmed( EAttDetails, ETrue );
+ aMenuPane->SetItemDimmed( EAttCmdRespond, ETrue );
+ aMenuPane->SetItemDimmed( EAttCmdSend, EFalse );
+ }
+ else
+ {
+ if ( iEntryUiCallback.IsCommandAvailable( EMRCommandRespondAccept ) )
+ {
+ aMenuPane->SetItemDimmed( EAttCmdRespond, EFalse );
+ }
+ else
+ {
+ aMenuPane->SetItemDimmed( EAttCmdRespond, ETrue );
+ }
+
+ aMenuPane->SetItemDimmed( EAttCmdSend, ETrue );
+ }
+ break;
+ }
+ default:
+ {
+ CAttendeeDialogBase::DynInitMenuPaneL( aResourceId, aMenuPane );
+ break;
+ }
+ }
+ }
+
+// ----------------------------------------------------
+// CAttendeeViewerDlg::MakeEmptyTextListBoxL
+// ----------------------------------------------------
+//
+void CAttendeeViewerDlg::MakeEmptyTextListBoxL()
+ {
+ HBufC* textFromResourceFile;
+ textFromResourceFile =
+ StringLoader::LoadLC( R_ATTENDEE_VIEWER_EMPTY_TEXT,
+ CEikonEnv::Static() );
+ ListBox()->View()->SetListEmptyTextL( *textFromResourceFile );
+ CleanupStack::PopAndDestroy( textFromResourceFile );
+ }
+
+// ----------------------------------------------------
+// CAttendeeDialogBase::DetailsCmdL
+// ---------------------------------------------------------
+//
+void CAttendeeViewerDlg::DetailsCmdL()
+ {
+ TInt index( ListBox()->CurrentItemIndex() );
+ if ( index >= 0 && index < ListBox()->Model()->NumberOfItems()
+ && index < iEngine.NumberOfItems())
+ {
+ CPbkContactItem* item = iEngine.PbkContactItemL( index );
+ if ( !item )
+ {
+ item = CreateContactL(
+ iEngine.At( index ).AgnAttendee()->Address() );
+ }
+ CleanupStack::PushL( item );
+
+ CAttendeeDetailsDlg* dlg = CAttendeeDetailsDlg::NewL(
+ item,
+ &iEngine.ContactEngine(),
+ iEngine.At( index ).AgnAttendee()->StatusL(),
+ EFalse );
+ dlg->RunLD();
+
+ CleanupStack::PopAndDestroy( item );
+ }
+ }
+
+// -----------------------------------------------------------------------------
+// CAttendeeDialogBase::GetHelpContext
+// -----------------------------------------------------------------------------
+//
+void CAttendeeViewerDlg::GetHelpContext( TCoeHelpContext& aContext ) const
+ {
+
+ //If help text was given in construction use it
+ if(!iHelpContext.IsNull())
+ {
+ aContext = iHelpContext;
+ }
+ else
+ {
+ //Remove comments after new cale.hlp.hrh is ready
+ //aContext.iContext = KCALE_HLP_ATTENDEE_VIEW;
+ //aContext.iMajor = TUid::Uid( KEcomDllUID );
+ }
+ }
+
+// End of File