## QPix v2.2 | ## What's new

# What's new in QPix

Versions: 2.2.7 | 2.2.6 | 2.2.5 | 2.2.4 | 2.2.3 | 2.2.2 | 2.2.1 | 2.2 | 2.1.3 | 2.1.2 | 2.1.1 | 2.1 | 2.0

v2.2.7

Bug fixes:

- Calling any QPix command would disable printing in 4D. This would happen when using the Carbon version of the plug-in under Mac OS 9.x. Fixed.
- Identified and corrected a potential issue where the developer license would not be copied to the compiled structure when building compiled or standalone applications with 4D 2003.x.
- It was possible to crash on 4D Server when a client was logging out if at that time the licenses dialog was open. Fixed.

v2.2.6

Bug fixes:

- Under rare circumstances the plug-in could fail to load expansion licenses on Windows. Fixed.
- Fixed a bug where the plug-in could crash after switching to another data file with OPEN DATAFILE or CREATE DATAFILE. MacOS X only.

v2.2.5

Bug fixes:

- On MacOS X QPix would fail to resolve a pathname if the name of the disk contained a slash character ("/"). Fixed.
- In a rare case licenses installed when running under 4D Server would not be saved. Fixed.
- Under certain circumstances QPix could cause long delays during application startup. Fixed.

v2.2.4

Bug fixes:

- When running under 4D Server on MacOS X an error dialog reporting "no stack memory" would pop up continuously. Fixed.
- Under certain circumstances it was possible to loose installed licenses when running under 4D Server on Windows. Fixed.
- Under certain circumstances the file selection dialog would not accept mouse clicks when running the PPC version of the plug-in on MacOS 9. Fixed.

v2.2.3

TWAIN support on MacOS X 10.2

Now that TWAIN is officially available on Jaguar, TWAIN is now opertional in the Carbon version of QPix. Important: QPix Carbon (.4CX) supports TWAIN on Mac OSX only. To call TWAIN on Mac OS 8/9, the classic PPC version of QPix (.4DX) must be used, even when running with the Carbonized version of 4D (6.8.x).

Bug fixes:

- When scanning with TWAIN on Mac OS 8/9 with 4D 6.8.x and QPix.4DX (PPC), some scanner drivers would become irresponsive to clicks and keypresses and the user had to force-quit 4D. Fixed
- Pictures imported through 4D's clipboard on Windows are not properly formatted. QuickTime reports a (illegal) color depth of 96 or 128 and fails on any operation involving such a pict, returning a depth error. Interestingly, most MacOS programs cannot handle these picts either. QPix 2.2.3 introduces workarounds and handles such picts on any platform. Mac/Win.
- The "open image " dialog would keep some files busy after browsing. Fixed. Mac only.
- When filtering the files to be displayed in the "open image " dialog on Mac OS, QPix was testing if each file was a readable image by checking the file type, filename extension, and by validating the image with a suitable graphic importer. This filtering mechanism, although accurate, is slow when browsing directories with lots of images on Mac OS. The validation step is now skipped and browsing speed is back to normal. Mac only.
- When calling a plug-in command on Windows without QT installed, QPix might crash due to a bad check for QuickTime's presence. Fixed. Win only.
- The product name returned by the QPx_GetVersion command now shows whether the plugin is Carbon-based or not. For example, the Carbon version of the plug-in will return "[plug-in name] [version] Carbon", and the corresponding PPC version will return "[plug-in name] [version] PPC". Mac only.
- On some localized systems (Russian, Japanese) 4D would present a syntax error dialog during plug-in initialization and the plug-in would fail to display the license registration dialogs. Fixed. Mac/Win.
- If 4D Client attempted to call a plug-in command when no license seats were available on the server, the plug-in would block program execution instead of faling back into demo mode. This is now fixed; the plug-in will run in demo mode as expected. Mac/Win.

v2.2.2

Bug fixes:

- Fixed a potential crash during startup when running with 4D 6.7.x.
- Fixed a bug that could cause long delays during startup when running with 4D Client on Windows.
- Fixed a problem where the "Escape" menu would become unresponsive when running with 4D Server 6.8.x on Windows.

Known issues:

- Still no TWAIN support in the Carbon version.

v2.2.1

New features:

- QPix now uses the file preview mechanism built into the OS for previewing images in the file selection dialog under MacOS X.
- Server expansions from previous installations are now automatically detected and loaded on server startup.

Bug fixes:

- Restored the names of the TWAIN commands that were accidentally changed in v2.2.
- Fixed a problem with the "Escape" menu on 4D Server under MacOS X and Windows.

Known issues:

- Still no TWAIN support on MacOS X.

v2.2

New features:

- Carbon version runs natively on MacOSX
- Modern plug-in area look using Appearance Manager on MacOSX/MacOS
- Revamped import/export dialogs using Navigation Services on MacOSX/MacOS

Bug fixes:

- Fixed a minor memory leak in QPx_ExportImporterImage.
- Fixed a problem where pasting a picture from the clipboard into the plug-in area would cause a -157 error (qpx_cDepthErr). Windows only.
- Implemented a workaround for some TWAIN drivers that trigger a -29303 error (qpx_twainSourceCapErr). Windows only.
- Implemented a workaround for a Windows-only problem introduced by the ASINTPPC.DLL that ships with 4D 6.7.3/6.8. When clicking on a menu title the background was erased to white.

Known issues:

TWAIN support has been temporarily removed from the MacOSX (Carbon) version because:

- The official Carbon version of the TWAIN Source Manager hasn't been released yet.
- There aren't any MacOS X TWAIN drivers available yet (April 2002).

v2.1.3

Fixed bug:

- The QPx_SetImporterFile command was ignoring the image path parameter and was always returning error -43 (qpx_fnfErr) or -50 (qpx_paramErr).

v2.1.2

Fixed bugs:

- The plug-in version number did not display correctly in the file properties window on Win2K.
- Pasting a picture into a plug-in area would trigger a qpx_cDepthErr error (illegal color depth value) if the picture was originally copied to the clipboard in PictureViewer or in any other QuickTime-based app. Windows only.
- Filter menus are now disabled if no QT effects are available.
- The picture exporting routines would corrupt the exported picture if a specific byte sequence was encountered by the end of the pict.

v2.1.1

New features:

- Added a disclosure triangle control to the Escape Product Licenses (EPL) dialog that shows/hides the product list
- It is now possible to paste text from the clipboard in the Add Expansion Pack dialog (cmd/ctl-v)

Fixed bugs:

- Fixed a problem introduced in 2.1 where the plug-in would not load expansion packs from disk on Windows
- Corrected a documentation error regarding the use of the pixelDepth parameter in the thumbnail generation commands: QPx_GetImageFileThumbnail, QPx_GetPictureThumbnail, QPx_GetImporterImageThumbnail
- Better handling of pictures with custom color tables (actually, a workaround to a PICT importer bug)

v2.1

New features:

- New advanced properties dialog
- Configurable visibility of scrollbars in a scrollable area via the QPx_SetAreaFlags command as well as via the advanced properties dialog
- New inter-plugin api allows a single server-side window to manage the licenses of all Escape plug-ins. Subsequent releases of all plug-ins will also support this api.
- Reworked internal IPTC parser for better parsing of IPTC tags.
- Updated command reference manual with new commands, fixes, and new examples
- Enhanced demo database with filtering examples using 4D slider control to specify filter parameters.

New commands:

- Exporting images to BLOBs:
  - QPx_ExportImageFileToBLOB saves an image file into a BLOB
  - QPx_ExportPictureToBLOB saves a picture variable into a BLOB
  - QPx_ExportImporterImageToBLOB exports a graphics importer image into a BLOB
- QPx_DoExportSettingsDialog displays the export settings dialog for a specific file type and returns the settings in a BLOB.
- QPx_SetPictureResolution changes the horizontal and vertical resolution of a picture variable.
- QPx_GetImporterMetaDataItem extracts individual metadata items as BLOBs, overcoming the 32K limit of QPx_GetImporterMetaData.
- Image area commands:
  - QPx_FlipAreaImage flips the image horizontally, vertically or both
  - QPx_RotateAreaImage rotates the image by a number of degrees
  - QPx_ResizeAreaImage resizes the image
  - QPx_FilterAreaImage applies a filter to the image
  - QPx_InvertAreaImage inverts the colors of the image
  - QPx_CropAreaImage crops the image at the current selection
  - QPx_ExportAreaImage exports the image to file

Modified commands:

- QPx_CompressPicture: a depth paramater equal to 0 was passed directly to QuickTime and the codec would decide the actual compression depth to use. Now QPix compresses the picture at its original depth.
- QPx_GetImporterMetaData: the metadata text array parameter is now optional. This allows for retrieval of only the types of metadata items.
- QPx_ReadImporterImageInPicture renamed to QPx_ReadImporterImageInPict because 4D 6.5+ truncates plug-in command names to 29 characters.

Fixed bugs:

- QPx_CompressPicture was reseting picture resolution to 72 dpi on Windows.
- Some grayscale images did not display correctly because the color table was ignored.
- Routines that return image info were reporting incorrect depth for some grayscale images.
- In all QPx_GetXXXThumbnail commands, color thumbnails would be generated from grayscale images if the depth parameter was set to 0.
- Grayscale images with embedded color tables would be reported (by QuickTime, and consequently by QPix) as color images with depth 8/4/2. QPix now scans the color table in order to report the correct depth (40/36/34).
- Transformed grayscale images (rotate, scale, flip) would appear pixelated due to depth change done internally by QuickTime. QPix now is using its own temporary pixelmap with the correct depth and color table when necessary.
- Some routines that create pictures would create 32 bit picts out of 24 bit images (and vice versa) under certain conditions.
- Sometimes the thumbnail in the filter selection dialog was very ugly.
- Some filters did not produce good results when applied to non-RGB images. QPix now preserves image quality by using a temporary 32-bit pixelmap when necessary.
- Added a workaround for a problem in the "Brightness and Contrast" filter on Windows. The filter was producing incorrect image colors.
- All QPx_ExportXXX commands would not set and/or retrieve the export settings BLOB under some circumstances.
- If the user moved and/or clicked at the image preview of the compression settings dialog, The Mac version of QuickTime would draw over the parent window, or other areas of the screen.
- Fixed a memory leak in QPx_GetAreaPicture Mac.
- Plugged a potential memory leak in the area image filtering code.
- High ascii characters in image pathnames and metadata did not display correctly in the image info dialog.
- QPix did not display the correct product information regarding its license status in the design environment on 4D Client.
- The "About..." dialog of the plugin area did not display the correct product string on 4D Client.
- Fixed a rare condition (in client/server) where QPix would start returning -29008 (no more seats) errors if multiple processes on a single machine were trying to acquire a seat.
- A garbage line could appear beneath or at the right of a QPix area under certain conditions.
- All plug-in area instances were sharing a single instance of the menu bar. This caused incorrect setup of command keys if two or more areas had different tabability settings. Fixed.
- Static text and button labels in the APD no longer use STR# resource references. This fixes a problem where under 6.0.x all those refs resolved to empty strings due to some resource file weirdness.
- Fixed a bug in TWAIN acquisition where the dialog presented by a TWAIN module would close immediately (MacOS).
- Shortcut for resuming image to normal size Cmd-0 was not working because 4D is not passing the event to the plug-in area. Changed to Cmd-*.
- Scrollbars were not updating properly when they were uncovered by dialog boxes on Windows. Fixed.
- QPx_GetFilterList was swapping filter types on Windows due to a bug in QuickTime. QPix now examines the byte ordering of filter types and swaps the bytes if necessary.
- The "Filter..." command could trigger a crash in QuickTime depending on the type of image being filtered (Windows). Fixed.

v2.0

- A new plug-in area with menu bar and image-handling tools (arrow, selection marquee, zoom tool, hand tool).
- Area appearance: correct "sunken" frame, distinctive focus ring.
- Menu commands: import file, import URL (http/ftp/file), acquire, get image and pixelmap information, export, revert, print, crop, select all, flip, rotate, filter, filter again, change image size, zoom in/out. All menu commands can also be executed procedurally.
- Area setup: procedural and by means of the advanced properties dialog.
- Full support of clipboard operations (Cut/Copy/Paste).
- Enterability: can be controlled procedurally or by means of the advanced properties dialog
- Full binding of an area to a 4D field: QPix 1.x would only display picture fields while v2 automatically saves too.
- Selection of image portions: by means of marquee tool, select all, and procedurally. Subsequent possibilities are: cut/copy/crop/filter/invert
- Zoom (6%-1600%): by means of zoom tool, keyboard equivalents, and procedurally.
- Full support of QuickTime filters. QT4 comes with 14 filters including alpha gain, blur, brightness/contrast, color style, color tint, ColorSync, edge detection, emboss, film noise, general convolution, HSL and RGB balance, Lens flare and sharpen. Additional filters are available from third parties.
- Procedural control of scrolling amount: allows fine positioning of the content inside the area.
- Support for multi-image files (TIFF, Photoshop with layers, FlashPix with many resolutions): new importer commands to retrieve the number of images in a container and to get and set the current image index.
- Image metadata: retrieval of textual information that is found in some image files, including copyright, comment, software and IPTC block.
- TWAIN Acquisition: acquire into memory using TWAIN sources. When called from the respective area menu command, displays the acquired image directly into the area.
- Localized plug-in versions: because QPix v2 has interface elements that are accessible by end-users (menu commands, dialogs), national language versions are needed. English, French, German and Japanese localized versions are available.