Subversion Repositories filter_foundry

Rev

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

Rev Author Line No. Line
216 daniel-mar 1
# Changelog
2
 
355 daniel-mar 3
## 1.7.0.11 [Work-In-Progress]
4
- Tab-Order has been changed (*)
5
 
6
(*) This bug/solution was tested on Windows but needs to be verified and/or implemented on Mac.
7
 
354 daniel-mar 8
## 1.7.0.10 [19-Sep-2021]
347 daniel-mar 9
- Introduced obfuscation version 6, which is more secure and 4 times faster!
353 daniel-mar 10
- Warning signs and zoom in/out pictures now have "tool tips" so that you know what will happen if you click them (*)
347 daniel-mar 11
 
353 daniel-mar 12
(*) This bug/solution was tested on Windows but needs to be verified and/or implemented on Mac.
13
 
346 daniel-mar 14
## 1.7.0.9 [12-Sep-2021]
335 daniel-mar 15
- `dmin` has been changed from 0 to -512, `dmax` has been changed from 1024 to 512, and `D` stayed 1024 (`D:=dmax-dmin`), in order to fit the actual ranges of `d`, as implemented in Filter Factory.
16
- `I` is now defined as `imax-imin`. Same with `U` and `V`. Therefore, the variables are now `I=255`, `U=110`, and `V=156`.
341 daniel-mar 17
- Windows: Reading of Mac standalone plugins (rsrc files): The initial values of the sliders are now correctly read, as well as the line-breaks of the copyright-field.
343 daniel-mar 18
- Standalone dialog: Can now have multi-line copyright text (*)
19
- Increased speed of the creation of the preview picture if state-changing functions (put,rnd,rst) are used (reverted change in 1.7b1). The preview might not be accurate at some rare cases, but at least it is now very fast again...
346 daniel-mar 20
- Built filters can now be read by Plugin Manager 2.1 by I.C.NET (Michael Johannhanwahr). Note that not all filters might work, because PluginManager has its own implementation of the FilterFactory functions and might not implemented some previously undocumented functions. It will not implement the newly added pow() function of FilterFactory 3.1.0 / Filter Foundry 1.7 either.
335 daniel-mar 21
 
341 daniel-mar 22
(*) This bug/solution was tested on Windows but needs to be verified and/or implemented on Mac.
23
 
323 daniel-mar 24
## 1.7.0.8 [03-Sep-2021]
281 daniel-mar 25
- Created 8BF standalone filters now contain the correct PE checksum (Note: The original compiled binaries contain "0", compiled with OpenWatcom and Visual C++)
292 daniel-mar 26
- Introduced obfuscation version 5 (it is like version 4, but contains an integrity check); also fixed some smaller issues with obfuscation loading.
294 daniel-mar 27
- Following functions have been changed to a 100% replica of the Filter Factory implementation:
346 daniel-mar 28
	* `rnd(a,b)`
29
	* `cos(x)`
30
	* `sin(x)`
31
	* `tan(x)`
32
	* `r2x(d,m)`
33
	* `r2y(d,m)`
34
	* `rad(d,m,z)`
35
	* `c2d(x,y)`
36
	* `c2m(x,y)`
37
	* `sqr(x)`
38
	* `d`
39
	* `m`
40
	* `M`
298 daniel-mar 41
- The window is now opened on the correct screen (the one where Photoshop is opened). Additionally, it is avoided that the window is spread over multiple screens. (*)
300 daniel-mar 42
- Added new function `pow(b,e)` which are already part of the inofficial Filter Factory 3.1.0 patch by Daniel Marschall.
304 daniel-mar 43
- The previously undocumented variables I, U, V as well as imin, umin, vmin have been changed to represent the actual results of the i,u,v variables:
44
	imin = 0 (stayed the same)
45
	umin = -55 (was 0)
46
	vmin = -78 (was 0)
47
	I, imax = 255 (stayed the same)
48
	U, umax = 55 (was 255)
49
	V, vmax = 78 (was 255)
50
- Added a documentation based on the Filter Factory documentation.
305 daniel-mar 51
- Added a help button which opens the documentation on the web. (*)
308 daniel-mar 52
- For 32/64-bit cross-build, there is now no requirement that both plugin files must be installed anymore.
326 daniel-mar 53
- Windows 95/98/Me: If UNICOWS.DLL is missing (required for building a standalone filter), it will be automatically installed for you (version 1.1.3790.0, signed 07 Dec 2004)
54
- Fixed error where the 8BF manifest file contained garbage data at the end, resulting in the standalone filter having no "XP design"
281 daniel-mar 55
 
298 daniel-mar 56
(*) This bug/solution was tested on Windows but needs to be verified and/or implemented on Mac.
57
 
276 daniel-mar 58
## 1.7.0.7 [08-Aug-2021]
277 daniel-mar 59
- Standalone filters are now created in 32 and 64 bit. To make this work, you need to install FilterFoundry.8bf and FilterFoundry64.8bf in your plug-in directory. (*)
276 daniel-mar 60
- Security improvement: Filters which have been built using obfuscation "V3" or "V4" will now always be treated as protected plugin, even if the obfuscated code has been manipulated.
277 daniel-mar 61
- Introduced obfuscation "V4" (more secure) which stores the seed in the binary code of the 8BF file (*)
270 daniel-mar 62
- Obfuscated "V1" and obfuscated "V2" filters can now be loaded again (as long as they aren't protected)
273 daniel-mar 63
- Windows message box dialogs are now properly "modal" (they have the correct parent window handle), and therefore, they blink when you click at the parent window.
277 daniel-mar 64
- The TPLT (template data) and build dialog resources are now deleted from standalone filters to save space. (*)
278 daniel-mar 65
- "PE header build timestamp" is now set for built standalone filters
270 daniel-mar 66
 
277 daniel-mar 67
(*) This bug/solution was tested on Windows but needs to be verified and/or implemented on Mac.
68
 
269 daniel-mar 69
## 1.7.0.6 [01-Aug-2021]
263 daniel-mar 70
- .pff files (Premiere Filter Factory) are now correctly loaded
264 daniel-mar 71
- Obfuscated standalone filters can now recall the previous settings on GIMP/Irfanview (was disabled in 1.7.0.5, because the temporaray .afs file leaked the obfuscated code).
263 daniel-mar 72
 
261 daniel-mar 73
## 1.7.0.5 [30-Jul-2021]
267 daniel-mar 74
- Changed obfuscation code ("Version 3", now more secure). It is compiler-dependent, therefore the resource cannot be exchanged between plugins
75
- When an obfuscated filter is loaded, it will be checked if the obfuscation worked / is compatible
256 daniel-mar 76
- The feature "Obfuscate" and "Protected" are now merged together.
77
	Reason: Obfuscate without protect makes no sense (since everybody can read/load it using FilterFoundry) and
78
	protect without obfuscate makes no sense (because you can read the formula using a resource editor and even remove the protect flag with a hex editor)
258 daniel-mar 79
- Standalone plugins: Version info wasn't written correctly when plugin was obfuscated. Fixed.
256 daniel-mar 80
 
252 daniel-mar 81
## 1.7.0.4 [27-Jul-2021]
238 daniel-mar 82
- Fixed problem where 32bit Windows plugin tries to load 64bit standalone plugin
250 daniel-mar 83
- Bugfix: Windows Open/Save dialogs: At the title, the first character was missing. Fixed.
243 daniel-mar 84
- Internal change: "Manifest" resource gets individualized in standalone plugins
267 daniel-mar 85
- Internal change: PiPL/Manifest-template is now stored in 'TpTL' instead of 'DATA'/RCDATA. (But obfuscated data stays at 'DATA'/RCDATA)
244 daniel-mar 86
- Bugfix: If you called a standalone filter two times, then the main dialog opened (bug introduced in 1.7.0.3)
247 daniel-mar 87
- Ifanview/GIMP can now also work with standalone filters
250 daniel-mar 88
- If the user tries to open a protected 8BF file, the error message will now state that it can't be opened because the filter is protected
238 daniel-mar 89
 
237 daniel-mar 90
## 1.7.0.3 [23-Jul-2021]
91
- Support BigDocument structure (.psb) (*)
232 daniel-mar 92
 
93
(*) This bug/solution was tested on Windows but needs to be verified and/or implemented on Mac.
94
 
231 daniel-mar 95
## 1.7.0.2 [19-Jul-2021]
216 daniel-mar 96
- Project was forked by Daniel Marschall and released on GitHub. For now, only the Windows version is supported.
97
- Bugfix: If a plugin is called from a recorded Action, a dialog was shown at the first start, even if dialogs were disabled.
98
- Bugfix: Variable `d` now works like FilterFactory/FilterFoundy1.6 again. (Bug introduced in FilterFoundry 1.7b1 due to the change of the `c2d()` function)
99
  NOTE: FilterFactory uses `c2d(x,y) := atan2(y,x)`, but `d := atan2(-y,-x)`. Due to compatibility reasons, we implement it the same way!
100
- Bugfix: Standalone filters did not show the correct "About" dialog
222 daniel-mar 101
- FilterFoundry is now AppleScript aware (*)
216 daniel-mar 102
- Fixed various smaller things and improved the source code building process
222 daniel-mar 103
- Map labels are centered between two sliders, like in Filter Factory (*)
226 daniel-mar 104
- AFS files: Improved interoperability (read/write) with Filter Factory in regards "line break" characters
230 daniel-mar 105
- "About dialog" shows if the plugin is a 32 bit or 64 bit plugin
106
- "Original filename" version info attribute now correctly shows "FilterFoundry64.8bf" for 64 bit build
107
- Left "beta" state
216 daniel-mar 108
 
222 daniel-mar 109
(*) This bug/solution was tested on Windows but needs to be verified and/or implemented on Mac.
110
 
216 daniel-mar 111
## 1.7b1 [20-Sep-2019]
112
- First release by Daniel Marschall
113
- Fixed crash at filter startup when the computer had too much RAM.
114
- Fixed crash where built obfuscated filters could not be opened.
267 daniel-mar 115
- Changed format of obfuscated filters ("Version 2"). It is now compiler-independant.
216 daniel-mar 116
- Added function `rst(i)` which is an undocumented function in Filter Factory for setting a random seed.
117
- Size PARM_SIZE in PARM resource corrected.
118
- Added Visual Studio project file, and extended NMake script to support flex and bison compilation.
119
- Dialogs (build dialog, open and save dialogs) are now modal, i.e. the main window is locked when they are open. (*)
120
- The preview dialog has now a hand cursor. (Open hand on hover. Grabbing hand on panning) (*)
121
- Dialog boxes now have a "X" button to close the window.
122
- Preview: Checkerboard does only move when the panning succeeded (the picture didn't go off border)
123
- Bugfix: In the preview window, you could (virtually) pan the image beyond the canvas, so that you needed to pan multiple times in the opposite direction to get to the position "0" again.
124
- The "version information" of standalone filters is now individualized by the creator's input
125
- Win64 support (*)
126
- All undocumented symbol aliases of FilterFactory are now supported (`rmin`, `rmax`, `cnv0`, etc.)
127
- Bugfix: In some cases, the preview image had a small stripe of random pixels at the right or bottom.
128
- For disabled sliders, the corresponding label is now also grayed out (*)
129
- Bugfix: In standalone filters, the unused `ctl()` labels were not hidden. They are now invisible as intended.
130
- Bugfix: At standalone filters, the `map` text was not displayed; instead, the two `ctl` texts were displayed.
131
- AFS Files are now compatible with FilterFactory. (FilterFactory does ONLY understand `"\r"` (0D) linebreaks, while FilterFoundry always saved `"\n"` (0A) linebreaks, while being able to read `"\r"`, `"\n"` or `"\r\n"`. Now, `"\r"` is used for saving.) (*)
132
- The "caution" sign that indicates an error in the expression now has a hand cursor that shows up when you hover over the icon, to indicate that the user will receive more information if they click on the icon (*)
133
- The "caution" sign now has a sharper design (it was a bit pixelated).
134
- The expression input fields now have a vertical scrollbar (*)
135
- YUV formulas are now more accurate. They are slightly different, but not much.
136
	* The i range is now [0..255] instead of [0..254].
137
	   (This means that pure white has now i=255 instead of i=254)
138
	* The u range stays at [-55..55].
139
	* The v range is now [-78..78] instead of [-77..77].
140
- Bugfix: If `ctl()` or `map()` was called with a non-constant argument, the controls in the build dialogs were not correctly enabled/disabled, and built standalone filters did not get the correct "needs UI" flag. Fixed.
141
- In the build dialog, if `map()` was used, the corresponding `ctl()`-labels now can't be changed anymore, since the resulting standalone filter won't show them anyway.
142
- Warning dialogs (`alertuser` and `simplealert` function) are now modal. (*)
143
- Bugfix: Trigonometry functions sin and cos had wrong output ranges for Windows (it was -1024..1024 instead of the documented output range -512..512). Fixed.
144
- Bugfix: Trigonometry function tan now behaves like in Filter Factory
145
- Bugfix: Function `c2d()` now behaves like in Filter Factory. Implementation changed from `atan2(-y,-x)` to atan2(y,x).
146
- Bugfix: The cell values used by the functions `get()` and `put()` were not (re-)initialized before the filter started running. This caused that expressions like `put(get(0)+1,0)` produced different results at each run.
147
- Adobe Premiere FilterFactory/TransitionFactory filters (`.pff` Settings and `.prm` 16/32 bit Windows Standalone Filters) can now be imported (*)
148
- Old FilterFactory standalone filters for macOS can now be imported (*)
149
- In Windows, the "load" algorithm will now first check if a file is an AFS/PFF file, and then if it is a standalone filter. Due to this, files can now be opened, even if they have the wrong file extension.
150
- Bugfix: When state-changing functions (rst, rnd or put) are used within the formula, every pixel in the picture will now be evaluated during preview, even if the user has zoomed in.
151
- Fixed "off by one" bug where you could pan a fit-zoomed picture by 1 pixel in the preview
152
- The preview area now has a dark off-canvas area and for Windows, a "sunken" border
153
- Windows: Visual Styles are now supported and always be applied
154
- Bugfix: If you click the zoom level-caption for a tiny picture, the zoom ("fit zoom") won't zoom in to >100% anymore.
155
- Building standalone filters is now possible with Windows 9x. (Requires compilation using an old Windows SDK, or compilation using OpenWatcom)
156
- Fixed TLV lengths in the PIPL structure (includes now paddings). This might solve incompatibilities with non-Photoshop hosts (i.e. GIMP).
157
- GIMP (using PSPI to load 8BF plugins) and IrfanView is now compatible.
158
- `c2m()` and `sqr()` are now approximately 3 times faster
159
- Build of plugins with empty titles or categories will now be prevented since plugins with empty categories or titles won't be shown in the filter menu.
232 daniel-mar 160
- Fixed Actions (recording/playback). Several things like the AETE resource were broken. The classID had to be changed to `'Fltr'` so that the parameters are shown in the Photoshop Action tab. (*)
216 daniel-mar 161
- Scripting/Actions: For standalone filters, the name of the sliders are now written in the "Actions" tab. The function `fixaete()` was replaced with `aete_generate()`. (*)
162
- `MaxSpace64` will now be used, if supported by the host
163
 
164
(*) This bug/solution was tested on Windows but needs to be verified and/or implemented on Mac.
165
 
166
## 1.6b1 [07-Jun-2009]
167
- Clean up for 64-bit Windows build
168
 
169
## 1.5b6 [26-Aug-2007]
170
- Associativity of `?`: operator (Harald Heim)
171
 
172
## 1.5b4 [02-Aug-2007]
173
- Fix debug message spotted by Daniel Denk
174
 
175
## 1.5b3 [13-Jul-2007]
176
- Add instrumentation to try to find CS3/Intel Mac "Make standalone" problem.
177
 
178
## 1.5b1,2 [19-Feb-2007]
179
- Support remaining 8-bit image modes (wishlist proposal)
180
 
181
## 1.4b7 [18-Feb-2007]
182
- Swap +/- zoom controls to match Photoshop builtins
183
 
184
## 1.4b8,9,10
267 daniel-mar 185
- Simple parameter obfuscation ("Version 1") in standalone plugins (wishlist #7)
216 daniel-mar 186
 
187
## 1.4b6 [16-Feb-2007]
188
- Lowercase default file extensions (wishlist #1)
189
 
190
## 1.4b5 [02-Feb-2007]
191
- Minor changes to image sampling logic (`ff_src()`, `rawsrc()`)
192
 
193
## 1.4b4 [01-Feb-2007]
194
- `cnv()` no longer requests the entire filtered image in one piece; can now work in chunks to improve the handling of edge pixels when filtering selection
195
 
196
## 1.4b3 [01-Feb-2007]
197
- In `cnv()`, repeat pixels at the edge of the image, instead of using zero (reported by Daniel Denk)
198
 
199
## 1.4b2 [31-Jan-2007]
200
- Fix selection bug reported by Daniel Denk
201
 
202
## 1.4b1 [04-Jan-2007]
203
- Universal Binary on OS X (PPC+Intel)
204
 
205
## 1.3b2 [01-Sep-2006]
206
- Fix standalone UI bugs (thanks Craig Bickford)
207
 
208
## 1.3b1 [05-Jun-2006]
209
- Fix `x`, `y`, `X`, `Y`, `M` variables to use selection extent instead of image size (per Eiji Nishidai)
210
 
211
## 1.2b4 [06-May-2006]
212
- Fix minor AFS saving bug
213
 
214
## 1.2b3 [25-Mar-2006]
215
- Include `R`, `G`, `B`, `A`, `C`, `i`, `U`, `V` undocumented(?) constants (per Harald Heim)
216
 
217
## 1.2b2 [23-Mar-2006]
218
- New release
219
 
220
## 1.2b1 [22-Mar-2006]
221
- Read parameters from Windows .8BF Filter Factory standalone plugins, in Mac version
222
 
223
## 1.1f9,10 [21-Mar-2006]
224
- Improve file filtering on OS X (parse Windows-style extension filter)
225
 
226
## 1.1f7,8 [18-Mar-2006]
227
- Safer handling of previewing very large images, and clarify an out-of-memory message
228
 
229
## 1.1f6 [17-Mar-2006]
230
- Fix loading of Filter Factory saved PARM data on Windows
231
 
232
## 1.1f4,5 [16-Mar-2006]
233
- Add default extension AFS, 8BF for file saving (thanks Daniel Denk)
234
 
235
## 1.1f3 [26-Feb-2006]
236
- Fix plugin DLL extension; fix many source code warnings
237
 
238
## 1.1f2 [18-Jan-2006]
239
- Fix CS2/Mac build (missing fields in PiPL); scripting parameters were being ignored (!!)
240
 
241
## 1.1f1 [03-Oct-2005]
242
- Fix dialog behavior on repeated filter application
243
 
244
## 1.1b11 [22-Jul-2005]
245
- Merge changes to fix parameter bug reported by Demitrios Vassaras
246
 
247
## 1.1b10 [25-Jun-2005]
248
- Can make "standalone" Mach-O bundles
249
 
250
## 1.1b9 [24-Jun-2005]
251
- Mach-O build for CS2/Mac
252
 
253
## 1.1b5 [11-Feb-2005]
254
- Cosmetic fixes in Mac dialog (right justify slider text, etc)
255
 
256
## 1.1b6 [11-Feb-2005]
257
- Fix aete key (hash) calculation for standalone plugins to obey Adobe's stated rules
258
 
259
## 1.1b7 [11-Feb-2005]
260
- Aaaargh fix the stupid hex handling bug in the lexer
261
 
262
## 1.1b8 [11-Feb-2005]
263
- Remove dbg call in lexer (it's late :( )
264
 
265
## 1.1b3 [10-Feb-2005]
266
- Various mostly cosmetic cleanups; switch to GNU flex and bison in Makefile
267
- Use a monospaced font in Win expression text controls
268
 
269
## 1.1b4 [10-Feb-2005]
270
- Fix crash blooper in make.c (`fixpipl`)
271
 
272
## 1.1b1 [09-Feb-2005]
273
- Incl aete for Windows
274
 
275
## 1.1b2 [09-Feb-2005]
276
- Oops, forgot scripting.r (aete resource) in 68K build
277
 
278
## 1.1a1 [06-Feb-2005]
279
- Scripting support
280
 
281
## 02-Feb-2005
282
- Add Win VERSIONINFO
283
 
284
## 1.0f6 [20-Dec-2004]
285
- Fix bug in `rad(d,m,z)` -- wasn't relative to centre of image! Also `ff_c2d`, needed to negate x and y arguments to `atan2()`
286
 
287
## 1.0f5 [25-Sep-2004]
288
- Remove debug calls in Win build (!!) - thanks Shiro Akaishi; fix RC EDITTEXT syntax
289
 
290
## 1.0f4 [23-May-2004]
291
- Include missing license (!)
292
 
293
## 1.0f3 [21-Mar-2004]
294
- Alert when `pb->inData` is `NULL` - temporary workaround for crash bug
295
 
296
## 1.0f2 [20-Mar-2004]
297
- Fix code to blank margins of the preview... hunting David Owen's crash
298
 
299
## 1.0f1 [21-Feb-2004]
300
- GPL source release
301
 
302
## 1.0b2 [06-Feb-2004]
303
- Fix bufferSpace computation (Prepare call)
304
 
305
## 1.0b1 [31-Jan-2004]
306
- Finally fix Win32 standalone filters - building and running
307
 
308
## 0.9b6 [28-Jan-2004]
309
- Fix problems with making standalone on Mac (thanks Chris Greene)
310
 
311
## 0.9b5 [21-Jul-2003]
312
- Fix crash on About box (!!)
313
 
314
## 0.9b4 [19-May-2003]
315
- Fix Make... suggested file name bug
316
 
317
## 0.9b3 [17-May-2003]
318
- Add Harry's suggestions: skip comments; other bugfixes
319
 
320
## 0.9b2 [17-May-2003]
321
- Fix `dmin`/`mmin` crash
322
 
323
## 0.9b1 [16-May-2003]
324
- Added `cnv()` function, `dmin`, `mmin`
325
 
326
## 0.8b5 [31-Mar-2003]
327
- Windows version can create standalone (?) NT platform only
328
 
329
## 0.8b4 [28-Mar-2003]
330
- Windows version can load PARM resource
331
 
332
## 0.8b3 [26-Mar-2003]
333
- Switch to "universal" PowerPC build in one file (inspired by Harald Heim)
334
 
335
## 0.8b1 [23-Mar-2003]
336
- Can now make standalone filters (Mac only)
337
 
338
## 0.7b2 [18-Mar-2003]
339
- Check for direct host callbacks before using them (preview)
340
 
341
## 0.7b1 [16-Mar-2003]
342
- Read Mac PARM resources
343
 
344
## 0.6b4 [16-Mar-2003]
345
- Fix `map()`
346
 
347
## 0.6b3 [16-Mar-2003]
348
- Windows preview pannable
349
 
350
## 0.6b1,2 [16-Mar-2003]
351
- Zoomable preview
352
 
353
## 0.5b7 [15-Mar-2003]
354
- Mac version uses edit controls, theme, is movable
355
 
356
## 0.5b6 [13-Mar-2003]
357
- Finally caught divide-by-zero in Win version
358
 
359
## 0.5b4 [08-Mar-2003]
360
- First Mac 68K build (CW1)
361
 
362
## 0.5b1 [04-Mar-2003]
363
- First Windows beta released
364
 
365
## 0.4b7,8,9,10 [02-Mar-2003]
366
 
367
## 0.4b4,5,6 [01-Mar-2003]
368
- Finally! Live sliders
369
 
370
## 0.4b1 [27-Feb-2003]
371
- With preview
372
 
373
## 0.3b3,b4 [25-Feb-2003]
374
 
375
## 0.3b1,b2 [24-Feb-2003]
376
 
377
## 0.1b1,0.2b1 [23-Feb-2003]
378
- Released 0.1b1,0.2b1
379
 
380
## 0.1b1 [22-Feb-2003]
381
- Started 0.1b1