1 // Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of "Eclipse Public License v1.0"
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
16 #if !defined __APPINFO_RH__
17 #define __APPINFO_RH__
20 // contains definitions for the Application Information resource files
26 #define KMaxFileNameLength 256
29 // DEFINITIONS FOR THE NON-LOCALISABLE REGISTRATION RESOURCE FILE
36 #define KUidAppRegistrationResourceFile 0x101f8021
42 // constants for capability.hidden
43 #define KAppNotHidden 0
44 #define KAppIsHidden 1
50 // constants for capability.newfile
51 #define KAppDoesNotSupportNewFile 0
52 #define KAppSupportsNewFile 1
58 // constants for capability.embeddability
59 #define KAppNotEmbeddable 0
60 #define KAppEmbeddable 1
61 #define KAppEmbeddableOnly 2
62 #define KAppEmbeddableUiOrStandAlone 5
63 #define KAppEmbeddableUiNotStandAlone 6
69 // constants for capability.launch
70 #define KAppLaunchInForeground 0
71 #define KAppLaunchInBackground 1
77 // bit flags for capability.attributes
78 #define KAppBuiltAsDll 0x00000001
79 #define KAppIsControlPanelItem 0x00000002
80 #define KAppNonNative 0x00000004
86 // application group name
87 #define KAppMaxGroupName 16
94 STRUCT APP_REGISTRATION_INFO
96 LONG reserved_long = 0; // reserved for future use, do not use
97 LLINK reserved_llink = 0; // reserved for future use, do not use
99 LTEXT app_file(KMaxFileNameLength) = ""; // name of application binary file (not including extension) - mandatory
102 LTEXT localisable_resource_file(KMaxFileNameLength) = ""; // path (not including drive) and name of localisable resource file
103 LONG localisable_resource_id = 1;
105 BYTE hidden = KAppNotHidden;
106 BYTE embeddability = KAppNotEmbeddable;
107 BYTE newfile = KAppDoesNotSupportNewFile;
108 BYTE launch = KAppLaunchInForeground;
109 LTEXT group_name(KAppMaxGroupName) = "";
111 BYTE default_screen_number = 0;
113 LEN WORD STRUCT datatype_list[]; // DATATYPE
115 LEN WORD STRUCT file_ownership_list[]; // FILE_OWNERSHIP_INFO
117 LEN WORD STRUCT service_list[]; // SERVICE_INFO
119 LLINK opaque_data = 0; // use for opaque data to send to non-native application launchers i.e. MIDlet id
127 #define KMaxDataTypeLength 256
134 /* This enum is used to specify the priority at which an application can handle a particular MIME type.
135 The application with the highest priority will be considered as the default application
136 for that particular MIME type.
137 Default association of MIME types with applications can be overridden by user settings,
138 except for applications handling data types with EDataTypePrioritySystem.
143 EDataTypePrioritySystem = 0xFFF9, // This is a special priority that overrides any user settings.
144 // Applications must have EWriteDeviceData capability to use this priority.
145 // If not they will be downgraded to EDataTypePriorityNormal
148 EDataTypePriorityTrustedHigh = 0xC000, // Trusted applications may use this priority value to ensure that their MIME type
149 // associations cannot be overridden by self signed (untrusted) applications
152 EDataTypePriorityHigh = 10000, // An application at EDataTypePriorityHigh will be given higher preference for a
153 // particular data type, than applications with EDataTypePriorityNormal
156 EDataTypePriorityNormal = 0, // An application at EDataTypePriorityNormal will be given higher preference for a
157 // particular data type, than applications with EDataTypePriorityLow.
160 EDataTypePriorityLow = -10000, // This priority means that the data type is a secondary type for that application.
161 // For example, "text/plain" files for a web browser
164 EDataTypePriorityLastResort = -20000 // This priority means that the data type is a last resort for that application
175 LTEXT8 type(KMaxDataTypeLength);
182 STRUCT FILE_OWNERSHIP_INFO
184 LTEXT file_name(KMaxFileNameLength);
194 LEN WORD STRUCT datatype_list[];
195 LLINK opaque_data = 0;
200 // DEFINITIONS FOR THE LOCALISABLE RESOURCE FILE
207 #define KMaxCaption 256
213 STRUCT LOCALISABLE_APP_INFO
215 LONG reserved_long = 0; // reserved for future use, do not use
216 LLINK reserved_llink = 0; // reserved for future use, do not use
218 LTEXT short_caption(KMaxCaption) = "";
219 STRUCT caption_and_icon; // CAPTION_AND_ICON_INFO
221 LEN WORD STRUCT view_list[]; // VIEW_DATA
223 LTEXT group_name(KAppMaxGroupName) = "";
230 STRUCT CAPTION_AND_ICON_INFO
232 LONG reserved_long = 0; // reserved for future use, do not use
233 LLINK reserved_llink = 0; // reserved for future use, do not use
235 LTEXT caption(KMaxCaption) = "";
237 WORD number_of_icons = 0; // each icon must be a bitmap/mask pair
238 LTEXT icon_file(KMaxFileNameLength) = "";
247 LONG reserved_long = 0; // reserved for future use, do not use
248 LLINK reserved_llink = 0; // reserved for future use, do not use
252 LONG screen_mode = 0;
254 STRUCT caption_and_icon; // CAPTION_AND_ICON_INFO