Subversion Repositories filter_foundry

Rev

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

Rev Author Line No. Line
186 dmarschall 1
/*
2
    This file is part of "Filter Foundry", a filter plugin for Adobe Photoshop
192 daniel-mar 3
    Copyright (C) 2003-2009 Toby Thain, toby@telegraphics.com.au
4
    Copyright (C) 2018-2019 Daniel Marschall, ViaThinkSoft
186 dmarschall 5
 
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
8
    the Free Software Foundation; either version 2 of the License, or
9
    (at your option) any later version.
10
 
11
    This program is distributed in the hope that it will be useful,
12
    but WITHOUT ANY WARRANTY; without even the implied warranty of
13
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
    GNU General Public License for more details.
15
 
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
18
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19
*/
20
 
21
#include "PIResDefines.h"
22
#include "PIActions.h"
23
 
24
#include "ui.h"
25
#include "version.h"
26
 
27
#define LC(a,b,c,d)		#d, #c, #b, #a
28
 
29
#define VENDORID LC(8,B,I,M)
30
#define NULLID 0L
31
 
32
/*	Dictionary (scripting) resource */
33
/* also see ui.h */
34
 
35
/*
36
#define NO_REPLY		\
37
	noReply,			\
38
	"",					\
39
	replyRequired,	singleItem,	notEnumerated,	notTightBindingFunction,	\
40
	reserved,		reserved,	reserved,		reserved,					\
41
	reserved,		reserved,	reserved,		reserved,					\
42
	verbEvent,		reserved,	reserved,		reserved
43
#define IMAGE_DIRECT_PARAMETER	\
44
	typeImageReference,			\
45
	"",							\
46
	flagsOptionalEnumeratedChangesDirect
47
#define flagsOptionalEnumeratedChangesDirect	\
48
	directParamOptional,	singleItem,	enumerated,	changesState,	\
49
	reserved,				reserved,	reserved,	reserved,		\
50
	reserved,				reserved,	reserved,	reserved,		\
51
	reserved,				reserved,	reserved,	reserved
52
#define flagsSingleParameter					\
53
	required,			singleItem,		notEnumerated,	reserved,	\
54
	reserved,			reserved,		reserved,		reserved,	\
55
	reserved,			reserved,		reserved,		reserved,	\
56
	prepositionParam,	notFeminine,	notMasculine,	singular
57
#define flagsSingleProperty						\
58
	reserved,			singleItem,		notEnumerated,	readWrite,	\
59
	reserved,			reserved,		reserved,		reserved,	\
60
	reserved,			reserved,		reserved,		reserved,	\
61
	noApostrophe,		notFeminine,	notMasculine,	singular
62
*/
63
#define RC_NO_REPLY \
64
	LC(n,u,l,l),	/*noReply*/ \
65
	"\0", \
66
	0x0000 /* 00 000 000 00 000 000 */
67
#define RC_IMAGE_DIRECT_PARAM \
68
	"RmI#"/*LC(#,I,m,R)*/,	/*typeImageReference; written as string because the Stringizing operator cannot handle '#' */ \
69
	"\0", \
70
	0xB000 /* 10 110 000 00 000 000 */
71
 
72
#define FLAGS_SINGLE_PROP	0x1000 /* 00 010 000 00 000 000 */
73
#define FLAGS_1_OPT_PARAM	0x8000 /* 10 000 000 00 000 000 */
74
 
75
#define RC_typeChar			LC(T,E,X,T)
76
#define RC_typeInteger		LC(l,o,n,g)
77
 
78
/* Nota Bene: UNLIKE the Macintosh format of the 'aete' resource,
79
   the Windows resource does NOT have word alignment constraints
80
   after its embedded strings. */
81
 
82
/* 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. */
83
LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL
84
AETE_ID aete
85
{
86
	// Attention! If you change something here, please also change it in make.c and scripting.r (Mac OS)
87
 
88
	0x0001, 		/* Reserved (for Photoshop) */
89
 
90
	"\1\0", english, roman,				/* aete version and language specifiers */
91
 
92
	1, /*suites*/
93
		"\014Telegraphics",				/* vendor suite name */
94
		"\0",							/* optional description */
95
		LC(t,E,L,E),					/* suite ID */
96
		1,								/* suite code, must be 1. Attention: Filters like 'Pointillize' have set this to 0! */
97
		1,								/* suite level, must be 1. Attention: Filters like 'Pointillize' have set this to 0! */
98
 
99
		1, /*events*/					/* structure for filters */
100
 
101
			"\015FilterFoundry",		/* event name               */
102
			"\0",						/* event description        */
103
			LC(F,l,t,r),				/* event class              */
104
			LC(f,i,F,o),				/* event ID                 */
105
			RC_NO_REPLY,
106
			RC_IMAGE_DIRECT_PARAM,
107
			12,
108
				"\001R", LC(x,p,r,R), RC_typeChar, "\024R channel expression", FLAGS_1_OPT_PARAM,
109
				"\001G", LC(x,p,r,G), RC_typeChar, "\024G channel expression", FLAGS_1_OPT_PARAM,
110
				"\001B", LC(x,p,r,B), RC_typeChar, "\024B channel expression", FLAGS_1_OPT_PARAM,
111
				"\001A", LC(x,p,r,A), RC_typeChar, "\024A channel expression", FLAGS_1_OPT_PARAM,
112
				"\004ctl0", LC(c,T,l,0), RC_typeInteger, "\016ctl(0) setting", FLAGS_1_OPT_PARAM,
113
				"\004ctl1", LC(c,T,l,1), RC_typeInteger, "\016ctl(1) setting", FLAGS_1_OPT_PARAM,
114
				"\004ctl2", LC(c,T,l,2), RC_typeInteger, "\016ctl(2) setting", FLAGS_1_OPT_PARAM,
115
				"\004ctl3", LC(c,T,l,3), RC_typeInteger, "\016ctl(3) setting", FLAGS_1_OPT_PARAM,
116
				"\004ctl4", LC(c,T,l,4), RC_typeInteger, "\016ctl(4) setting", FLAGS_1_OPT_PARAM,
117
				"\004ctl5", LC(c,T,l,5), RC_typeInteger, "\016ctl(5) setting", FLAGS_1_OPT_PARAM,
118
				"\004ctl6", LC(c,T,l,6), RC_typeInteger, "\016ctl(6) setting", FLAGS_1_OPT_PARAM,
119
				"\004ctl7", LC(c,T,l,7), RC_typeInteger, "\016ctl(7) setting", FLAGS_1_OPT_PARAM,
120
 
121
		0, /*classes*/					/* non-filter plug-in class here */
122
 
123
		0, /* comparison ops (not supported) */
124
 
125
		0, /* any enumerations */
126
 
127
	0L /* padding */
128
}