Subversion Repositories filter_foundry

Rev

Rev 178 | Rev 186 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 toby 1
/*
18 toby 2
    This file is part of "Filter Foundry", a filter plugin for Adobe Photoshop
171 dmarschall 3
    Copyright (C) 2003-2019 Toby Thain, toby@telegraphics.com.au
2 toby 4
 
5
    This program is free software; you can redistribute it and/or modify
106 dmarschall 6
    it under the terms of the GNU General Public License as published by
2 toby 7
    the Free Software Foundation; either version 2 of the License, or
8
    (at your option) any later version.
9
 
10
    This program is distributed in the hope that it will be useful,
11
    but WITHOUT ANY WARRANTY; without even the implied warranty of
12
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
    GNU General Public License for more details.
14
 
106 dmarschall 15
    You should have received a copy of the GNU General Public License
2 toby 16
    along with this program; if not, write to the Free Software
17
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18
*/
19
 
20
#include "PIResDefines.h"
21
#include "PIActions.h"
22
 
23
#include "ui.h"
24
#include "version.h"
25
 
26
#define LC(a,b,c,d)		#d, #c, #b, #a
27
 
28
#define VENDORID LC(8,B,I,M)
29
#define NULLID 0L
30
 
133 dmarschall 31
/* Note: make_win.c writes language 0. So, this should be language 0, too, otherwise the standalone filter would have 2 languages for this resource. */
32
LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL
2 toby 33
16000  PiPL  DISCARDABLE
34
BEGIN
35
	0x0001, 		/* Reserved (for Photoshop) */
36
	0L, 			/* kCurrentPiPLVersion */
37
	8L, 			/* Property Count */
106 dmarschall 38
 
164 dmarschall 39
	VENDORID, LC(c,a,t,g), NULLID, 16L, "\014Telegraphics\0\0\0", /* PString */
40
	VENDORID, LC(n,a,m,e), NULLID, 20L, "\021Filter Foundry...\0\0", /* PString */
178 dmarschall 41
 
42
/* HasTerminology { plugInClassID, plugInEventID, AETE_ID, vendorName " " plugInName }, */
43
VENDORID, LC(h,s,t,m), NULLID, 44L, /* = 3*4 + 2 + sizeof(c string) + padding */
44
	0L,								/* version */
45
	LC(F,l,t,r),					/* Class ID, always required.  Can be Suite ID. */
46
	LC(f,i,F,o),					/* Event ID, or typeNULL if not Filter/Color Picker/Selection. */
47
	AETE_ID,						/* Dictionary ('AETE') resource ID. (only 2 bytes long!) */
48
	"Telegraphics FilterFoundry\0\0\0\0" /* Unique scope string, C format, long padded.
49
											Always required in Photoshop 5.0 and later. */
50
 
51
 
2 toby 52
#include "PiPL_body.rc"
106 dmarschall 53
 
2 toby 54
END
55
 
133 dmarschall 56
LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL
2 toby 57
16000  RCDATA  DISCARDABLE
58
BEGIN
59
	0x0001, 		/* Reserved (for Photoshop) */
60
	0L, 			/* kCurrentPiPLVersion */
178 dmarschall 61
	5L, 			/* Property Count */
106 dmarschall 62
 
2 toby 63
#include "PiPL_body.rc"
106 dmarschall 64
 
2 toby 65
END
66
 
67
/*	Dictionary (scripting) resource */
68
/* also see ui.h */
69
 
70
/*
71
#define NO_REPLY		\
72
	noReply,			\
73
	"",					\
74
	replyRequired,	singleItem,	notEnumerated,	notTightBindingFunction,	\
75
	reserved,		reserved,	reserved,		reserved,					\
76
	reserved,		reserved,	reserved,		reserved,					\
77
	verbEvent,		reserved,	reserved,		reserved
78
#define IMAGE_DIRECT_PARAMETER	\
79
	typeImageReference,			\
80
	"",							\
81
	flagsOptionalEnumeratedChangesDirect
82
#define flagsOptionalEnumeratedChangesDirect	\
83
	directParamOptional,	singleItem,	enumerated,	changesState,	\
84
	reserved,				reserved,	reserved,	reserved,		\
85
	reserved,				reserved,	reserved,	reserved,		\
86
	reserved,				reserved,	reserved,	reserved
87
#define flagsSingleParameter					\
88
	required,			singleItem,		notEnumerated,	reserved,	\
89
	reserved,			reserved,		reserved,		reserved,	\
90
	reserved,			reserved,		reserved,		reserved,	\
91
	prepositionParam,	notFeminine,	notMasculine,	singular
92
#define flagsSingleProperty						\
93
	reserved,			singleItem,		notEnumerated,	readWrite,	\
94
	reserved,			reserved,		reserved,		reserved,	\
95
	reserved,			reserved,		reserved,		reserved,	\
96
	noApostrophe,		notFeminine,	notMasculine,	singular
97
*/
98
#define RC_NO_REPLY \
99
	LC(n,u,l,l),	/*noReply*/ \
100
	"\0", \
178 dmarschall 101
	0x0000 /* 00 000 000 00 000 000 */
2 toby 102
#define RC_IMAGE_DIRECT_PARAM \
178 dmarschall 103
	"RmI#"/*LC(#,I,m,R)*/,	/*typeImageReference; written as string because the Stringizing operator cannot handle '#' */ \
2 toby 104
	"\0", \
178 dmarschall 105
	0xB000 /* 10 110 000 00 000 000 */
106 dmarschall 106
 
184 dmarschall 107
#define FLAGS_SINGLE_PROP	0x1000 /* 00 010 000 00 000 000 */
108
#define FLAGS_1_OPT_PARAM	0x8000 /* 10 000 000 00 000 000 */
2 toby 109
 
110
#define RC_typeChar			LC(T,E,X,T)
111
#define RC_typeInteger		LC(l,o,n,g)
112
 
113
/* Nota Bene: UNLIKE the Macintosh format of the 'aete' resource,
114
   the Windows resource does NOT have word alignment constraints
115
   after its embedded strings. */
116
 
133 dmarschall 117
/* Note: make_win.c writes language 0. So, this should be language 0, too, otherwise the standalone filter would have 2 languages for this resource. */
118
LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL
2 toby 119
AETE_ID aete
120
{
184 dmarschall 121
	// Attention! If you change something here, please also change it in make.c and scripting.r (Mac OS)
122
 
2 toby 123
	0x0001, 		/* Reserved (for Photoshop) */
124
 
125
	"\1\0", english, roman,				/* aete version and language specifiers */
126
 
127
	1, /*suites*/
128
		"\014Telegraphics",				/* vendor suite name */
129
		"\0",							/* optional description */
130
		LC(t,E,L,E),					/* suite ID */
184 dmarschall 131
		1,								/* suite code, must be 1. Attention: Filters like 'Pointillize' have set this to 0! */
132
		1,								/* suite level, must be 1. Attention: Filters like 'Pointillize' have set this to 0! */
2 toby 133
 
134
		1, /*events*/					/* structure for filters */
135
 
62 toby 136
			"\015FilterFoundry",		/* event name               */
137
			"\0",						/* event description        */
178 dmarschall 138
			LC(F,l,t,r),				/* event class              */
62 toby 139
			LC(f,i,F,o),				/* event ID                 */
2 toby 140
			RC_NO_REPLY,
141
			RC_IMAGE_DIRECT_PARAM,
142
			12,
143
				"\001R", LC(x,p,r,R), RC_typeChar, "\024R channel expression", FLAGS_1_OPT_PARAM,
144
				"\001G", LC(x,p,r,G), RC_typeChar, "\024G channel expression", FLAGS_1_OPT_PARAM,
145
				"\001B", LC(x,p,r,B), RC_typeChar, "\024B channel expression", FLAGS_1_OPT_PARAM,
146
				"\001A", LC(x,p,r,A), RC_typeChar, "\024A channel expression", FLAGS_1_OPT_PARAM,
147
				"\004ctl0", LC(c,T,l,0), RC_typeInteger, "\016ctl(0) setting", FLAGS_1_OPT_PARAM,
148
				"\004ctl1", LC(c,T,l,1), RC_typeInteger, "\016ctl(1) setting", FLAGS_1_OPT_PARAM,
149
				"\004ctl2", LC(c,T,l,2), RC_typeInteger, "\016ctl(2) setting", FLAGS_1_OPT_PARAM,
150
				"\004ctl3", LC(c,T,l,3), RC_typeInteger, "\016ctl(3) setting", FLAGS_1_OPT_PARAM,
151
				"\004ctl4", LC(c,T,l,4), RC_typeInteger, "\016ctl(4) setting", FLAGS_1_OPT_PARAM,
152
				"\004ctl5", LC(c,T,l,5), RC_typeInteger, "\016ctl(5) setting", FLAGS_1_OPT_PARAM,
153
				"\004ctl6", LC(c,T,l,6), RC_typeInteger, "\016ctl(6) setting", FLAGS_1_OPT_PARAM,
154
				"\004ctl7", LC(c,T,l,7), RC_typeInteger, "\016ctl(7) setting", FLAGS_1_OPT_PARAM,
155
 
156
		0, /*classes*/					/* non-filter plug-in class here */
157
 
158
		0, /* comparison ops (not supported) */
159
 
160
		0, /* any enumerations */
161
 
162
	0L /* padding */
163
}