--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/browserutilities/browserdialogsprovider/Src/BrowserSelectElementModel.cpp Mon Mar 30 12:54:55 2009 +0300
@@ -0,0 +1,115 @@
+/*
+* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "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:
+*
+*
+*/
+
+
+// INCLUDE FILES
+#include "BrowserSelectElementModel.h"
+#include "BrowserSelectElementListBox.h"
+
+// ================= MEMBER FUNCTIONS =========================================
+
+// ----------------------------------------------------------------------------
+// CBrowserSelectElementModel::CBrowserSelectElementModel
+// ----------------------------------------------------------------------------
+//
+CBrowserSelectElementModel::CBrowserSelectElementModel(
+ const CArrayFix<TBrCtlSelectOptionData>& aOptions )
+ : iOptions ( aOptions )
+ {
+ }
+
+// ----------------------------------------------------------------------------
+// CBrowserSelectElementModel::ConstructL
+// ----------------------------------------------------------------------------
+//
+void CBrowserSelectElementModel::ConstructL()
+ {
+ iFilterTexts = new ( ELeave ) TBrCtlSelectElementFilterTextArray(iOptions);
+ iItemTexts = new ( ELeave ) TBrCtlSelectElementItemTextArray( iOptions );
+ }
+
+// ----------------------------------------------------------------------------
+// CBrowserSelectElementModel::NewLC
+// ----------------------------------------------------------------------------
+//
+CBrowserSelectElementModel* CBrowserSelectElementModel::NewLC(
+ const CArrayFix<TBrCtlSelectOptionData>& aOptions )
+ {
+ CBrowserSelectElementModel* result =
+ new ( ELeave ) CBrowserSelectElementModel( aOptions );
+ CleanupStack::PushL( result );
+ result->ConstructL();
+ return result;
+ }
+
+// ----------------------------------------------------------------------------
+// CBrowserSelectElementModel::NewL
+// ----------------------------------------------------------------------------
+//
+CBrowserSelectElementModel* CBrowserSelectElementModel::NewL(
+ const CArrayFix<TBrCtlSelectOptionData>& aOptions )
+ {
+ CBrowserSelectElementModel* result = NewLC( aOptions );
+ CleanupStack::Pop();
+ return result;
+ }
+
+// ----------------------------------------------------------------------------
+// CBrowserSelectElementModel::~CBrowserSelectElementModel
+// ----------------------------------------------------------------------------
+//
+CBrowserSelectElementModel::~CBrowserSelectElementModel()
+ {
+ delete iFilterTexts;
+ delete iItemTexts;
+ }
+
+
+// ----------------------------------------------------------------------------
+// CBrowserSelectElementModel::SetItemArray
+// ----------------------------------------------------------------------------
+//
+void CBrowserSelectElementModel::SetItemArray()
+ {
+ // Need to set them after the listbox has been constructed; otherwise
+ // listbox construction will reset the item text array to NULL.
+ SetItemTextArray( iItemTexts );
+ SetOwnershipType( ELbmDoesNotOwnItemArray );
+ }
+
+// ----------------------------------------------------------------------------
+// CBrowserSelectElementModel::MatchableTextArray() const
+// ----------------------------------------------------------------------------
+//
+const MDesCArray* CBrowserSelectElementModel::MatchableTextArray() const
+
+ {
+ return iFilterTexts;
+ }
+
+// ----------------------------------------------------------------------------
+// CBrowserSelectElementModel::MdcaCount
+// ----------------------------------------------------------------------------
+//
+TInt TBrCtlSelectElementItemTextArray::MdcaCount() const
+ {
+ return iOptions.Count();
+ }
+
+
+// End of File