fdo#74697 Add Bluez 5 support for impress remote.
[LibreOffice.git] / scp2 / inc / macros.inc
blobf0ed12a270b769313e222c6d2eadd9adb0979395
1 /*
2  * This file is part of the LibreOffice project.
3  *
4  * This Source Code Form is subject to the terms of the Mozilla Public
5  * License, v. 2.0. If a copy of the MPL was not distributed with this
6  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
7  *
8  * This file incorporates work covered by the following license notice:
9  *
10  *   Licensed to the Apache Software Foundation (ASF) under one or more
11  *   contributor license agreements. See the NOTICE file distributed
12  *   with this work for additional information regarding copyright
13  *   ownership. The ASF licenses this file to you under the Apache
14  *   License, Version 2.0 (the "License"); you may not use this file
15  *   except in compliance with the License. You may obtain a copy of
16  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
17  */
19 #ifndef MACROS_INC
20 #define MACROS_INC
21 /* =====================================================
22  * global helper macros
23  * =====================================================*/
25 #define DOSTRING( x )                           #x
26 #define STRING( x )                             DOSTRING( x )
27 #define DOCONCAT2( x, y )                       x##y
28 #define CONCAT2( x, y)                          DOCONCAT2(x,y)
29 #define DOCONCAT3( x, y, z )                    x##y##z
30 #define CONCAT3( x, y, z )                      DOCONCAT3(x,y,z)
31 #define DOCONCAT4( x, y, z, a )                 x##y##z##a
32 #define CONCAT4( x, y, z, a )                   DOCONCAT4(x,y,z,a)
33 #define DOCONCAT5( x, y, z, a, b )              x##y##z##a##b
34 #define CONCAT5( x, y, z, a, b )                DOCONCAT5(x,y,z,a,b)
35 #define DOCONCAT6( x, y, z, a, b, c )           x##y##z##a##b##c
36 #define CONCAT6( x, y, z, a, b, c )             DOCONCAT6(x,y,z,a,b,c)
37 #define DOCONCAT7( x, y, z, a, b, c, u)         x##y##z##a##b##c##u
38 #define CONCAT7( x, y, z, a, b, c, u)           DOCONCAT7(x,y,z,a,b,c,u)
39 #define DOCONCAT8( x, y, z, a, b, c, u, v)      x##y##z##a##b##c##u##v
40 #define CONCAT8( x, y, z, a, b, c, u, v)        DOCONCAT8(x,y,z,a,b,c,u,v)
41 #define DOCONCAT9( x, y, z, a, b, c, u, v, w)   x##y##z##a##b##c##u##v##w
42 #define CONCAT9( x, y, z, a, b, c, u, v, w)     DOCONCAT9(x,y,z,a,b,c,u,v,w)
44 #define MOD_NAME_DESC(id) \
45         ALL_LANG(Name,STR_NAME_##id); \
46         ALL_LANG(Description,STR_DESC_##id)
48 #define REG_VALUE_LNG(id) \
49         ALL_LANG(Value,STR_REG_VAL_##id);
51 #ifdef UNX
52     #ifdef MACOSX
53         #define UNXSUFFIX .dylib
54     #else
55         #define UNXSUFFIX .so
56     #endif
57 #endif
59 #ifdef UNX
60     #define LIBNAME(name)                     STRING(CONCAT4(lib,name,DLLPOSTFIX,UNXSUFFIX))
61     #define EXENAME(name)                     STRING(name)
62     #define PROFILENAME(name)                 STRING(CONCAT2(name,rc))
63     #define SPECIAL_NAME(name)                STRING(CONCAT3(lib,name,UNXSUFFIX))
64     #ifdef MACOSX
65        #define SPECIAL_NAME_VER(name,version)    STRING(CONCAT5(lib,name,.,version,UNXSUFFIX))
66     #else
67        #define SPECIAL_NAME_VER(name,version)    STRING(CONCAT5(lib,name,UNXSUFFIX,.,version))
68     #endif
69     #define SPECIAL_COMPONENT_LIB_NAME(name)  STRING(CONCAT2(name,UNXSUFFIX))
70 #else
71     #define LIBNAME(name)                     STRING(CONCAT3(name,DLLPOSTFIX,.dll))
72     #define EXENAME(name)                     STRING(CONCAT2(name,.exe))
73     #define PROFILENAME(name)                 STRING(CONCAT2(name,.ini))
74     #define SPECIAL_NAME(name)                STRING(CONCAT2(name,.dll))
75     #define SPECIAL_COMPONENT_LIB_NAME(name)  STRING(CONCAT2(name,.dll))
76 #endif
78 #define RESFILENAME(name,lang)                STRING(CONCAT3(name,lang,.res))
79 #define READMETXTFILENAME(name,lang,ext)      STRING(CONCAT4(name,lang,.,ext))
80 #define READMEFILENAME(name,lang)             STRING(CONCAT2(name,lang))
81 #define EXTRAFILENAME(name,lang)              STRING(CONCAT3(name,lang,.zip))
82 #define EXTRAFILELISTNAME(prefix,name,lang)   STRING(CONCAT4(prefix,name,lang,.filelist))
83 #define CONFIGLANGFILENAME(name,lang,ext)     STRING(CONCAT4(name,lang,.,ext))
85 #define SCP2_OOO_BIN_DIR gid_Brand_Dir_Program
87 #define BIN_FILE_BODY \
88         UnixRights   = 755
90 #define LIB_FILE_BODY \
91         UnixRights   = 755
93 #define TXT_FILE_BODY \
94         UnixRights   = 644
96 #define USER_FILE_BODY \
97         UnixRights   = 644
99 #define PACKED_TXT_FILE_BODY \
100         TXT_FILE_BODY; \
101         Styles = (PACKED)
103 #define ARCHIVE_TXT_FILE_BODY \
104         TXT_FILE_BODY; \
105         Styles = (ARCHIVE)
107 #ifdef WITH_HELPPACK_INTEGRATION
108 #define FILELIST_TXT_FILE_BODY_HELPPACK \
109         TXT_FILE_BODY; \
110         Styles = (FILELIST,FORCEHELPPACK,LANGUAGEMODULE)
111 #else
112 #define FILELIST_TXT_FILE_BODY_HELPPACK \
113         TXT_FILE_BODY; \
114         Styles = (FILELIST,HELPPACK,LANGUAGEMODULE)
115 #endif
117 #define PACKED_LIB_FILE_BODY \
118         LIB_FILE_BODY; \
119         Styles = (PACKED); \
120         Dir    = SCP2_OOO_BIN_DIR
122 #define LIBO_LIB_FILE(id,name) \
123     File id \
124         Name = name; \
125         PACKED_LIB_FILE_BODY; \
126     End
128 #define STD_LIB_FILE(id,name) \
129     File id \
130         Name   = LIBNAME(name); \
131         PACKED_LIB_FILE_BODY; \
132     End
134 #define SPECIAL_LIB_FILE(id,name) \
135     File id \
136         Name    = SPECIAL_NAME(name); \
137         PACKED_LIB_FILE_BODY; \
138     End
140 #define STD_RES_FILE(id,name) \
141     File id \
142         TXT_FILE_BODY; \
143         RESFILE_ALL_LANG(name); \
144         Dir     = gid_Dir_Resource; \
145         Styles  = (PACKED); \
146     End
148 #define STD_FONTWIN_FILE(id,name,fontname) \
149     File id \
150         TXT_FILE_BODY; \
151         Dir      = gid_Dir_Fonts_Truetype; \
152         Styles   = (PACKED,FONT,DONT_DELETE,FONT_WARN_IF_EXISTS); \
153         Name     = STRING(name) ; \
154         NetDir   = gid_Dir_Winfonts; \
155     End
157 #ifdef UNX
158 #define STD_FONT_FILELIST(id,name) \
159     File id \
160         TXT_FILE_BODY; \
161         Dir       = FILELIST_DIR; \
162         Styles    = (FILELIST, PACKED, FONT_WARN_IF_EXISTS); \
163         Name      = name; \
164     End
165 #endif
167 #ifdef WNT
168 #define STD_FONT_FILELIST(id,name) \
169     File id \
170         TXT_FILE_BODY; \
171         Dir       = FILELIST_DIR; \
172         Styles   = (FILELIST,PACKED,FONT,DONT_DELETE,FONT_WARN_IF_EXISTS); \
173         Name      = name; \
174     End
175 #endif
177 #define STD_JAR_FILE(id,name) \
178     File id \
179         TXT_FILE_BODY; \
180         Name     = STRING(CONCAT2(name,.jar)); \
181         Dir      = gid_Dir_Classes; \
182         Styles   = (PACKED,DONT_OVERWRITE); \
183     End
185 #define JARFILENAME(name) STRING(CONCAT2(name,.jar))
187 #define SPECIAL_COMPONENT_LIB_FILE(id,name) \
188     File id \
189         Name     = SPECIAL_COMPONENT_LIB_NAME(name); \
190         PACKED_LIB_FILE_BODY; \
191     End
193 // ---------------------------------------
194 #define CONDITIONAL_MODULE_ENTRY(name,modid) \
195     Module gid_Module_Root_Reg_##name \
196         ParentID = modid; \
197         Name = STRING(CONCAT2(gid_Module_Root_,name)); \
198         Description = STRING(CONCAT2(gid_Module_Root_,name)); \
199         Default = YES; \
200         Styles = (HIDDEN_ROOT); \
203 #define REGISTRY_ENTRY_OPEN_WITH(name,cond,doc_type,modid,key) \
204     RegistryItem gid_Regitem_OpenOffice_##cond##_OpenWith_##doc_type \
205         ParentID = PREDEFINED_HKEY_CLASSES_ROOT; \
206         ModuleID = modid; \
207         Subkey = STRING(CONCAT3(.,key,\OpenWithProgIDs)); \
208         Name = STRING(CONCAT2(LibreOffice.,name)); \
209         Value = " "; \
210     End
212 #define REGISTRY_ENTRY_OPEN_WITH_TMPL(name,cond,doc_type,modid,key) \
213     RegistryItem gid_Regitem_OpenOffice_##cond##_OpenWith_##doc_type \
214         ParentID = PREDEFINED_HKEY_CLASSES_ROOT; \
215         ModuleID = modid; \
216         Subkey = STRING(CONCAT3(.,key,\OpenWithProgIDs)); \
217         Name = STRING(CONCAT2(LibreOffice.,name)); \
218         Value = " "; \
219     End
221 #define CONDITIONAL_REGISTRY_ENTRY_EXT(name,cond,key) \
222     RegistryItem gid_Regitem__##name \
223         ParentID = PREDEFINED_HKEY_CLASSES_ROOT; \
224         ModuleID = gid_Module_Root_Reg_##name; \
225         Subkey = STRING(CONCAT2(.,key)); \
226         Value = STRING(CONCAT2(LibreOffice.,name)); \
227         ComponentCondition = STRING(CONCAT3(REGISTER_,cond,=1)); \
228     End
230 #define REGISTRY_ENTRY_DOC(name,modid,disp_name) \
231     RegistryItem CONCAT2(gid_Regitem_Openoffice_,name) \
232         ParentID = PREDEFINED_HKEY_CLASSES_ROOT; \
233         ModuleID = modid; \
234         Subkey = STRING(CONCAT2(LibreOffice.,name)); \
235         REG_VALUE_LNG(disp_name) \
236     End
238 #define REGISTRY_ENTRY_APPUSERMODELID(name,modid,doc_type) \
239     RegistryItem CONCAT3(gid_Regitem_Openoffice_,name,_AppUserModelID) \
240         ParentID = PREDEFINED_HKEY_CLASSES_ROOT; \
241         ModuleID = modid; \
242         ComponentCondition = STRING(VersionNT >= 601); \
243         Subkey = STRING(CONCAT2(LibreOffice.,name)); \
244         Name = STRING(AppUserModelID); \
245         Value = STRING(CONCAT2(TheDocumentFoundation.LibreOffice.,doc_type)); \
246     End
248 #define REGISTRY_ENTRY_ICON(name,modid,icon_id) \
249     RegistryItem CONCAT3(gid_Regitem_Openoffice_,name,_Defaulticon) \
250         ParentID = PREDEFINED_HKEY_CLASSES_ROOT; \
251         ModuleID = modid; \
252         Subkey = STRING(CONCAT3(LibreOffice.,name,\DefaultIcon)); \
253         Value = "<progpath>\program\soffice.bin," STRING(icon_id); \
254     End
256 #define REGISTRY_ENTRY_SHELL(name,default,modid) \
257     RegistryItem CONCAT3(gid_Regitem_Openoffice_,name,_Shell) \
258         ParentID = PREDEFINED_HKEY_CLASSES_ROOT; \
259         ModuleID = modid; \
260         Subkey = STRING(CONCAT3(LibreOffice.,name,\shell)); \
261         Value = STRING(default); \
262     End
264 #define REGISTRY_ENTRY_NEW_CMD(name,modid,app) \
265     RegistryItem CONCAT3(gid_Regitem_Openoffice_,name,_Shell_New) \
266         ParentID = PREDEFINED_HKEY_CLASSES_ROOT; \
267         ModuleID = modid; \
268         Subkey = STRING(CONCAT3(LibreOffice.,name,\shell\new)); \
269         REG_VALUE_LNG(NEW) \
270     End \
271     RegistryItem CONCAT3(gid_Regitem_Openoffice_,name,_Shell_New_Command) \
272         ParentID = PREDEFINED_HKEY_CLASSES_ROOT; \
273         ModuleID = modid; \
274         Subkey = STRING(CONCAT3(LibreOffice.,name,\shell\new\command)); \
275         Value = "\"<progpath>\program\\" STRING(app) "\" -n \"%1\""; \
276     End
278 #define REGISTRY_ENTRY_OPEN_CMD(name,modid,app) \
279     RegistryItem CONCAT3(gid_Regitem_Openoffice_,name,_Shell_Open_Command) \
280         ParentID = PREDEFINED_HKEY_CLASSES_ROOT; \
281         ModuleID = modid; \
282         Subkey = STRING(CONCAT3(LibreOffice.,name,\shell\open\command)); \
283         Value = "\"<progpath>\program\\" STRING(app) "\" -o \"%1\""; \
284     End
286 #define REGISTRY_ENTRY_PRINT_CMD(name,modid,app) \
287     RegistryItem CONCAT3(gid_Regitem_Openoffice_,name,_Shell_Print_Command) \
288         ParentID = PREDEFINED_HKEY_CLASSES_ROOT; \
289         ModuleID = modid; \
290         Subkey = STRING(CONCAT3(LibreOffice.,name,\shell\print\command)); \
291         Value = "\"<progpath>\program\\" STRING(app) "\" -p \"%1\""; \
292     End
294 #define REGISTRY_ENTRY_PRINTTO_CMD(name,modid,app) \
295     RegistryItem CONCAT3(gid_Regitem_Openoffice_,name,_Shell_Printto_Command) \
296         ParentID = PREDEFINED_HKEY_CLASSES_ROOT; \
297         ModuleID = modid; \
298         Subkey = STRING(CONCAT3(LibreOffice.,name,\shell\printto\command)); \
299         Value = "\"<progpath>\program\\" STRING(app) "\" -pt \"%2\" \"%1\""; \
300     End
302 #define REGISTRY_ENTRY_CAPABILITIES(name,modid,key,doc_type) \
303     RegistryItem CONCAT2(gid_Regitem_Software_Manufacturer_Productname_Productversion_Capabilities_FileAssociations_,name) \
304         ParentID = PREDEFINED_HKEY_LOCAL_MACHINE; \
305         ModuleID = modid; \
306         Subkey = STRING(Software\%MANUFACTURER\%PRODUCTNAME%PRODUCTADDON\%PRODUCTVERSION\Capabilities\FileAssociations); \
307         Name = STRING(CONCAT2(.,key)); \
308         Value = STRING(CONCAT2(LibreOffice.,name)); \
309         Styles = (); \
310     End
312 #define REGISTRY_ENTRY_TEMPLATE_CAPABILITIES(name,modid,key,doc_type) \
313     RegistryItem CONCAT2(gid_Regitem_Software_Manufacturer_Productname_Productversion_Capabilities_FileAssociations_,name) \
314         ParentID = PREDEFINED_HKEY_LOCAL_MACHINE; \
315         ModuleID = modid; \
316         Subkey = STRING(Software\%MANUFACTURER\%PRODUCTNAME%PRODUCTADDON\%PRODUCTVERSION\Capabilities\FileAssociations); \
317         Name = STRING(CONCAT2(.,key)); \
318         Value = STRING(CONCAT2(LibreOffice.,name)); \
319         Styles = (); \
320     End
322 #define REGISTRY_ENTRY_KINDMAP(name, modid, key) \
323     RegistryItem CONCAT2(gid_Regitem_Software_Manufacturer_Productname_Productversion_Explorer_KindMap_,name) \
324         ParentID = PREDEFINED_HKEY_LOCAL_MACHINE; \
325         ModuleID = modid; \
326         ComponentCondition = "VersionNT >= 600"; \
327         Subkey = STRING(SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\KindMap); \
328         Name = STRING(CONCAT2(.,key)); \
329         Value = "document"; \
330     End
332 #define CONDITIONAL_REGISTER_DOC_EXTENSION(name,modid,key,cond,disp_name,icon_id,app,default,doc_type) \
333     CONDITIONAL_MODULE_ENTRY(name,modid) \
334     REGISTRY_ENTRY_OPEN_WITH(name,cond,doc_type,modid,key) \
335     CONDITIONAL_REGISTRY_ENTRY_EXT(name,cond,key) \
336     REGISTRY_ENTRY_DOC(name,modid,disp_name) \
337     REGISTRY_ENTRY_APPUSERMODELID(name,modid,doc_type) \
338     REGISTRY_ENTRY_ICON(name,modid,icon_id) \
339     REGISTRY_ENTRY_SHELL(name,default,modid) \
340     REGISTRY_ENTRY_NEW_CMD(name,modid,app) \
341     REGISTRY_ENTRY_OPEN_CMD(name,modid,app) \
342     REGISTRY_ENTRY_PRINT_CMD(name,modid,app) \
343     REGISTRY_ENTRY_PRINTTO_CMD(name,modid,app) \
344     REGISTRY_ENTRY_CAPABILITIES(name,modid,key,doc_type) \
345     REGISTRY_ENTRY_KINDMAP(name, modid, key) \
347 #define CONDITIONAL_REGISTER_DOCTEMPLATE_EXTENSION(name,modid,key,cond,disp_name,icon_id,app,default,doc_type) \
348     CONDITIONAL_MODULE_ENTRY(name,modid) \
349     REGISTRY_ENTRY_OPEN_WITH_TMPL(name,cond,doc_type,modid,key) \
350     CONDITIONAL_REGISTRY_ENTRY_EXT(name,cond,key) \
351     REGISTRY_ENTRY_DOC(name,modid,disp_name) \
352     REGISTRY_ENTRY_APPUSERMODELID(name,modid,doc_type) \
353     REGISTRY_ENTRY_ICON(name,modid,icon_id) \
354     REGISTRY_ENTRY_SHELL(name,default,modid) \
355     REGISTRY_ENTRY_NEW_CMD(name,modid,app) \
356     REGISTRY_ENTRY_OPEN_CMD(name,modid,app) \
357     REGISTRY_ENTRY_PRINT_CMD(name,modid,app) \
358     REGISTRY_ENTRY_PRINTTO_CMD(name,modid,app) \
359     REGISTRY_ENTRY_TEMPLATE_CAPABILITIES(name,modid,key,doc_type) \
360     REGISTRY_ENTRY_KINDMAP(name, modid, key) \
362 // ---------------------------------------
364 #ifdef _MSC_VER
366 #define REGISTER_PROPERTY_HANDLER_FOR_EXTENSION(extension) \
367     RegistryItem CONCAT2(gid_Regitem_Software_Microsoft_Windows_CurrentVersion_PropertySystem_PropertyHandlers_,extension) \
368         ParentID = PREDEFINED_HKEY_LOCAL_MACHINE; \
369         ModuleID = gid_Module_Optional_Winexplorerext; \
370         ComponentCondition = "VersionNT >= 600"; \
371         Subkey = STRING(CONCAT2(SOFTWARE\Microsoft\Windows\CurrentVersion\PropertySystem\PropertyHandlers\.,extension)); \
372         Value = "{AE424E85-F6DF-4910-A6A9-438797986431}"; \
373     End \
375     RegistryItem CONCAT3(gid_Regitem_Software_Microsoft_Windows_CurrentVersion_PropertySystem_PropertyHandlers_,extension,_x64) \
376         ParentID = PREDEFINED_HKEY_LOCAL_MACHINE; \
377         ModuleID = gid_Module_Optional_Winexplorerext_x64; \
378         ComponentCondition = "VersionNT64 >= 600"; \
379         Subkey = STRING(CONCAT2(SOFTWARE\Microsoft\Windows\CurrentVersion\PropertySystem\PropertyHandlers\.,extension)); \
380         Value = "{AE424E85-F6DF-4910-A6A9-438797986431}"; \
381     End
383 #else
384 #define REGISTER_PROPERTY_HANDLER_FOR_EXTENSION(extension) // empty
385 #endif
387 // ---------------------------------------
389 #if defined WNT
390 #define SCP2_URE_DL_DIR gid_Dir_Ure_Bin
391 #define SCP2_URE_DL_NORMAL(n) n ".dll"
392 #define SCP2_URE_DL_BARE(n) n ".dll"
393 #define SCP2_URE_DL_VER(n, v) n v ".dll"
394 #define SCP2_URE_DL_COMID_VER(n, v) n v STRING(COMID) ".dll"
395 #define SCP2_URE_DL_COMID_NORMAL(n) n STRING(COMID) ".dll"
396 #define SCP2_URE_DL_UNO_VER(n, v) n v ".dll"
397 #define SCP2_URE_DL_UNO_COMID_VER(n, v) n v STRING(COMID) ".dll"
398 #define SCP2_URE_SHARE_DIR gid_Dir_Common_Ure
399 #else
400 #define SCP2_URE_DL_DIR gid_Dir_Ure_Lib
401 #define SCP2_URE_DL_NORMAL(n) "lib" n STRING(UNXSUFFIX)
402 #define SCP2_URE_DL_BARE(n) n STRING(UNXSUFFIX)
403 #define SCP2_URE_DL_VER(n, v) "lib" n STRING(UNXSUFFIX) "." v
404 #define SCP2_URE_DL_COMID_VER(n, v) \
405     "lib" n STRING(COMID) STRING(UNXSUFFIX) "." v
406 #define SCP2_URE_DL_COMID_NORMAL(n) \
407     "lib" n STRING(COMID) STRING(UNXSUFFIX)
408 #define SCP2_URE_DL_UNO_VER(n, v) "libuno_" n STRING(UNXSUFFIX) "." v
409 #define SCP2_URE_DL_UNO_NORMAL(n) "libuno_" n STRING(UNXSUFFIX)
410 #define SCP2_URE_DL_UNO_COMID_VER(n, v) \
411     "libuno_" n STRING(COMID) STRING(UNXSUFFIX) "." v
412 #define SCP2_URE_DL_UNO_COMID_NORMAL(n) \
413     "libuno_" n STRING(COMID) STRING(UNXSUFFIX)
414 #define SCP2_URE_SHARE_DIR gid_Dir_Ure_Share
415 #endif
416 #if defined MACOSX
417 #define SCP2_URE_JDL_NORMAL(n) "lib" n ".jnilib"
418 #else
419 #define SCP2_URE_JDL_NORMAL(n) SCP2_URE_DL_NORMAL(n)
420 #endif
422 #if defined MACOSX
423 #define FILELIST_DIR gid_Dir_Bundle_Contents
424 #define FILELIST_SDK_DIR PREDEFINED_PROGDIR
425 #else
426 #define FILELIST_DIR gid_Dir_Brand_Root
427 #if defined WNT
428 #define FILELIST_SDK_DIR gid_Dir_Sdkoo_Root
429 #else
430 #define FILELIST_SDK_DIR PREDEFINED_PROGDIR
431 #endif
432 #endif
434 #define UI_FILELIST(name, file) \
435     File CONCAT2(gid_File_Share_Config_Sofficecfg_uiconfig_, name) \
436         TXT_FILE_BODY; \
437         Styles = (FILELIST); \
438         Dir = FILELIST_DIR; \
439         Name = file; \
440     End
442 #include <langmacros.inc>
444 #define UI_FILELIST_ALL_LANG(name, file, ext) \
445     File CONCAT3(gid_File_Share_Config_Sofficecfg_uiconfig_, name, _Lang) \
446         TXT_FILE_BODY; \
447         Styles = (FILELIST); \
448         Dir = FILELIST_DIR; \
449         EXTRA_ALL_LANG_BUT_EN_US(file, ext); \
450     End
452 #define URE_PRIVATE_LIB(id,name) \
453     File id \
454         LIB_FILE_BODY; \
455         Dir = SCP2_URE_DL_DIR; \
456         Name = name; \
457         Styles = (PACKED, VERSION_INDEPENDENT_COMP_ID); \
458     End
460 #define GALLERY_NAME(id) \
462 #define GALLERY_FILELIST(id) \
463 File gid_File_Extra_Gall##id \
464     Dir = FILELIST_DIR; \
465     TXT_FILE_BODY; \
466     Styles = (FILELIST, WORKSTATION, DONT_OVERWRITE); \
467     Name = STRING(CONCAT3(Gallery/,id,.filelist)); \
468 End \
469 File gid_File_Extra_GallFiles##id \
470     Dir = FILELIST_DIR; \
471     TXT_FILE_BODY; \
472     Styles = (FILELIST, WORKSTATION, DONT_OVERWRITE); \
473     Name = STRING(CONCAT3(Gallery/Files/,id,.filelist)); \
477 #endif // MACROS_INC