Subversion Repositories filter_foundry

Rev

Rev 526 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 526 Rev 536
1
/*
1
/*
2
    This file is part of "Filter Foundry", a filter plugin for Adobe Photoshop
2
    This file is part of "Filter Foundry", a filter plugin for Adobe Photoshop
3
    Copyright (C) 2003-2009 Toby Thain, toby@telegraphics.com.au
3
    Copyright (C) 2003-2009 Toby Thain, toby@telegraphics.net
4
    Copyright (C) 2018-2021 Daniel Marschall, ViaThinkSoft
4
    Copyright (C) 2018-2021 Daniel Marschall, ViaThinkSoft
5
 
5
 
6
    This program is free software; you can redistribute it and/or modify
6
    This program is free software; you can redistribute it and/or modify
7
    it under the terms of the GNU General Public License as published by
7
    it under the terms of the GNU General Public License as published by
8
    the Free Software Foundation; either version 2 of the License, or
8
    the Free Software Foundation; either version 2 of the License, or
9
    (at your option) any later version.
9
    (at your option) any later version.
10
 
10
 
11
    This program is distributed in the hope that it will be useful,
11
    This program is distributed in the hope that it will be useful,
12
    but WITHOUT ANY WARRANTY; without even the implied warranty of
12
    but WITHOUT ANY WARRANTY; without even the implied warranty of
13
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
    GNU General Public License for more details.
14
    GNU General Public License for more details.
15
 
15
 
16
    You should have received a copy of the GNU General Public License
16
    You should have received a copy of the GNU General Public License
17
    along with this program; if not, write to the Free Software
17
    along with this program; if not, write to the Free Software
18
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19
*/
19
*/
20
 
20
 
21
#include "PIResDefines.h"
21
#include "PIResDefines.h"
22
#include "PIActions.h"
22
#include "PIActions.h"
23
 
23
 
24
#include "ui.h"
24
#include "ui.h"
25
#include "version.h"
25
#include "version.h"
26
 
26
 
27
#define LC(a,b,c,d) #d, #c, #b, #a
27
#define LC(a,b,c,d) #d, #c, #b, #a
28
 
28
 
29
/* 8BIM = Adobe Photoshop */
29
/* 8BIM = Adobe Photoshop */
30
#define VENDORID LC(8,B,I,M)
30
#define VENDORID LC(8,B,I,M)
31
 
31
 
32
#define NULLID 0L
32
#define NULLID 0L
33
 
33
 
34
#define doesSupportBitmap           128 // flagSupportsBitmap
34
#define doesSupportBitmap           128 // flagSupportsBitmap
35
#define doesSupportGrayScale         64 // flagSupportsGrayScale
35
#define doesSupportGrayScale         64 // flagSupportsGrayScale
36
#define doesSupportIndexedColor      32 // flagSupportsIndexedColor
36
#define doesSupportIndexedColor      32 // flagSupportsIndexedColor
37
#define doesSupportRGBColor          16 // flagSupportsRGBColor
37
#define doesSupportRGBColor          16 // flagSupportsRGBColor
38
#define doesSupportCMYKColor          8 // flagSupportsCMYKColor
38
#define doesSupportCMYKColor          8 // flagSupportsCMYKColor
39
#define doesSupportHSLColor           4 // flagSupportsHSLColor
39
#define doesSupportHSLColor           4 // flagSupportsHSLColor
40
#define doesSupportHSBColor           2 // flagSupportsHSBColor
40
#define doesSupportHSBColor           2 // flagSupportsHSBColor
41
#define doesSupportMultichannel       1 // flagSupportsMultichannel
41
#define doesSupportMultichannel       1 // flagSupportsMultichannel
42
#define doesSupportDuotone        32768 // (flagSupportsDuotone << 8)    RC doesn't know <<8, nor *256 !
42
#define doesSupportDuotone        32768 // (flagSupportsDuotone << 8)    RC doesn't know <<8, nor *256 !
43
#define doesSupportLABColor       16384 // (flagSupportsLABColor << 8)   RC doesn't know <<8, nor *256 !
43
#define doesSupportLABColor       16384 // (flagSupportsLABColor << 8)   RC doesn't know <<8, nor *256 !
44
 
44
 
45
/* Note: make_win.c writes language 0. So, this should be language 0, too,
45
/* Note: make_win.c writes language 0. So, this should be language 0, too,
46
   otherwise the standalone filter would have 2 languages for this resource. */
46
   otherwise the standalone filter would have 2 languages for this resource. */
47
LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL
47
LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL
48
16000  PIPL  DISCARDABLE
48
16000  PIPL  DISCARDABLE
49
BEGIN
49
BEGIN
50
	0x0001,     /* Reserved (for Photoshop) */
50
	0x0001,     /* Reserved (for Photoshop) */
51
	0L,         /* kCurrentPiPLVersion */
51
	0L,         /* kCurrentPiPLVersion */
52
	14L,        /* Property Count */
52
	14L,        /* Property Count */
53
 
53
 
54
	VENDORID, LC(c,a,t,g), NULLID, 16L, "\014Telegraphics\0\0\0",    /* PString */
54
	VENDORID, LC(c,a,t,g), NULLID, 16L, "\014Telegraphics\0\0\0",    /* PString */
55
	VENDORID, LC(n,a,m,e), NULLID, 20L, "\021Filter Foundry...\0\0", /* PString */
55
	VENDORID, LC(n,a,m,e), NULLID, 20L, "\021Filter Foundry...\0\0", /* PString */
56
 
56
 
57
	/* Component { MainComponentVersion, "Filter Foundry" }, */
57
	/* Component { MainComponentVersion, "Filter Foundry" }, */
58
	/* Note: Length 20 must be divisible by 4 */
58
	/* Note: Length 20 must be divisible by 4 */
59
	VENDORID, LC(c,m,p,t), NULLID, 20L, MainComponentVersion, "Filter Foundry\0\0", /* CString */
59
	VENDORID, LC(c,m,p,t), NULLID, 20L, MainComponentVersion, "Filter Foundry\0\0", /* CString */
60
 
60
 
61
	/* HasTerminology { plugInClassID, plugInEventID, AETE_ID, ""  }, */
61
	/* HasTerminology { plugInClassID, plugInEventID, AETE_ID, ""  }, */
62
	VENDORID, LC(h,s,t,m), NULLID, 16L, /* = 3*4 + 2 + sizeof(c string) + padding */
62
	VENDORID, LC(h,s,t,m), NULLID, 16L, /* = 3*4 + 2 + sizeof(c string) + padding */
63
	0L,                /* version */
63
	0L,                /* version */
64
	LC(F,l,t,r),       /* Class ID, always required.  Must be eventFilter='Fltr' to show up in "Actions" tab. (PITerminology.h:eventFilter) */
64
	LC(F,l,t,r),       /* Class ID, always required.  Must be eventFilter='Fltr' to show up in "Actions" tab. (PITerminology.h:eventFilter) */
65
	LC(f,i,F,o),       /* Event ID, or typeNULL if not Filter/Color Picker/Selection. */
65
	LC(f,i,F,o),       /* Event ID, or typeNULL if not Filter/Color Picker/Selection. */
66
	AETE_ID,           /* Dictionary ('AETE') resource ID. (only 2 bytes long!) */
66
	AETE_ID,           /* Dictionary ('AETE') resource ID. (only 2 bytes long!) */
67
	/*"Telegraphics FilterFoundry\0\0\0\0"*/
67
	/*"Telegraphics FilterFoundry\0\0\0\0"*/
68
	/* Unique scope string, C format, long padded. If set, the plugin will only communicate with the host (Photoshop), not with AppleScript. */
68
	/* Unique scope string, C format, long padded. If set, the plugin will only communicate with the host (Photoshop), not with AppleScript. */
69
	/* Beginning with 1.7.0.2, we accept AppleScript, since the AETE keys are now randomly chosen for each standalone plugin. */
69
	/* Beginning with 1.7.0.2, we accept AppleScript, since the AETE keys are now randomly chosen for each standalone plugin. */
70
	"\0\0"
70
	"\0\0"
71
 
71
 
72
	#ifdef _WIN64
72
	#ifdef _WIN64
73
		VENDORID, LC(8,6,6,4), NULLID, 12L, "PluginMain\0\0",  /* Entrypoint Name (Long Word padded C String) */
73
		VENDORID, LC(8,6,6,4), NULLID, 12L, "PluginMain\0\0",  /* Entrypoint Name (Long Word padded C String) */
74
	#else
74
	#else
75
		VENDORID, LC(w,x,8,6), NULLID, 12L, "PluginMain\0\0",  /* Entrypoint Name (Long Word padded C String) */
75
		VENDORID, LC(w,x,8,6), NULLID, 12L, "PluginMain\0\0",  /* Entrypoint Name (Long Word padded C String) */
76
	#endif
76
	#endif
77
 
77
 
78
	// Here come 8 properties: kind, vers, prty, mode, ms32, flly, enbl, fici
78
	// Here come 8 properties: kind, vers, prty, mode, ms32, flly, enbl, fici
79
	#include "PiPL_body.rc"
79
	#include "PiPL_body.rc"
80
 
80
 
81
	/* Object Identifier attribute */
81
	/* Object Identifier attribute */
82
	/* Note that 'ViaT' is not an official creator code for ViaThinkSoft and it is unclear where a creator code can be aquired from... */
82
	/* Note that 'ViaT' is not an official creator code for ViaThinkSoft and it is unclear where a creator code can be aquired from... */
83
	/* Note: Length 24 must be divisible by 4 */
83
	/* Note: Length 24 must be divisible by 4 */
84
	LC(V,i,a,T), LC(O,b,I,d), NULLID, 24L, "1.3.6.1.4.1.37476.2.72\0\0",
84
	LC(V,i,a,T), LC(O,b,I,d), NULLID, 24L, "1.3.6.1.4.1.37476.2.72\0\0",
85
END
85
END
86
 
86
 
87
LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL
87
LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL
88
16032  TPLT  DISCARDABLE
88
16032  TPLT  DISCARDABLE
89
BEGIN
89
BEGIN
90
	0x0001,       /* Reserved (for Photoshop) */
90
	0x0001,       /* Reserved (for Photoshop) */
91
	0L,           /* kCurrentPiPLVersion */
91
	0L,           /* kCurrentPiPLVersion */
92
	9L,           /* Property Count */
92
	9L,           /* Property Count */
93
	VENDORID, LC(w,x,8,6), NULLID, 12L, "PluginMain\0\0",  /* Entrypoint Name (Long Word padded C String) */
93
	VENDORID, LC(w,x,8,6), NULLID, 12L, "PluginMain\0\0",  /* Entrypoint Name (Long Word padded C String) */
94
 
94
 
95
	// Here come 8 properties: kind, vers, prty, mode, ms32, flly, enbl, fici
95
	// Here come 8 properties: kind, vers, prty, mode, ms32, flly, enbl, fici
96
	#include "PiPL_body.rc"
96
	#include "PiPL_body.rc"
97
END
97
END
98
 
98
 
99
LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL
99
LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL
100
16064  TPLT  DISCARDABLE
100
16064  TPLT  DISCARDABLE
101
BEGIN
101
BEGIN
102
	0x0001,       /* Reserved (for Photoshop) */
102
	0x0001,       /* Reserved (for Photoshop) */
103
	0L,           /* kCurrentPiPLVersion */
103
	0L,           /* kCurrentPiPLVersion */
104
	9L,           /* Property Count */
104
	9L,           /* Property Count */
105
	VENDORID, LC(8,6,6,4), NULLID, 12L, "PluginMain\0\0",  /* Entrypoint Name (Long Word padded C String) */
105
	VENDORID, LC(8,6,6,4), NULLID, 12L, "PluginMain\0\0",  /* Entrypoint Name (Long Word padded C String) */
106
 
106
 
107
	// Here come 8 properties: kind, vers, prty, mode, ms32, flly, enbl, fici
107
	// Here come 8 properties: kind, vers, prty, mode, ms32, flly, enbl, fici
108
	#include "PiPL_body.rc"
108
	#include "PiPL_body.rc"
109
END
109
END