A SERVICE OF

logo

4 FileMaker Pro Advanced Development Guide
XML elements and their theme attributes 35
Valid values for theme attributes 37
Specifying default values for themes 40
Using values for patterns and colors 40
Adding comments to theme files 41
Checking theme files for errors 41
Chapter 5
Developing third-party FileMaker plug-ins 43
About external functions 43
About the example plug-in 43
Installing, enabling, and configuring the example plug-in 45
Description of the FMExample plug-in’s external functions 46
Using the example plug-in 46
Customizing the plug-in example 48
Customizing the example resources 48
Customizing FMPluginExample.cpp 48
Customizing FMPluginPrefs.cpp 48
Customizing FMPluginFunctions.cpp 48
Requirements for writing external function plug-ins 49
API code files 49
Option string syntax 49
Naming conventions for external functions 50
FileMaker messages sent to the plug-in 50
Initialization message 50
Shutdown message 51
Idle message 51
Preferences message 52
External Function message 52
GetString message 52
Avoiding potential Mac OS X resource conflicts 52
Providing documentation for your plug-in 53
Registering your plug-in 53
Revising a registered plug-in 53
Chapter 6
Debugging, analyzing, and optimizing files 55
Debugging and troubleshooting scripts 55
Stepping through scripts 55
Viewing sub-scripts 56
Monitoring fields, variables, and calculations 57
Disabling script steps 58
Documenting database schemas 59
Troubleshooting files with the DDR HTML output 60
Compressing and optimizing files 60
Chapter 7
Using the Developer Utilities 63
Overview of preparing your solution files 63
Modifying database solution files 64
Creating an error log 66
Considerations for a runtime database solution 66
Checking file references 67
Binding files for both platforms 68
Binding databases into runtime database solutions 68
Choosing filenames for runtime database solutions 69
Assigning three-character filename extensions 69
Setting the binding key 70
Modifying bound runtime files 71
Saving and reusing Developer Utilities settings 71
Modifying a set of solution settings 71
Converting and upgrading solution files 72
Importing data into upgraded runtime solutions 72
Removing full access privileges from databases 73