--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/wvuing/wvuiave/AppSrc/CAViewCreator.cpp Thu Dec 17 08:41:52 2009 +0200
@@ -0,0 +1,120 @@
+/*
+* Copyright (c) 2006 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: Creator class for views.
+*
+*/
+
+
+// INCLUDES
+#include "CAViewCreator.h"
+#include "CCARecordedChatsListView.h"
+#include "CCARecordedChatsView.h"
+#include "CAExternalInterface.h"
+#include "CCAConversationsView.h"
+#include "CCASettingsView.h"
+#include "CCASearchView.h"
+#include "CCARefreshView.h"
+#include "CCAChatView.h"
+#include "CCASingleListView.h"
+#include "ccainvitationview.h"
+
+#include <ChatNG.rsg>
+
+// -----------------------------------------------------------------------------
+// CAViewCreator::CreateMainViewL
+// Create all needed views
+// -----------------------------------------------------------------------------
+//
+void CAViewCreator::CreateMainViewL( CCAAppUi& aAppUi )
+ {
+ CCASingleListView* view4 = new ( ELeave ) CCASingleListView;
+ CleanupStack::PushL( view4 );
+ view4->ConstructL( R_CHATCLIENT_FRIENDSLIST_VIEW, KUidFriendsListView );
+ aAppUi.AddViewL( view4 ); // transfer ownership to CAknViewAppUi
+ CleanupStack::Pop( view4 );
+ TVwsViewId aTempId = view4->ViewId();
+ view4->ActivateViewL( aTempId );
+ aAppUi.SetDefaultViewL( *view4 );
+ }
+
+// -----------------------------------------------------------------------------
+// CAViewCreator::CreateOtherViewsL
+// Create all needed views
+// -----------------------------------------------------------------------------
+//
+void CAViewCreator::CreateOtherViewsL( CCAAppUi& aAppUi )
+ {
+ // Create chat-view
+ CCAChatView* view2 = new ( ELeave ) CCAChatView;
+ CleanupStack::PushL( view2 );
+ // Chat-view has a specialized ConstructL instead of BaseConstructL
+ view2->ConstructL( R_CHATCLIENT_CHAT_VIEW, KUidChatView, aAppUi.MessageHandler() );
+ aAppUi.AddViewL( view2 ); // transfer ownership to CAknViewAppUi
+ CleanupStack::Pop( view2 );
+
+ // Create settings view
+ CCASettingsView* view6 = new ( ELeave ) CCASettingsView;
+ CleanupStack::PushL( view6 );
+ view6->ConstructL( R_CHATCLIENT_SETTINGS_VIEW, KUidSettingsView );
+ aAppUi.AddViewL( view6 );
+ CleanupStack::Pop( view6 );
+
+
+ // Create search view
+ CCASearchView* view7 = new ( ELeave ) CCASearchView;
+ CleanupStack::PushL( view7 );
+ view7->BaseConstructL( R_CHATCLIENT_SEARCH_VIEW, KUidSearchView );
+ aAppUi.AddViewL( view7 );
+ CleanupStack::Pop( view7 );
+
+ // Conversations view
+ CCAConversationsView* view9 = new ( ELeave ) CCAConversationsView;
+ CleanupStack::PushL( view9 );
+ view9->ConstructL( R_CHATCLIENT_P2P_VIEW, KUidConversationsView, aAppUi.MessageHandler() );
+ aAppUi.AddViewL( view9 );
+ CleanupStack::Pop( view9 );
+
+ // Create recorded chats list-view
+ CCARecordedChatsListView* view10 = new ( ELeave ) CCARecordedChatsListView;
+ CleanupStack::PushL( view10 );
+ // Chatlist-view has a specialized ConstructL instead of BaseConstructL
+ view10->ConstructL( R_CHATCLIENT_RECORDEDCHATSLIST_VIEW , KUidRecordedChatListView );
+ aAppUi.AddViewL( view10 ); // transfer ownership to CAknViewAppUi
+ CleanupStack::Pop( view10 );
+
+ // Create recorded chats view
+ CCARecordedChatsView* view11 = new ( ELeave ) CCARecordedChatsView;
+ CleanupStack::PushL( view11 );
+ // Chatlist-view has a specialized ConstructL instead of BaseConstructL
+ view11->ConstructL( R_CHATCLIENT_RECORDEDCHATS_VIEW , KUidRecordedChatView );
+ aAppUi.AddViewL( view11 ); // transfer ownership to CAknViewAppUi
+ CleanupStack::Pop( view11 );
+ view11->SetRecordedChatProvider( view10->RecordedChatArrayProvider() );
+
+ // View for branding refresh functionality
+ CCARefreshView* view12 = new ( ELeave ) CCARefreshView( aAppUi.RefreshWaitFlag() );
+ CleanupStack::PushL( view12 );
+ view12->BaseConstructL( R_CHATCLIENT_REFRESHVIEW, KUidRefreshView );
+ aAppUi.AddViewL( view12 ); // transfer ownership to CAknViewAppUi
+ CleanupStack::Pop( view12 );
+
+ // View for Invitation
+ CCAInvitationView* view14 = new ( ELeave ) CCAInvitationView;
+ CleanupStack::PushL( view14 );
+ view14->ConstructL( R_CHATCLIENT_INVITATIONS_VIEW, KUidInvitationView );
+ aAppUi.AddViewL( view14 ); // transfer ownership to CAknViewAppUi
+ CleanupStack::Pop( view14 );
+ }
+
+// end of file