camera_plat/active_palette_2_api/inc/activepalette2genericpluginint.h
branchRCL_3
changeset 24 bac7acad7cb3
parent 0 1ddebce53859
equal deleted inserted replaced
23:61bc0f252b2b 24:bac7acad7cb3
       
     1 /*
       
     2 * Copyright (c) 2007-2009 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:  Active Palette generic plugin public interface
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 /**
       
    20  * @file ActivePalette2GenericPluginInt.h
       
    21  * Active Palette generic plugin public interface
       
    22  */
       
    23 
       
    24 #ifndef ACTIVE_PALETTE_2_GENERIC_PLUGIN_INT_H
       
    25 #define ACTIVE_PALETTE_2_GENERIC_PLUGIN_INT_H
       
    26 
       
    27 // INCLUDES
       
    28 #include <e32std.h>
       
    29 
       
    30 /// UID for generic plugin
       
    31 #define KActivePalette2GenericPluginUID			    0x10208A6D
       
    32 
       
    33 // CONSTANTS
       
    34 /// Maximum tooltip length, in characters
       
    35 const TInt KMaxTooltipLen = 256;
       
    36 
       
    37 // FORWARD DECLARATIONS
       
    38 
       
    39 /**
       
    40  * Generic plugin parameters
       
    41  */
       
    42 class TAP2GenericPluginParams
       
    43 	{
       
    44 public:
       
    45     /**
       
    46      * Use to signify the resource file type
       
    47      */
       
    48     enum TAP2GenericPluginResFileType
       
    49         {
       
    50         EGenericStdResFile 			= 1, ///< Use the inbuilt icons
       
    51     	EGenericCustomResFile	    = 2  ///< Use a custom graphics file
       
    52     	};
       
    53     	
       
    54     /**
       
    55      * The IDs for the inbuilt icons
       
    56      */
       
    57     enum TAP2GenericPluginIconId
       
    58         {
       
    59         // No built-in graphics supported
       
    60 	    };
       
    61 
       
    62 public:
       
    63 
       
    64     /**
       
    65     * Constructor
       
    66     */
       
    67 	TAP2GenericPluginParams();
       
    68 
       
    69     /**
       
    70     * Constructor
       
    71     * @param aResFileType Resource file type
       
    72     * @param aGraphicsFileName Graphics file name
       
    73     * @param aIconId Bitmap UD for the item's icon
       
    74     * @param aMaskId Bitmap UD for the item's mask
       
    75     * @param aTooltipText Tooltip text
       
    76     * @param aMessageId Message ID
       
    77     * @param aMsgCustomParam Message custom parameter
       
    78     */
       
    79 	IMPORT_C	TAP2GenericPluginParams(const TInt aResFileType,
       
    80 									   const TDesC& aGraphicsFileName,
       
    81 									   const TInt aIconId,
       
    82 									   const TInt aMaskId,
       
    83 									   const TDesC& aTooltipText,
       
    84 									   const TInt aMessageId,
       
    85 									   const TInt aMsgCustomParam);	
       
    86 
       
    87     /// Current graphics file type in use
       
    88 	TInt					iResFileType;
       
    89 	/// Current graphics file in use
       
    90 	TFileName 				iGraphicsFileName;		
       
    91 	/// The icon ID
       
    92 	TInt      				iIconId;
       
    93 	/// The mask ID
       
    94 	TInt      				iMaskId;
       
    95 	/// Tooltip text for the item
       
    96 	TBuf<KMaxTooltipLen> 	iTooltipText;
       
    97 	/// Message ID
       
    98 	TInt					iMessageId;
       
    99 	/// Custom parameter
       
   100 	TInt					iMsgCustomParam;
       
   101 	};
       
   102 
       
   103 
       
   104 /**
       
   105  * Message IDs used by generic plugin
       
   106  */
       
   107 enum TAP2GenericPluginMessageIDs
       
   108 	{
       
   109 	EAPGenericPluginChangeIcon,  ///< Change the current icon
       
   110 	EAPGenericPluginChangeParams ///< Change the general parameters
       
   111 	};
       
   112 
       
   113 /**
       
   114  * Describes an icon and its mask, for the generic plugin
       
   115  */
       
   116 class TAP2GenericPluginIcon
       
   117 	{
       
   118 public:
       
   119 
       
   120     /**
       
   121     * Constructor
       
   122     */
       
   123 	TAP2GenericPluginIcon();
       
   124 	
       
   125     /**
       
   126     * Constructor
       
   127     * @param aIconId Bitmap ID for the icon
       
   128     * @param aMaskId Bitmap ID for the mask
       
   129     */
       
   130 	IMPORT_C	TAP2GenericPluginIcon(const TInt aIconId,
       
   131 									 const TInt aMaskId);	
       
   132 
       
   133     /// The icon ID
       
   134 	TInt      	iIconId;
       
   135 	/// The mask ID
       
   136 	TInt      	iMaskId;
       
   137 	};
       
   138 
       
   139 #endif // ACTIVE_PALETTE_2_GENERIC_PLUGIN_INT_H
       
   140 
       
   141 // End of File