Preparing a resource DLL for UNIX systems
For Linux (UNIX):
This section applies only to VA Smalltalk for UNIX systems.
The UNIX operating system does not directly support resource DLLs. If you are building applications for UNIX only, you can build your icons using an icon editor and use them directly in VA Smalltalk by specifying the file name in the appropriate settings view.
If you are building an application for deployment on multiple platforms, you can take advantage of the same icon mapping facility that VA Smalltalk uses to provide portability. To exploit this mapping facility, do the following:
1. Build the resource DLL on an OS/2 machine just as you would for OS/2.
2. Create a text file with the same name as your OS/2 DLL, without an extension. For this example the file is named userpal, and looks like the following:
icon 800 MiscIcon/athltcat.ico
icon 801 MiscIcon/runner.ico
icon 802 MiscIcon/world.ico
Put this file in the VA Smalltalk (startup) directory or in a directory specified in the bitmapPath path in your abt.ini file. VA Smalltalk uses this file to locate your actual icon files.
3. Copy the icons and bitmaps to your UNIX machine. Place these files in the MiscIcon subdirectory of the directory specified in the bitmapPath path. The file name specification must match that in the mapping file you created, including case. For this example, assume bitmapPath looks like the following:
bitmapPath=/home/guest/myicons:/home/guest/mybitmaps
When VA Smalltalk needs to access icon 801 in the userpal module, it searches as follows:
a. <startupDir>/MiscIcon/runner.ico
b. /home/guest/myicons/MiscIcon/runner.ico
c. /home/guest/mybitmaps/MiscIcon/runner.ico
 
Note:
When an OS/2 icon file contains multiple formats, VA Smalltalk selects the largest format available (normally 40 by 40). When an icon or bitmap cannot be found, VA Smalltalk uses a solid white icon or bitmap instead.
You can include icons and bitmaps in the same DLL and mapping file.
Last modified date: 05/14/2020