--- a/locationlandmarksrefappfors60/Src/LandmarksLmCategoriesModel.cpp Thu Aug 19 09:48:36 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,158 +0,0 @@
-/*
-* Copyright (c) 2004-2005 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:
-* Implements the CLandmarksLmCategoriesModel class
-*
-*/
-
-
-
-#include <eikenv.h>
-#include <gulicon.h>
-#include <AknIconArray.h>
-#include <avkon.mbg>
-
-#include <EPos_CPosLandmarkCategory.h>
-
-#include "LandmarksUtils.h"
-#include "LandmarksCommonData.h"
-#include "LandmarksLmCategoriesModel.h"
-#include "LandmarksApplicationEngine.h"
-
-
-_LIT(KItemFormat, "\t%S");
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// -----------------------------------------------------------------------------
-//
-CLandmarksLmCategoriesModel::CLandmarksLmCategoriesModel(
- RArray<TPosLmItemId>& aMarkedCategories)
-: iMarkedCategoryIds(aMarkedCategories)
- {
- }
-
-// -----------------------------------------------------------------------------
-// -----------------------------------------------------------------------------
-//
-void CLandmarksLmCategoriesModel::ConstructL(CLandmarksApplicationEngine& aEngine)
- {
- iCategories = aEngine.CategoriesL();
- }
-
-// -----------------------------------------------------------------------------
-// -----------------------------------------------------------------------------
-//
-CLandmarksLmCategoriesModel* CLandmarksLmCategoriesModel::NewL(
- CLandmarksApplicationEngine& aEngine,
- RArray<TPosLmItemId>& aMarkedCategories)
- {
- CLandmarksLmCategoriesModel* self = new (ELeave)
- CLandmarksLmCategoriesModel(aMarkedCategories);
- CleanupStack::PushL(self);
- self->ConstructL(aEngine);
- CleanupStack::Pop(self);
- return self;
- }
-
-// -----------------------------------------------------------------------------
-// -----------------------------------------------------------------------------
-//
-CLandmarksLmCategoriesModel::~CLandmarksLmCategoriesModel()
- {
- if (iCategories)
- {
- iCategories->ResetAndDestroy();
- delete iCategories;
- }
- }
-
-// -----------------------------------------------------------------------------
-// -----------------------------------------------------------------------------
-//
-void CLandmarksLmCategoriesModel::SelectCategoriesL(
- CArrayFixFlat<TInt>& aSelectedIndexes)
- {
- // clear current list of selected categories
- iMarkedCategoryIds.Reset();
-
- for (TInt i = 0; i < aSelectedIndexes.Count(); i++)
- {
- TInt categoryIndex = aSelectedIndexes[i];
-
- // Fetch the id of the selected item.
- __ASSERT_ALWAYS((categoryIndex >= 0) && (categoryIndex < iCategories->Count()),
- LandmarksUtils::Panic(KErrGeneral));
- TPosLmItemId selectedCategoryId = (*iCategories)[categoryIndex]->CategoryId();
-
- User::LeaveIfError(iMarkedCategoryIds.Append(selectedCategoryId));
- }
- }
-
-// -----------------------------------------------------------------------------
-// -----------------------------------------------------------------------------
-//
-CArrayFixFlat<TInt>* CLandmarksLmCategoriesModel::SelectedCategoriesL()
- {
- CArrayFixFlat<TInt>* selectedItems = new (ELeave) CArrayFixFlat<TInt>(KGranularity);
- CleanupStack::PushL(selectedItems);
-
- for (TInt i = 0; i < iCategories->Count(); i++)
- {
- TPosLmItemId categoryId = (*iCategories)[i]->CategoryId();
-
- TInt index = iMarkedCategoryIds.Find(categoryId);
- if (KErrNotFound != index)
- {
- selectedItems->AppendL(i);
- }
- }
-
- CleanupStack::Pop(selectedItems);
- return selectedItems;
- }
-
-// -----------------------------------------------------------------------------
-// -----------------------------------------------------------------------------
-//
-CDesCArray* CLandmarksLmCategoriesModel::FormattedCategoryNamesL()
- {
- // Granularity is set to be 8.
- CDesCArrayFlat* listItems = new (ELeave) CDesCArrayFlat(KGranularity);
- CleanupStack::PushL(listItems);
-
- for (TInt i = 0; i < iCategories->Count(); i++)
- {
- // Create buffer that will contain the name and mark status. 3 extra
- // chars for tab and icon index.
- const TInt KExtraChars = 3;
- TPtrC categoryName;
- User::LeaveIfError((*iCategories)[i]->GetCategoryName(categoryName));
- HBufC* formattedCategoryName = HBufC::NewLC(categoryName.Length() + KExtraChars);
-
- // format string with category
- formattedCategoryName->Des().Format(KItemFormat, &categoryName);
-
- listItems->AppendL(*formattedCategoryName);
- CleanupStack::PopAndDestroy(formattedCategoryName);
- }
-
- CleanupStack::Pop(listItems);
-
- iListItems = listItems;
- return iListItems;
- }
-
-