csxhelp/HelpEngine/inc/CSXHKywdTopics.h
branchRCL_3
changeset 17 12f60d9a73b3
parent 16 0d1adf67ec1b
child 18 cbffe13eac63
equal deleted inserted replaced
16:0d1adf67ec1b 17:12f60d9a73b3
     1 /*
       
     2 * Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:  CCSXHKywdTopics class declaration
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 #ifndef INC_CSXHKYWDTOPICS_H_HEADER_INCLUDED_BC0568C5
       
    20 #define INC_CSXHKYWDTOPICS_H_HEADER_INCLUDED_BC0568C5
       
    21 
       
    22 #include "CSXHGenericTOC1.h"
       
    23 #include <apadef.h>
       
    24 
       
    25 class CCSXHHelpDataBase;
       
    26 class CCSXHHtmlTOC1;
       
    27 class CCSXHKywdTOC1;
       
    28 
       
    29 /** 
       
    30 * @class CCSXHKywdTopics
       
    31 * This class has the information of Keyword Objects
       
    32 */
       
    33 class CCSXHKywdTopics : public CCSXHGenericTOC1
       
    34     {
       
    35     public:
       
    36 /** 
       
    37 *  @function NewL
       
    38 *  @since S60 3.2
       
    39 *  Construct a CCSXHKywdTopics 
       
    40 *  and return a pointer to the created object
       
    41 *  @param aDataBase - database class pointer
       
    42 *  @return a CCSXHKywdTopics Pointer 
       
    43 */      
       
    44     static CCSXHKywdTopics* NewL(const TApaAppCaption& aAppCaption);
       
    45 /** 
       
    46 *  @function NewL
       
    47 *  @since S60 3.2
       
    48 *  Construct a CCSXHKywdTopics 
       
    49 *  and return a pointer to the created object using two phase construction
       
    50 *  @param aDataBase - database class pointer
       
    51 *  @return a CCSXHKywdTopics Pointer 
       
    52 */      
       
    53     static CCSXHKywdTopics* NewLC(const TApaAppCaption& aAppCaption);
       
    54 /** 
       
    55 *  @function ~CCSXHKywdTopics
       
    56 *  @since S60 3.2
       
    57 *  Destroy the object and release all memory objects
       
    58 */
       
    59     ~CCSXHKywdTopics();
       
    60 /** 
       
    61 *  @function GetViewID
       
    62 *  @since S60 3.2
       
    63 *  Get ViewId to activate the View
       
    64 *  @return View Id
       
    65 */    
       
    66     TUid GetViewID() const;
       
    67 /** 
       
    68 *  @function InsertKywdL
       
    69 *  @since S60 3.2
       
    70 *  Insert into an array
       
    71 *  @param aKywd	- Keyword Name
       
    72 */   
       
    73     void InsertKywdL(const TDesC& aKywd);
       
    74 /** 
       
    75 *  @function GetChildL
       
    76 *  @since S60 3.2
       
    77 *  Get objects for keyword
       
    78 *  @param aKywd	- Keyword Name
       
    79 *  @return database class pointer
       
    80 */   
       
    81     CCSXHHelpContentBase* GetChildL(const TDesC& aName);
       
    82     
       
    83 /** 
       
    84 *  @function GetSelectedTopic
       
    85 *  @since S60 3.2
       
    86 *  Get the pointer for a selected Keyword
       
    87 *  @return keyword toc1 class pointer
       
    88 */   
       
    89     CCSXHKywdTOC1* GetSelectedTopic();
       
    90     
       
    91     protected:
       
    92 /** 
       
    93 *  @function CCSXHKywdTopics
       
    94 *  @since S60 3.2
       
    95 *  Construct a CCSXHKywdTopics
       
    96 *  @param aName - keyword Name  
       
    97 */     
       
    98     	CCSXHKywdTopics(const TDesC& aName);
       
    99     	
       
   100 /** 
       
   101 *  @function InitChildList
       
   102 *  @since S60 3.2
       
   103 *  Allocate Memory for the Array 
       
   104 */   
       
   105     	void InitChildList() {}
       
   106 /** 
       
   107 *  @function CopyChildListL
       
   108 *  @since S60 3.2
       
   109 *  Copies content to Descriptor Array
       
   110 *  @param aArray - Descriptor Array
       
   111 */   
       
   112   		void CopyChildListL(CDesCArray* aArray);
       
   113   		
       
   114   	private:
       
   115   		CDesCArray *iKywdTopics;
       
   116   		CCSXHKywdTOC1 *iCurrentTopic;
       
   117     };
       
   118 
       
   119 
       
   120 
       
   121 /** 
       
   122 * @class MCSXHKywdBuilder
       
   123 * The HTML content parser operates on this class for inserting keywords
       
   124 */
       
   125 class MCSXHKywdBuilder
       
   126     {
       
   127     public: // New functions
       
   128 /** 
       
   129 *  @function InsertKeywordL
       
   130 *  @since S60 3.2
       
   131 *  Insert keywords into an array, pure virtual function
       
   132 *  @param aKwdTopics - keyword topics class pointer
       
   133 *		  aKwd		 - keyword Name
       
   134 *		  aToc1		 - html toc1 class pointer
       
   135 */ 
       
   136      virtual void InsertKeywordL(CCSXHKywdTopics* aKwdTopics, const TDesC& aKwd, 
       
   137     									CCSXHHtmlTOC1* aToc1) = 0; 
       
   138 /** 
       
   139 *  @function InsertKeywordL
       
   140 *  @since S60 3.2
       
   141 *  Insert keywords into an array, pure virtual function
       
   142 *  @param aKwdTopics   - keyword topics class pointer
       
   143 *		  aKwd		   - keyword Name
       
   144 *		  aLegacyIndex - position of the object
       
   145 */     
       
   146      virtual void InsertKeywordL(CCSXHKywdTopics* aKwdTopics, const TDesC& aKwd, 
       
   147     									const TInt& aLegacyIndex) = 0; 
       
   148     };
       
   149 
       
   150 #endif /* INC_CSXHKYWDTOPICS_H_HEADER_INCLUDED_BC0568C5 */