00001 // $Id: product.h 809 2006-04-13 11:28:42Z phil $ 00002 /* @@tag:xara-cn@@ DO NOT MODIFY THIS LINE 00003 ================================XARAHEADERSTART=========================== 00004 00005 Xara LX, a vector drawing and manipulation program. 00006 Copyright (C) 1993-2006 Xara Group Ltd. 00007 Copyright on certain contributions may be held in joint with their 00008 respective authors. See AUTHORS file for details. 00009 00010 LICENSE TO USE AND MODIFY SOFTWARE 00011 ---------------------------------- 00012 00013 This file is part of Xara LX. 00014 00015 Xara LX is free software; you can redistribute it and/or modify it 00016 under the terms of the GNU General Public License version 2 as published 00017 by the Free Software Foundation. 00018 00019 Xara LX and its component source files are distributed in the hope 00020 that it will be useful, but WITHOUT ANY WARRANTY; without even the 00021 implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 00022 See the GNU General Public License for more details. 00023 00024 You should have received a copy of the GNU General Public License along 00025 with Xara LX (see the file GPL in the root directory of the 00026 distribution); if not, write to the Free Software Foundation, Inc., 51 00027 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00028 00029 00030 ADDITIONAL RIGHTS 00031 ----------------- 00032 00033 Conditional upon your continuing compliance with the GNU General Public 00034 License described above, Xara Group Ltd grants to you certain additional 00035 rights. 00036 00037 The additional rights are to use, modify, and distribute the software 00038 together with the wxWidgets library, the wxXtra library, and the "CDraw" 00039 library and any other such library that any version of Xara LX relased 00040 by Xara Group Ltd requires in order to compile and execute, including 00041 the static linking of that library to XaraLX. In the case of the 00042 "CDraw" library, you may satisfy obligation under the GNU General Public 00043 License to provide source code by providing a binary copy of the library 00044 concerned and a copy of the license accompanying it. 00045 00046 Nothing in this section restricts any of the rights you have under 00047 the GNU General Public License. 00048 00049 00050 SCOPE OF LICENSE 00051 ---------------- 00052 00053 This license applies to this program (XaraLX) and its constituent source 00054 files only, and does not necessarily apply to other Xara products which may 00055 in part share the same code base, and are subject to their own licensing 00056 terms. 00057 00058 This license does not apply to files in the wxXtra directory, which 00059 are built into a separate library, and are subject to the wxWindows 00060 license contained within that directory in the file "WXXTRA-LICENSE". 00061 00062 This license does not apply to the binary libraries (if any) within 00063 the "libs" directory, which are subject to a separate license contained 00064 within that directory in the file "LIBS-LICENSE". 00065 00066 00067 ARRANGEMENTS FOR CONTRIBUTION OF MODIFICATIONS 00068 ---------------------------------------------- 00069 00070 Subject to the terms of the GNU Public License (see above), you are 00071 free to do whatever you like with your modifications. However, you may 00072 (at your option) wish contribute them to Xara's source tree. You can 00073 find details of how to do this at: 00074 http://www.xaraxtreme.org/developers/ 00075 00076 Prior to contributing your modifications, you will need to complete our 00077 contributor agreement. This can be found at: 00078 http://www.xaraxtreme.org/developers/contribute/ 00079 00080 Please note that Xara will not accept modifications which modify any of 00081 the text between the start and end of this header (marked 00082 XARAHEADERSTART and XARAHEADEREND). 00083 00084 00085 MARKS 00086 ----- 00087 00088 Xara, Xara LX, Xara X, Xara X/Xtreme, Xara Xtreme, the Xtreme and Xara 00089 designs are registered or unregistered trademarks, design-marks, and/or 00090 service marks of Xara Group Ltd. All rights in these marks are reserved. 00091 00092 00093 Xara Group Ltd, Gaddesden Place, Hemel Hempstead, HP2 6EX, UK. 00094 http://www.xara.com/ 00095 00096 =================================XARAHEADEREND============================ 00097 */ 00098 00099 // file defining ASCII strings of the product name so it can easily be changed 00100 00101 #ifndef INC_PRODUCT 00102 #define INC_PRODUCT 00103 00104 /****************************************** 00105 Notes on PRODUCT_NAMEx macros (markn 27/11/96) 00106 00107 The numbered product macros are for use in resource files. The resource compiler doesn't have the same 00108 ability to concatinate strings as the C preprocessor, so product name string macros & related substitution 00109 can't be done in the usual way. 00110 00111 The above macros behave in the following way: 00112 PRODUCT_NAME1(Superb) produces "Superb Xara Webster" 00113 PRODUCT_NAME2(\040is superb) produces "Xara Webster is superb" 00114 PRODUCT_NAME3(Stunning,\040is great) produces "Stunning Xara Webster is great" 00115 PRODUCT_NAME4(Stunning,\040is great\054 and,\040shines) produces "Stunning Xara Webster is great, and Xara Webster shines" 00116 00117 Notes: 00118 * The parameter strings should not include double quote (") chars. This are produced by the macro. 00119 * \040 is octal for Space ( ). As you are not providing a string param, this is the only way to include 00120 leading or trailing spaces. 00121 * \054 is octal for a comma (,). Literal commas are interpreted as param separators, so you have to 00122 insert these using the ASCII code. 00123 * \047 is octal for a quote mark/apostrophe ('). Needed for words like "Don't" and "product's" but not "hatstands". Have to be done via 00124 ASCI codes because single (') chars cause syntax errors. 00125 * \050 & \051 define round brackets - these will be need too, if you want brackets in you strings. 00126 00127 **********************************************/ 00128 00129 //--------------------------------------------------------------------------------- 00130 // These are common to all builds 00131 00132 // use this one as the manufacturer name 00133 // WEBSTER - markn 7/2/97 00134 00135 // use this one for showing copyright information 00136 #define PRODUCT_COPYRIGHTNAME "Xara Group Ltd." 00137 00138 // use this one for looking at the gallery index files 00139 // for the Xara Studio V1.00a release 00140 #define PRODUCT_OLDINDEXNAME "XaraInfo" 00141 00142 // use this one for looking at the gallery index files 00143 // for versions generated by this version 00144 #define PRODUCT_INDEXNAME "XaraInfo" 00145 00146 // this is the version number that is displayed to the user 00147 // in the splash screen and on the about box, and that is 00148 // used to determine if a new version is available by 00149 // building up the update URL 00150 // It should probably have "CD" after it for a CD build 00151 00152 #ifdef CD_BUILD 00153 #define PRODUCT_RETAIL_VERSION_NO "1.2 CD" 00154 #else 00155 #define PRODUCT_RETAIL_VERSION_NO "1.2 unknown" 00156 #endif 00157 00158 00159 00160 00161 //--------------------------------------------------------------------------------- 00162 00163 // define the bits that are peculiar to the programs e.g. Studio, Viewer 00164 #ifndef STANDALONE 00165 00166 #define PRODUCT_MANUFACTURER _T("Xara") 00167 #define PRODUCT_COMPANYNAME _T("Xara Ltd.") 00168 00169 // use this one as the base for filenames e.g. ini 00170 #define PRODUCT_BASENAME _T("XaraX") 00171 00172 #define PRODUCT_HELPFILENAME _T("XaraX") // e.g. "CorelXra.hlp" and "CorelXra.cnt" 00173 #define PRODUCT_MOVIESHELPFILENAME _T("Movies") // e.g. "CorelXra.hlp" and "CorelXra.cnt" 00174 00175 #define PRODUCT_EXENAME _T("XaraX.exe") 00176 00177 // Use these for the specific ini files mentioned 00178 #define PRODUCT_BARSFULL_INIFILE _T("XaraXBF.ini") 00179 #define PRODUCT_BARSNORMAL_INIFILE _T("XaraXBN.ini") 00180 #define PRODUCT_GALLERY_INIFILE _T("XaraXGR.ini") 00181 #define PRODUCT_RESOURCES_INIFILE _T("XaraWRS.ini") 00182 #define PRODUCT_PLUGINS_INIFILE _T("XaraXPL.ini") 00183 00184 // The resource DLL leaf name (the last 3 chars define the locale) 00185 // Note: You'll also need to change the RESOURCELEAF var in the make file too 00186 #define PRODUCT_RESOURCELEAF _T("XaraX") 00187 00188 // use this one to display the name of the product to the user 00189 // WEBSTER - markn 26/11/96 00190 // (See notes at the top of this file about the PRODUCT_NAME macros) 00191 #define PRODUCT_NAME _T("Xara X") 00192 #define STRINGIZE(x) #x 00193 #define PRODUCT_NAME1(s) STRINGIZE(s Xara X) 00194 #define PRODUCT_NAME2(s) STRINGIZE(Xara X##s) 00195 #define PRODUCT_NAME3(s1,s2) STRINGIZE(s1 Xara X##s2) 00196 #define PRODUCT_NAME4(s1,s2,s3) STRINGIZE(s1 Xara X##s2 Xara X##s3) 00197 #define PRODUCT_NAME5(s1,s2) STRINGIZE(Xara X##s1 Xara X##s2) 00198 00199 #define PRODUCT_WEBLINKNAME _T("XaraLink") 00200 #define PRODUCT_WEBLINKEXENAME _T("XaraLink.exe") 00201 00202 // use this one as the product name 00203 #define PRODUCT_PRODUCTNAME _T("XaraX2") 00204 00205 // use this one as the running name 00206 #define PRODUCT_RUNNINGNAME _T("XaraX") 00207 00208 // use this as the product version as shown to the user 00209 #define PRODUCT_VERSION_NO _T("3.0") 00210 00211 #define PRODUCT_INTERNALNAME _T("Camelot") 00212 00213 #define PRODUCT_TRADEMARKS _T("Xara and Xara X are registered trademarks of Xara Ltd") 00214 00215 #else // STANDALONE 00216 00217 // registry keys. 00218 #define PRODUCT_MANUFACTURER "Xara" 00219 00220 // use this one as the base for filenames e.g. ini, etc 00221 #define PRODUCT_BASENAME "XXVIEWER" 00222 00223 #define PRODUCT_HELPFILENAME "Xara" // e.g. "Xara.hlp" and "Xara.cnt" 00224 00225 #define PRODUCT_EXENAME "XXViewer.exe" 00226 00227 // Use these for the specific ini files mentioned 00228 #define PRODUCT_BARSFULL_INIFILE "XaraXVBF.ini" 00229 #define PRODUCT_BARSNORMAL_INIFILE "XaraXVBN.ini" 00230 #define PRODUCT_GALLERY_INIFILE "XaraX.ini" 00231 #define PRODUCT_RESOURCE_INIFILE "XaraXVRS.ini" 00232 00233 // use this one to display the name of the product to the user 00234 #define PRODUCT_NAME "Xara X Viewer" 00235 00236 // use this one as the product name 00237 #define PRODUCT_PRODUCTNAME "Viewer" 00238 00239 // use this one as the running name 00240 #define PRODUCT_RUNNINGNAME "XaraXViewer" 00241 00242 // use this as the product version as shown to the user 00243 #define PRODUCT_VERSION_NO "1.5" 00244 00245 #endif 00246 00247 // General modifications to the above macros 00248 00249 // This defines a different program (product) name for debug and retail builds. 00250 #ifdef _DEBUG 00251 #define PROGRAM_NAME PRODUCT_PRODUCTNAME " (Debug)" 00252 #define PRODUCT_APP_DOC_ID PRODUCT_PRODUCTNAME ".Document.Debug" 00253 #else 00254 #define PROGRAM_NAME PRODUCT_PRODUCTNAME 00255 #define PRODUCT_APP_DOC_ID PRODUCT_PRODUCTNAME ".Document" 00256 #endif 00257 00258 00259 // define the registry keys that each section of the old ini file is saved under 00260 #define PRODUCT_REGISTRYKEY_OPTIONS "Options" 00261 #define PRODUCT_REGISTRYKEY_BARSETTINGS "BarSettings" 00262 #define PRODUCT_REGISTRYKEY_BARSFULL "BarsFull" 00263 #define PRODUCT_REGISTRYKEY_BARSNORMAL "BarsNormal" 00264 #define PRODUCT_REGISTRYKEY_GALLERY "Gallery" 00265 #define PRODUCT_REGISTRYKEY_PLUGINS "PlugIns" 00266 #define PRODUCT_REGISTRYKEY_RESOURCE "Resources" 00267 00268 00269 // The path to the product's registry settings 00270 00271 // define the current user key first (so it can be passed to the WebFileUpdater Component) 00272 00273 #define PRODUCT_REGISTRYKEY_USERPATH "Software\\" PRODUCT_MANUFACTURER "\\" PROGRAM_NAME "\\" 00274 #define PRODUCT_REGISTRYKEY_FULLPATH "HKEY_CURRENT_USER\\" PRODUCT_REGISTRYKEY_USERPATH 00275 00276 // The full registry path to various sections 00277 #define PRODUCT_REGISTRYKEY_OPTIONS_FULLPATH PRODUCT_REGISTRYKEY_FULLPATH PRODUCT_REGISTRYKEY_OPTIONS 00278 #define PRODUCT_REGISTRYKEY_BARSNORMAL_FULLPATH PRODUCT_REGISTRYKEY_FULLPATH PRODUCT_REGISTRYKEY_BARSNORMAL 00279 00280 #endif // INC_PRODUCT