00001 // EIKTXLBM.H 00002 // 00003 // Copyright (c) 1997-1999 Symbian Ltd. All rights reserved. 00004 // 00005 00006 00007 #if !defined(__EIKTXLBM_H__) 00008 #define __EIKTXLBM_H__ 00009 00010 #if !defined(__EIKLBM_H__) 00011 #include <eiklbm.h> 00012 #endif 00013 00017 class CTextListBoxModel : public CBase, public MTextListBoxModel 00018 { 00019 public: 00023 IMPORT_C CTextListBoxModel(); 00024 00028 IMPORT_C virtual ~CTextListBoxModel(); 00029 00034 IMPORT_C virtual TInt NumberOfItems() const; 00035 00043 IMPORT_C virtual const MDesCArray* MatchableTextArray() const; 00044 00052 IMPORT_C virtual TPtrC ItemText( TInt aItemIndex ) const; 00053 00066 IMPORT_C virtual void ConstructL( MDesCArray* aItemTextArray = NULL, 00067 TListBoxModelItemArrayOwnership aOwnershipType = ELbmOwnsItemArray ); 00068 00074 IMPORT_C void SetItemTextArray( MDesCArray* aItemTextArray ); 00075 00081 IMPORT_C void SetOwnershipType( TListBoxModelItemArrayOwnership aOwnershipType ); 00082 00088 IMPORT_C MDesCArray* ItemTextArray() const; 00089 00090 protected: 00096 IMPORT_C TListBoxModelItemArrayOwnership ItemArrayOwnershipType() const; 00097 00098 private: // from MListBoxModel 00099 IMPORT_C virtual TAny* MListBoxModel_Reserved(); 00100 00101 protected: 00105 MDesCArray* iItemTextArray; 00106 00107 private: 00108 TListBoxModelItemArrayOwnership iItemArrayOwnershipType; 00109 }; 00110 00111 00112 #endif