--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/eventsui/eventsmgmtui/inc/evtmgmtuistartupview.h Tue Feb 02 00:16:03 2010 +0200
@@ -0,0 +1,304 @@
+/*
+* Copyright (c) 2008 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: View class for Events Management UI.
+*
+*/
+
+
+#ifndef C_EVTMGMTUISTARTUPVIEWAPPVIEW_H
+#define C_EVTMGMTUISTARTUPVIEWAPPVIEW_H
+
+// SYSTEM INCLUDES
+#include <aknview.h>
+#include <aknViewAppUi.h>
+#include <AknWaitNoteWrapper.h> // MAknBackgroundProcess
+
+#include "evtmgmtuiengine.h"
+#include "evtmgmtuicmdhdlr.h"
+
+
+// FORWARD DECLARATIONS
+class CEvtMgmtUiStartupContainer;
+class CEvtMgmtUiLocSettingsLauncher;
+class CEvtMgmtUiModel;
+/**
+ * Events Management UI Start-up view class.
+ *
+ * @lib evtmgmtui.exe
+ * @since S60 v5.0
+ */
+class CEvtMgmtUiStartupView : public CAknView,
+ public MEvtMgmtUiEngineObserver,
+ public MEvtMgmtUiCmdHdlr,
+ public MAknBackgroundProcess
+ {
+
+public:
+ /**
+ * Static Two phase constructor
+ *
+ * @return CEvtMgmtUiStartupView*, Pointer to the newly created object.
+ */
+ static CEvtMgmtUiStartupView* NewL();
+
+ /**
+ * C++ Destructor.
+ */
+ virtual ~CEvtMgmtUiStartupView();
+
+private://new functions
+ /**
+ * It will update view
+ */
+ void UpdateViewL();
+
+ /**
+ * It will delete event from database
+ */
+ void DeleteEventL();
+
+ /**
+ * It shows confirmation query dialog
+ */
+ TBool DisplayConfirmationQueryDlgL( const TDesC& aMsg );
+ /**
+ * Change status of the event
+ * param[in] aStatus - value to which event status should be changed
+ */
+ void ChangeEventStatusL(TEvtEventStatus aStatus);
+
+ /**
+ * Show all events with given status
+ * param[in] aStatusFilter - status filter to display events
+ */
+ void ShowEventsL( CEvtMgmtUiEngine::TEvtEventStatusFilter aStatusFilter );
+
+ /**
+ * It will handle 'show on map' command.
+ */
+ void HandleShowOnMapCommandL();
+
+ /**
+ * It will handle 'navigate to place' command.
+ */
+ void HandleNavigateToPlaceCommandL();
+
+public: // Inherited from Base classes
+ /**
+ * Inherited from CAknView
+ */
+ void DoActivateL( const TVwsViewId& aPrevViewId,
+ TUid aCustomMessageId,
+ const TDesC8& aCustomMessage );
+
+ /**
+ * Inherited from CAknView
+ */
+ void DoDeactivate();
+
+ /**
+ * Inherited from CAknView
+ */
+ TUid Id() const;
+
+ /**
+ * Inherited from CAknView
+ */
+ void HandleCommandL( TInt aCommand );
+
+ /**
+ * Inherited from CAknView
+ */
+ void DynInitMenuPaneL( TInt aResourceId,
+ CEikMenuPane* aMenuPane );
+
+ /**
+ * Inherited from MEvtMgmtUiEngineObserver
+ */
+ void NotifyEventChangeL(TInt aErrorCode, TInt aState );
+
+ /**
+ * Inherited from MEvtMgmtUiEngineObserver
+ */
+ void NotifyModelChangeL();
+
+ /**
+ * Inherited from MEvtMgmtUiCmdHdlr
+ */
+ void HandleCmdL( TEvtMgmtUiCmd aCommand );
+
+private:
+ /**
+ * Overloaded C++ Contructor.
+ */
+ CEvtMgmtUiStartupView();
+
+ /**
+ * Second phase of the two phase constructor.
+ */
+ void ConstructL();
+
+ /**
+ * Handles the visbility of the S60 Help feature.
+ *
+ * @param aMenuPane, Menu pane object on which the Help feature must
+ * be evaluated.
+ */
+ void HandleHelpFeature( CEikMenuPane& aMenuPane ) const;
+
+ /**
+ * To change the CBA
+ */
+ void SetCba( TInt aResourceId );
+
+ /**
+ * It will return the event-id of the selected item.
+ */
+ TEvtEventId EventIdOfCurrentItem();
+
+ /**
+ * It will return the event id of event.
+ */
+ TEvtEventId EventId( TInt aIndex );
+
+ /*
+ * It will return type of marked events
+ */
+ TInt MarkedEventsStatus();
+
+ /*
+ * It will start wait dialog.
+ */
+ void StartWaitDialogL();
+
+ /*
+ * Check wether map functionality can be enabled.
+ * ret ETrue if map functionality should be enabled else EFalse
+ */
+ TBool EnableMapFunctionalityL( );
+
+private: // from MAknBackgroundProcess
+ /**
+ * Called by the wait note wrapper when the note is dismissed.
+ * This is as a result of either the user cancelling the note,
+ * or the process finishing.
+ */
+ void DialogDismissedL(TInt /*aButtonId*/);
+
+ /**
+ * Called by the wait note wrapper following StepL. Unless the user has cancelled the note,
+ * if this returns EFalse, it will call StepL again, otherwise, it will call ProcessFinished.
+ * @return ETrue if processing is complete, EFalse otherwise
+ */
+ TBool IsProcessDone() const;
+
+ /**
+ * Called by the wait note wrapper if the process is complete or if the user cancelled the note.
+ * Completes the game save and resets the steps completed counter.
+ */
+ void ProcessFinished();
+
+ /**
+ * Called by the wait note wrapper if the processing is not yet complete.
+ * Completes a step in the processing, by saving part of the game to a file, and incrementing the
+ * number of steps completed. This is a synchronous method.
+ */
+ void StepL();
+
+ /**
+ * Handles error occurred in StepL
+ * @param aError error code that occurred
+ * @return translated error code. If this is != KErrNone process will be stopped.
+ */
+ TInt CycleError(TInt aError);
+
+private: // Enumerations
+ /**
+ * Enumeration to Flag the Marked Event's Status.
+ */
+ enum TMarkedEventsStatus
+ {
+ EMarkedEventsStatusActive,
+ EMarkedEventsStatusDraft,
+ EMarkedEventsStatusCompleted,
+ EMarkedEventsStatusInvalid,
+ EMarkedEventsStatusMix
+ };
+
+ /**
+ * Wait Dialog's States.
+ */
+ enum TWaitDlgState
+ {
+ EWaitDlgLaunchToDelete,
+ EWaitDlgLaunchToChangeStatus,
+ EWaitDlgInitiateProcess,
+ EWaitDlgDestroy
+ };
+
+private: // Data members
+ /**
+ * Events Management UI Start-up container.
+ * Owns.
+ */
+ CEvtMgmtUiStartupContainer* iContainer;
+
+ /**
+ * Model to perform all events (data only) manipulation
+ */
+ CEvtMgmtUiEngine* iEngine;
+
+ /*
+ * Position Settings Launcher
+ * Owns
+ */
+ CEvtMgmtUiLocSettingsLauncher* iPosSetLauncher;
+
+ /*
+ * Boolean to maintain the application launch type
+ */
+ TBool iIsEmbeddedApp;
+
+ /*
+ * Model
+ * Owns
+ */
+ CEvtMgmtUiModel* iModel;
+
+ /*
+ * List of events id to be deleted/updated
+ * Owns
+ */
+ RArray<TEvtEventId>* iEvtIdArray;
+
+ /*
+ * It is used as state-machine for wait dialog
+ */
+ TInt iWaitState;
+
+ /*
+ * It stores event status .... used for 'change event status'
+ */
+ TEvtEventStatus iEvtStatus;
+
+ /*
+ * It will determine if error note should be displayed
+ * once 'Activate' operation is completed for multiple events
+ * An error note is required when event doesnt contain mandatory fields.
+ */
+ TBool iDisplayNote;
+ };
+
+#endif // C_EVTMGMTUISTARTUPVIEWAPPVIEW_H
+