Version history:
Release notes for version 10.5 - 17th November 2020
New functions in 10.5 and Announcement in blog.
- Added feature for macOS to show matching brackets highlighted in calculation editor.
- Added a zoom button for inspector palette to scale content to 125%.
- Added WindowsML functions to do machine learning on Windows 10.
- Added 60 second timeout to WebView.Evaluate for macOS to avoid endless loops.
- Added Animate parameter for macOS to Window.SetBounds function.
- Added AVExport.ReleaseAll, AVRecorder.ReleaseAll, CoreML.ReleaseAll, DNSLookup.ReleaseAll, Dictionary.ReleaseAll, FM.SQL.ReleaseAll, JS.ReleaseAll, JavaScript.ReleaseAll, LDAP.ReleaseAll, PDFKit.ReleaseAll, PKCS12.ReleaseAll, PKCS7.ReleaseAll, PKey.ReleaseAll, SSH.ReleaseAll, WinSendMail.ReleaseAll, WindowsML.ReleaseAll, WordFile.ReleaseAll, and X509.ReleaseAll.
- Added AVPlayer.GetShowsSubtitles and AVPlayer.SetShowsSubtitles function.
- Added CFunction.ReleaseAll, CGImageSource.ReleaseAll, CLibrary.ReleaseAll, DynaPDF.ReleaseAll, ECKey.ReleaseAll, FSEvents.ReleaseAll, MarkDown.ReleaseAll, MenuItem.ReleaseAll, SendMail.ReleaseAll, Shell.ReleaseAll, SmartCard.ReleaseAll, TouchBar.ReleaseAll, UserNotification.ReleaseAll, WMFP.ReleaseAll, WMIQuery.ReleaseAll and WindowsUserNotification.ReleaseAll.
- Added CNContactStore.ContactsMatchingEmailAddress and CNContactStore.ContactsMatchingPhoneNumber functions.
- Added CUPS.GetPrintersAsJSON and CUPS.GetJobsAsJSON functions.
- Added DynaPDF.DrawNGon, DynaPDF.GetDefaultBarcodeParameters and DynaPDF.InsertBarcode functions.
- Added DynaPDF.GetAnnotationAsJSON, DynaPDF.GetColorSpaceAsJSON, DynaPDF.GetEmbeddedFileAsJSON, DynaPDF.GetFieldAsJSON and DynaPDF.GetFontAsJSON functions.
- Added DynaPDF.GetAnnotationsAsJSON, DynaPDF.GetBookmarksAsJSON, DynaPDF.GetColorSpacesAsJSON, DynaPDF.GetDocInfoAsJSON, DynaPDF.GetEmbeddedFilesAsJSON, DynaPDF.GetFieldsAsJSON, DynaPDF.GetFontsAsJSON, DynaPDF.GetImportDocInfoAsJSON and DynaPDF.SysFontInfoAsJSON functions.
- Added DynaPDF.GetDescent function.
- Added Files.ListAsJSON function to list files and return it as JSON.
- Added flags for JSON.GetArrayItem, so result can be JSON, reference or now value.
- Added FM.SQL.JSONColumn function.
- Added FontManager.ImageWithSystemSymbolName function to query images for symbol names.
- Added List.FindDuplicateItems and QuickList.FindDuplicateItems functions.
- Added Matrix.CSVSplit function.
- Added Matrix.ReleaseAll and renamed Matrix.Free to Matrix.Release.
- Added more TextView functions: TextView.GetSelectedStyledText, TextView.SetSelectedStyledText, TextView.GetSelectedHTMLText, TextView.SetSelectedHTMLText, TextView.GetSelectedRTF, TextView.SetSelectedRTF, TextView.GetSelectedPlainText, TextView.SetSelectedPlainText, TextView.GetSelectionStart, TextView.SetSelectionStart, TextView.GetSelectionLength, TextView.SetSelectionLength, and TextView.SetSelection.
- Added Plugin.GetFunctionPlatforms function.
- Added Realm Parameter for CURL.SetupOAuth function.
- Added SyntaxColoring.ShowBracketPositions.GetEnabled and SyntaxColoring.ShowBracketPositions.SetEnabled functions.
- Added SystemInfo.AppUsageStatistics function.
- Added SystemInfo.CPULoad function.
- Added SystemInfo.MachoArchInfo function.
- Added SystemSymbolName selector for ImageCapture.DeviceInfo function.
- Added XL.CopyColumn function.
- Added XL.Sheet.AddDataValidation and XL.Sheet.RemoveDataValidations functions.
- Added XL.Sheet.CellReadValue function.
- Added ZUGFeRD 2.x names for the Conformance Types enum for DynaPDF.CheckConformance function.
- Changed DynaPDF.Print to tell printer dialog that we are okay with collate and copies, so that option may get enabled on supporting printer drivers.
- Changed Files.CreateDirectory to create folders recursively on Windows, too.
- Changed JSON.ToXML to unpack attributes with just @ in front.
- Changed our Database Design Dialog enhancements to hide if the underlaying SQL queries fail.
- Changed ScriptID display in Script Workspace to hide column if we fail to query script names list.
- Changed SQL functions to better work together with Actual Tech SQL Server ODBC Drivers.
- Changed TextView functions to disable syntax colorizing for them.
- Changed XML.ToJSON and added option for compacter attributes processing.
- Deprecated CUPS.GetPrinterCount, CUPS.GetPrinterDefault, CUPS.GetPrinterName, CUPS.GetJobCompletionTime, CUPS.GetJobCreationTime, CUPS.GetJobFormat, CUPS.GetJobID, CUPS.GetJobIndex, CUPS.GetJobPrinter, CUPS.GetJobPriority, CUPS.GetJobProcessingTime, CUPS.GetJobSize, CUPS.GetJobState, CUPS.GetJobTitle, CUPS.GetJobUser and CUPS.GetJobsCount function.
- Deprecated SystemInfo.MacHasHardwareAcceleratedCoreImage and SystemInfo.MacVRAMSize functions.
- Fixed a bug with Script Workspace not showing full script names when using the plugin.
- Fixed a deadlock with WebView.Evaluate waiting endless for JavaScript answer and newer macOS versions.
- Fixed a problem with CURL.GetResultAsEMailList sometimes reported an extra erroneous email.
- Fixed a problem with loading libiconv.dll on Windows.
- Fixed an issue with EmailParser not converting email texts without iconv loaded.
- Fixed an issue with FileDialogWatcher.Install function.
- Fixed crash with AVRecorder.StartPreview, AVRecorder.AddPreviewWithControl and AVRecorder.AddPreviewToWindow if you call those twice.
- Fixed CURL.AddInputFile, CURL.AddInputGIF, CURL.AddInputJPEG, CURL.AddInputPDF, CURL.AddInputPNG and CURL.AddInputText.
- Fixed GraphicsMagick functions to not use clock_gettime function on macOS 10.11 or older, where it didn't exists. Broken in 10.4.
- Fixed main thread warning for UNNotification.IsRegisteredForRemoteNotifications function.
- Fixed memory leak in DynaPDF.SetReplaceICCProfileData function.
- Fixed memory leaks in BinaryFile.WriteContainer, Container.ReadImage, Vision.ClassifyImage, Vision.DetectBarcode and Vision.RecognizeText functions.
- Fixed memory leaks in CURL.SetInputJPEG, CURL.SetInputPNG, CURL.SetInputPDF, CURL.SetInputGIF and CURL.SetInputFile not freeing container. Broken with 10.0.
- Fixed memory leaks in WebView.Create on Windows and WebView functions.
- Fixed printer name matching for Printer.SetDefaultPrinter function.
- Fixed problem in DynaPDF functions where we set erroneously a default font for you (since v10.3).
- Fixed problem with Events.Item.RecurrenceRules expecting additional parameter.
- Fixed problem with script workspace where editing inline calculation would remove new line characters when updating coloring.
- Fixed problem with WebView.Create creating two web viewers with parameter zero.
- Fixed SyntaxColoring.GetScriptHighlightColor to return empty result if no color was set.
- Implemented WebView.RenderPDF for WebKit 2 for macOS with Safari 14 or newer.
- Improved App.GetDockBadgeLabel and App.SetDockBadgeLabel for iOS to not cause warning message.
- Improved cleanup for DynaPDF.Release.
- Improved column handling for Script ID column to align it right.
- Improved DragDrop functions for Windows to better draw transparent control. Changes of underlaying controls may look through, but not update live.
- Removed dependency to VCRuntime140_1.dll by avoiding some C++ functions. 10.4 needed that DLL.
- Renamed JS.Free to JS.Release for consistency. Old name stays valid.
- Updated CURL library to version 7.73.0.
- Updated DynaPDF to version 4.0.44.123.
- Updated freetype library to version 2.10.4.
- Updated LibXL to version 3.9.2.
- Updated OpenSSL to version 1.1.1h.
- Updated SQLAPI to version 5.1.3b3.
- Updated Xcode to version 12.1
Release notes for version 10.4 - 15th September 2020
New functions in 10.4 and Announcement in blog.
- Added WindowsLocation functions to query location of PC on Windows 7 or newer.
- Added Archive.ExtractFile function.
- Added CoreLocation.requestLocation function for macOS.
- Added CURL.GetEffectiveMethod and CURL.GetRetryAfter functions.
- Added CURL.GetOptionCustomRequest, CURL.GetOptionPostFields, CURL.GetOptionURL and CURL.GetOptionUserName functions.
- Added FileDialogWatcher.GetLastPath and FileDialogWatcher.Install for Windows in addition for macOS, but doesn't work as FileMaker uses older APIs.
- Added GMImage.GetFontFamily, GMImage.GetFontStretch, GMImage.GetFontStyle, GMImage.GetFontWeight, GMImage.SetFontFamily, GMImage.SetFontStretch, GMImage.SetFontStyle and GMImage.SetFontWeight functions.
- Added GMImage.ListTypeInfo function.
- Added GMImage.MagickVersion function.
- Added ImageCapture.SetItemsAddedScript function.
- Added iOSApp.ReadReceipt function to read iOS and Mac App Store receipts.
- Added JSON.GetArrayItems function to work with huge JSON arrays.
- Added ListDialog.GetUsesAlternatingRowBackgroundColors and ListDialog.SetUsesAlternatingRowBackgroundColors functions.
- Added menu entry for help menu to show MBS Preferences dialog easier.
- Added prefix/postfix operator for List.IndexOfFirstValueMatching, QuickList.IndexOfFirstValueMatching, List.CountValuesMatching and QuickList.CountValuesMatching.
- Added RemoveAll and ReturnNewList parameters to QuickList.RemoveDuplicateItems function.
- Added SSH.ConfigureKeepAlive function.
- Added SyntaxColoring.HelpMenu.SetEnabled and SyntaxColoring.HelpMenu.GetEnabled functions.
- Added Text.FilterASCII function.
- Added TextView.GetStyledText, TextView.SetStyledText and TextView.AppendStyledText functions.
- Added Trace.GetServerLogPath and Trace.SetServerLogPath functions. Allows to have one trace log file per thread.
- Added UNNotification.AddFile and UNNotification.AddImage functions.
- Applied SQLAPI patch for SADateTime.
- Changed Audit.SetIgnoreSummaryFields and Audit.SetIgnoreCalculations to clear field cache, so the setting is applied sooner.
- Changed CURL.SetOptionIssuerCertBlob, CURL.SetOptionProxyIssuerCert, CURL.SetOptionProxyIssuerCertBlob, CURL.SetOptionProxySSLCertBlob, CURL.SetOptionProxySSLKeyBlob, CURL.SetOptionSSLCertBlob and CURL.SetOptionSSLKeyBlob to replace line endings for keys to LF if needed.
- Changed Email.Verify to have flags as second parameter. We keep 1 for network check and add 2 as an option to return the name of the mail server domain.
- Changed Go To Line box for Script Workspace to hide if it's coming close to window title.
- Changed JSON.ToXML to recreate attributes stored as @attributes entry by XML.ToJSON function.
- Deprecated MatrixDongle functions.
- Fixed a crash in Audit functions when querying GetFieldID internally. Affects Audit.Backup, Audit.Backup2, Audit.Changed, Audit.Changed2, Audit.Delete and Audit.Delete2 functions.
- Fixed an issue where Audit.Changed would rebuild the table cache too often.
- Fixed an issue with CURL.SetOptionPostFields to accept > 8 MB in size of post data.
- Fixed bug in XML.NodeCount and XML.NodeNames, where root node was counted when we had no children.
- Fixed FM.RunDatabaseDesignReport and FM.RunSaveAsXML to pass directory for macOS again. If possible we now skip the save dialog and tell FileMaker where to save directly.
- Fixed issue with MBSInit.framework.
- Fixed issue with future FileMaker 19 version.
- Fixed month for JS.UTCDateToTime function.
- Fixed problem with EmailParser functions causing crash with parsing invalid email header.
- Fixed Socket.Write functions to properly return error instead of -1 in case of errors.
- Fixed SystemInfo.CPUBrandString for Windows 64-bit.
- Fixed time zone issue in Time.TimeStampToUTC with Windows with daylight saving.
- Implemented Files.FolderSize for iOS and Linux.
- Improved Audit.Changed and related to only query table list once per call.
- Improved AVExport.SetTimeRange to return error with invalid time given.
- Improved copy/cut/paste for editing script calculations.
- Improved Socket functions to better return errors. Socket.AvailableBytes, Socket.Write or Socket.Read functions now return an error when socket is disconnected or otherwise broken.
- Improved text encoding handling for XML Parsing in XML functions, Menu.DefineQuickMenuXML and Clipboard functions.
- Optimized per thread storage for Windows in Visual Studio 2019.
- Rewrote Hotkey functions for Windows to use official API. May prevent from duplicate registration and a hotkey processed in FileMaker is no longer passed to other apps.
- Rewrote plugin to show notification again on macOS in case a plugin function reports an error.
- Updated bzip2 library to version 1.0.8.
- Updated CURL to version 7.72.0.
- Updated DynaPDF to version 4.0.41.118 with ZUGFeRD 2.1.
- Updated GraphicsMagick library to version 1.3.35.
- Updated jpeg library to version 9d.
- Updated pcre library to version 8.44.
- Updated SQLAPI to 5.1.1.
- Updated SQLite to version 3.33.0. This includes decimal extension now.
- Updated to Xcode 10.6.
- Upgraded Visual Studio from 2008 to 2019 and rebuild everything. See blog post.
Release notes for version 10.3 - 21st July 2020
New functions in 10.3 and Announcement in blog.
- Added CLibrary and CFunction functions to load C libraries and call functions.
- Added SharingService functions.
- Added Windows support for WebView.Create using IE engine.
- Added Audit.GetIgnoreRepetitions and Audit.SetIgnoreRepetitions functions.
- Added AVRecorder.AddPreviewWithControl function.
- Added Base64URL as output option for RSA.Sign, CURL.ReceiveData, Files.ReadFile, Hash.DigestFile, Hash.Digest, Encryption.Cipher and for other functions as text encoding parameter.
- Added ColorPanel.GetAlpha and ColorPanel.SetAlpha functions.
- Added ColorPanel.GetColorName function.
- Added Command-Shift-F shortcut for Mac to directly jump to FileMaker's search field to find scripts in script workspace. Command-F for our script search.
- Added ContentType and ContentHeaders parameter for CURL.FormAddKeyContainer, CURL.FormAddKeyFile, CURL.FormAddKeyText and CURL.FormAddKeyValue.
- Added create folder button for FileDialog.SelectFolderDialog function on MacOS.
- Added CURL.SetOptionIssuerCertBlob, CURL.SetOptionProxyIssuerCert, CURL.SetOptionProxyIssuerCertBlob, CURL.SetOptionProxySSLCertBlob, CURL.SetOptionProxySSLKeyBlob, CURL.SetOptionSSLCertBlob and CURL.SetOptionSSLKeyBlob functions.
- Added DragDrop.GetPicture for Windows to get PNG, JPEG and GIF from drop.
- Added DragDrop.GetSVG function.
- Added DragDrop.GetTypes for Windows to get list of types.
- Added DynaPDF.FlushPagesEx and DynaPDF.ResetAnnotAP functions.
- Added Files.StandardizePath function.
- Added GMImage.GetZPL function.
- Added GMImage.Ping and GMImage.PingContainer functions.
- Added gmt parameter for Time.UnixTimeStamp function.
- Added Hex and Base64 as text encodings, so lots of functions can take those and decode/encode automatically.
- Added HotKey.UnregisterAll function.
- Added iOS support for WebView.SetPrintParameter and WebView.GetPrintParameter. Currently only supporting JobName and Orientation as settings.
- Added Java.DefineClass and Java.FindClass functions.
- Added JSON.GetBooleanValue function.
- Added JSON.ToXML function.
- Added Matrix.Multiply function.
- Added new prefix parameter for Text.AddLineNumbers function.
- Added numeric mode for List.CountValuesMatching, List.IndexOfFirstValueMatching, QuickList.CountValuesMatching and QuickList.IndexOfFirstValueMatching functions.
- Added option for Base64URL encoding to Hash.MD5, Hash.MD5.HMAC, Hash.SHA1, Hash.SHA1.HMAC, Hash.SHA256, Hash.SHA256.HMAC, Hash.SHA512 and Hash.SHA512.HMAC functions.
- Added option to Hash.PBKDF2.HMAC to pass digest names returned by Encryption.DigestNames function, so SHA3 works.
- Added option to LDAP.AddJSON and LDAP.ModifyJSON to include boolean keys "hex" and "base64" in JSON with true value to pass values as hex/base64 string, which the plugin decodes and passes to LDAP server.
- Added rotation parameter for AVRecorder.AddPreviewWithControl function.
- Added script name comment to copied scripts.
- Added Shell.GetBufferSize and Shell.SetBufferSize functions.
- Added Socket.EnableKeepAlive function.
- Added SSH.Tunnel.GetConnected function.
- Added support for non global repeating fields to Audit functions.
- Added SystemInfo.isARM function.
- Added SystemInfo.isBigSur and SystemInfo.isTranslated functions.
- Added type parameter for CGImageSource.SetProperty function.
- Added type parameter for SQL.SetParamAsText function to pick text, CLob or LongChar as type.
- Added version parameter for WebView.Create to pick WebKit 2 and added iOS support.
- Added webSecurityEnabled and CrossOriginResourcePolicyEnabled keys for WebView.SetPreferences function.
- Added WebView.CreateWithControl and WebView.SetFrameWithControl functions.
- Added WebView.ShowDebugBar function to show DebugBar for IE 11.
- Added WebView.Version function.
- Added X509.ValidNotAfter and X509.ValidNotBefore functions.
- Added XL.Sheet.CellWriteTextAsNumber, XL.Sheet.GetFirstFilledCol, XL.Sheet.GetFirstFilledRow, XL.Sheet.GetLastFilledCol and XL.Sheet.GetLastFilledRow functions.
- Changed CURL debug output with progress using CURL.SetDebugWithProgress to not show upload and download progress if you are only downloading or uploading.
- Changed DynaPDF functions to use Helvetica 12pt as fallback font if you write text to a new page without setting font.
- Changed HotKey.Unregister function to take list of reference numbers.
- Changed ImagePicker.Present to center camera image if controls are disabled.
- Changed stored license handling for iOS to now show expired dialog when an old license is stored in preferences file.
- Changed WIA.ImageDialog and WIA.SelectDeviceDialog to call FM.InitMessageFilter internally to avoid running into COM error dialogs.
- Deprecated Addressbook functions in favor of Contacts functions.
- Deprecated DragDrop.CreateOnPopoverWithControl, DragDrop.CreateOnPopoverWithSize, TextView.CreateOnPopoverWithControl, TextView.CreateOnPopoverWithSize and WebView.CreateOnPopover functions.
- Deprecated RunTask functions in favor of Shell functions.
- Deprecated Social functions as Apple deprecated those.
- Deprecated SocialComposer functions.
- Deprecated Validate functions.
- Disabled RichText.ReadHTML for server to avoid someone calling it there.
- Fixed an edge case with FM.Loop function where start and end value are zero.
- Fixed AVPlayer.SetTime function to pass correct time.
- Fixed AVRecorder.StartPreview for iOS to position layer correctly.
- Fixed bug in IKScannerDevicePanel functions which prevented IKScannerDevicePanel.ImageCount function to report right count.
- Fixed JSON.GetPathItem to not complain about out of bounds if option value 2 is used.
- Fixed parameters for Events.Participant.Person function.
- Fixed Plugin.CompileDate to get day right.
- Fixed PrintDialog.SetConfiguration function.
- Fixed problem on iOS with AVRecorder.CaptureStillPhoto function.
- Fixed problem where editing the expression of an IF line in Script Workspace would remove line breaks.
- Fixed problem with exception in PDFKit.GetLastSettings, PageSetupDialog.GetLastSettings and PrintDialog.GetLastSettings functions.
- Fixed problem with MetaDataQuery.Results not returning JSON.
- Fixed SystemInfo.MACAddress to not add extra double points on the end.
- Fixed Text.EncodeToHTML to handle single apostrophes correctly.
- Fixed time zone handling for Time.UnixTimeStamp and Time.UnixTimeStampToFileMaker functions.
- Fixed Window.Scrollbar.set function for iOS.
- Improved ImagePicker functions to avoid NSInternalInconsistencyException when presenting picker.
- MBS FileMaker Plugin compiles for Apple Silicon, so we are ready.
- Referencing window by name on iOS will fallback to main window if window is not found.
- Removed older code paths for Audit functions for FileMaker 10 and older. Now FileMaker 11 is minimum.
- Removed TextView.CreateWithWindow function.
- Rewrote also DragDrop.SetFrame, ImageView.SetFrame, MapView.SetFrame and TextView.SetFrame.
- Rewrote Audit functions to use SQL parameters, so we can log emojis and avoid SQL injections.
- Rewrote control placement for MacOS and iOS controls for AVPlayer.AddView, DragDrop.CreateWithControl, ImageView.CreateWithControl, MapView.CreateWithControl, TextView.CreateWithControl, WebView.CreateWithControl.
- Rewrote control placement for MacOS and iOS controls for AVPlayer.SetFrameWithControl, DragDrop.SetFrameWithControl, ImageView.SetFrameWithControl, MapView.SetFrameWithControl TextView.SetFrameWithControl, WebView.SetFrameWithControl.
- Rewrote CURL.UseSystemCertificates function to work better.
- Rewrote Font.Activate and Font.Deactivate for newer macOS versions.
- Rewrote parts of AVRecorder.AddPreviewToWindow and WebView.Create for Mac/iOS to work better. Positioning is now relative to top/left of FileMaker content.
- Tuned the syntax coloring rules for dark mode. You may need to use SyntaxColoring.FactoryDefaults to reset settings for dark mode.
- Updated CURL to version 7.71.1.
- Updated DynaPDF to version 4.0.40.116.
- Updated LCMS to version 2.11.
- Updated LibXL to version 3.9.1.
- Updated SQL Plugin to SQLAPI version 5.1.
- Updated SQLite to version 3.32.0.
- Updated to Xcode 11.5.
Release notes for version 10.2 - 12th May 2020
New functions in 10.2 and Announcement in blog.
- Added JavaScript LibPhoneNumber example to validate and format phone numbers
- Added Mutex functions.
- Added AVAsset.ReleaseAll function.
- Added AVPlayer.SetTag and AVPlayer.GetTag functions.
- Added ColorPanel.GetVisible and ColorPanel.SetVisible functions.
- Added column and row names for Matrix functions.
- Added CoreML.Add2DArrayParameter function.
- Added CURL.GetHeaderAsJSON function.
- Added CURL.LoadLibrary function to load custom CURL library.
- Added CURL.Release and CURL.ReleaseAll functions. Marked CURL.Cleanup as deprecated.
- Added DynaPDF.AddButtonImage function.
- Added DynaPDF.ApplyShading, DynaPDF.CreateAxialShading, DynaPDF.CreateRadialShading and DynaPDF.PlaceSigFieldValidateIcon functions.
- Added ECKey.CanSign and ECKey.Valid functions.
- Added Expand parameter for ColorPanel.Choose function.
- Added FM.CurrentLayoutID, FM.CurrentLayoutName, FM.LayoutIDForLayoutName, FM.LayoutNameForLayoutID and FM.LayoutNames matching similar functions for scripts.
- Added GMImage.ReadFromContainer function.
- Added HotKey.SetPermanent and HotKey.GetPermanent functions.
- Added HotKey.SetScriptWorkspaceOnly and HotKey.GetScriptWorkspaceOnly functions.
- Added IDN support for MacOS with a pull request to CURL.
- Added ImagePicker.MediaMetadata function.
- Added JSON.AddArrayToArray function.
- Added JSON.SortWithEvaluate function to sort JSON objects or arrays with custom expression.
- Added List.CountValuesMatching, List.IndexOfFirstValueMatching, QuickList.CountValuesMatching and QuickList.IndexOfFirstValueMatching functions.
- Added List.SortWithEvaluate and QuickList.SortWithEvaluate functions to sort lists with custom expression.
- Added Matrix.Add function.
- Added Matrix.CopyColumn and Matrix.CopyRow functions.
- Added Matrix.Evaluate function.
- Added new file format parameter for DynaPDF.GetImage function.
- Added new preferences keys for WebView.SetPreferences: mediaDevicesEnabled and mediaStreamEnabled.
- Added ProgressDialog.SetTitleIcon function.
- Added SQL.GetFieldsAsJSON, SQL.GetParamsAsJSON, SQL.GetRecordsAsJSON and SQL.SetParamsWithJSON functions.
- Added SSH.Tunnel.GetKeepAlive and SSH.Tunnel.SetKeepAlive functions.
- Added view option for AVPlayer with AVPlayer.AddView function and related.
- Added WebView.GetInternetExplorerHiDPI and WebView.SetInternetExplorerHiDPI functions to enable proper resolution handling in web viewer on Windows.
- Added WebView.InstallUserMediaAccess function.
- Added XL.Book.GetCalcMode and XL.Book.SetCalcMode functions.
- Added XL.Sheet.CellIsStyledText, XL.Sheet.CellReadStyledText and XL.Sheet.CellWriteStyledText functions.
- Added XL.Sheet.GetColWidthPixel and XL.Sheet.GetRowHeightPixel functions.
- Added XL.Sheet.RemovePicture and XL.Sheet.RemovePictureByIndex functions.
- Added XML.Compact function.
- Adjusted log path for Linux plugin.
- Changed CGImageSource.SetProperty to write new metadata dictionaries.
- Changed Colorpanel script trigger / evaluate to not run while panel is invisible.
- Changed CURL.FormAddKeyText and CURL.FormAddKeyTextContentType to use UTF-8 as default encoding.
- Changed default text encoding for email parsing on Linux to be Windows encoding to avoid endless loop in plugin SDK text routines.
- Changed idle waiting to work better for WebView.RunJavaScript.
- Changed iOSApp functions to store setting in preferences, so they are restored when app is killed and restarted.
- Changed JSON to format numbers without trailing zeros. Numbers parsed or given as text are still passed through as is.
- Changed Linux plugin to load libidn2 dynamically at runtime. If this works, you can use domain names in unicode characters.
- Changed Linux plugin to use ISO 8859-1 for text strings, which have native encoding, but are not UTF-8.
- Changed PKCS7.ReadFromFile to better report error messages from OpenSSL.
- Changed plugin to load LDAP library dynamically.
- Changed ProgressDialog functions to show more text if needed by doing two lines.
- Changed SQL functions to return SQL date/time/timestamp to FileMaker in that type and not always as timestamp. This may help to get SQL.InsertOrUpdateRecords to work with time, date and timestamp.
- Changed XML.ValidateFile to accept schema as XML file path.
- Enabled SSPI, Kerberos 5 and SPNEGO for CURL functions on Windows.
- Enhanced layout sorting to work for items not in a folder.
- Fixed a crash with variable checking in script workspace for FileMaker 19.
- Fixed a problem on Windows with Time.Format and time zones.
- Fixed a problem with CNContact.Name function and non fetched keys.
- Fixed a problem with JSON number handling where sometimes it could happen that a number starting with 0. has no leading 0.
- Fixed a problem with SQL Plugin and OLE DB when fetching 64-bit integers fail or last row values are not returned.
- Fixed an issue with calculation formatting for next FileMaker version.
- Fixed an issue with WebView.GetPlainText and WebView.GetHTMLText not working with frame.
- Fixed bug with Printer.PrinterInfo function returning value for NSDeviceIsPrinter parameter.
- Fixed bug with Window.Scrollbar.getHorizontalMaximum and Window.Scrollbar.getVerticalMaximum functions picking wrong scroll view if you switched to layout mode.
- Fixed CNContact.SetValue and related to accept numbers for date component values, e.g. to set birthday.
- Fixed crash in DynaPDF.ParseContent function.
- Fixed EmailParser.MessageID, CURL.GetResultAsEmail and CURL.GetResultAsEMailList to trim message IDs, so no space is in front.
- Fixed ImagePicker.SetOverlayImage to have overlay work properly when rotating the device.
- Fixed problem in SmartCard.ReadFile with MacOS Catalina.
- Fixed problem with exception coming from ImagePicker.Present function.
- Fixed problem with handle not closed for SharedMemory functions on Windows.
- Fixed problem with returning data in MetaDataQuery.ResultAtIndex function.
- Fixed problem with SQL Plugin and passing Int64 as parameter for a prepared statement for ODBC with servers not supporting 64bit directly.
- Fixed syntax coloring to work with custom fonts.
- For Audit.Changed and Audit.Changed2 you can now customize AuditLog table name. The table name parameter can be a list and include first the table name for the table to check and second the name of the audit table name. If second is empty, we default to AuditLog.
- Improved performance for EventMonitor functions on Windows to avoid problems moving the mouse.
- Improved script font size to also change font for buttons like fields.
- Improved threading for Barcode functions.
- Updated CURL to version 7.70.0.
- Updated DynaPDF to version 4.0.39.112.
- Updated LibXL to version 3.9.
- Updated OpenSSL to version 1.1.1g.
- Updated SQLAPI to version 5.0.6.
Release notes for version 10.1 - 10th March 2020
New functions in 10.1 and Announcement in blog.
- Added context menu command for MacOS to sort entries in a list in FileMaker, e.g. layouts or fields.
- Added font popup menu to preferences dialog to choose font for script workspace or calculations.
- Added | to the list of characters valid for variable names in our variable check.
- Added alpha part for returning color from ColorPanel.GetColor and similar functions.
- Added auto mode for Clipboard.SetFileMakerData and Clipboard.GetFileMakerData functions.
- Added CLGeocoder.JSON to return JSON for a geo coder with all details.
- Added Clipboard.DetectFileMakerDataType function.
- Added CNContact.DeleteValue function.
- Added CNContact.Show method to show contact as sheet.
- Added CNContactPicker.Show and related functions to show contact picker on MacOS and iOS.
- Added CURL.Features function.
- Added DynaPDF.SaveAndSignFileWinCrypt and DynaPDF.SaveAndSignFileWinCryptDialog functions.
- Added DynaPDF.Uninitialize and XL.Uninitialize functions.
- Added FM.GetDisableContextualMenus and FM.SetDisableContextualMenus functions to disable contextual menus.
- Added GMImage.ExifThumbnail function.
- Added GMImage.FontMap function.
- Added handing of Strikethrough text attribute for styled text conversion from NSAttributedString to FileMaker. Affects WebView.GetFormattedText, Clipboard.GetStyledText, RichText.FormattedText and other functions.
- Added iOSApp.SetIdleTimerDisabled and iOSApp.GetIdleTimerDisabled to disable sleep on iOS.
- Added JS.ObjectCount and JS.StringCount functions.
- Added Menu.List and MenuItem.List to list all IDs for menu entries.
- Added preferences dialog for Windows.
- Added Proj functions to use Proj library for transforming geo coordinates between various projections.
- Added remembering of column widths for themes, custom menus, data sources, security and privileges and value lists.
- Added ScriptWorkspace.StyledScriptText and ScriptWorkspace.CopyScriptText functions.
- Added SharedMemory functions.
- Added SyntaxColoring.GetFontName and SyntaxColoring.SetFontName functions.
- Added SyntaxColoring.GetFontSize and SyntaxColoring.SetFontSize functions.
- Added time functions for JavaScript functions: JS.Now, JS.TimeToDateComponents, JS.TimeToUTCDate and JS.UTCDateToTime.
- Added wait parameter for CLGeocoder.GeocodeAddressString or CLGeocoder.ReverseGeocodeLocation function.
- Added wait parameter for CNContactStore.RequestAccesss function.
- Added WebView.PostURL function to post data or include headers.
- Added WMFP.GetLoop and WMFP.SetLoop functions.
- Added WMFP.Screenshot function.
- Changed Audit.Changed and related to work with PageNumber and LayoutNumber as numeric fields.
- Changed DynaPDF.Initialize to accept Starter, Lite, Pro and Enterprise texts for demo modes again.
- Changed FM.InsertRecord, FM.CompareTables, FM.DeleteRecord, FM.DeleteRecords, FM.InsertOrUpdateRecord and FM.UpdateRecord to take table name from first field name if table name is empty.
- Changed Socket.NewTCPSocket to mark sockets to accept IPv4 connections on IPv6 sockets.
- Deprecated LDAP.Add, LDAP.AddList, LDAP.AddRecord in favor of LDAP.AddJSON.
- Deprecated LDAP.Modify and LDAP.ModifyRecord in favor of LDAP.ModifyJSON.
- Deprecated Window.AddBottomOverlay, Window.ShowContent, Window.HideContent, Window.ShowOverlay and Window.HideOverlay. If you need those, let us know soon.
- Documentation now includes references to FileMaker Magazin articles in html and pdf.
- Fixed a problem with recursive templates in DynaPDF.ExtractDocumentText, DynaPDF.ExtractPageRectText and DynaPDF.ExtractPageText functions.
- Fixed an issue with script search not showing on MacOS 10.11.
- Fixed bug in DNSLookup.LookupHostByAddress function when parsing IPv4.
- Fixed bug in PrintDialog.SetDestinationPath not working with space in file path.
- Fixed bug in Shell.PeekErrorText function for MacOS.
- Fixed bug with DynaPDF.GetContent function.
- Fixed bug with Text.ConvertUnicodeToCharacterComposition function not working for all characters.
- Fixed bugs related to future FileMaker versions.
- Fixed CNContactStore.Contacts, CNContactStore.UnifiedMeContact, CNContactStore.ContactsInGroup, CNContactStore.ContactsMatchingName and others to work if your iOS application has not the entitlement to access notes in contacts.
- Fixed crash in LDAP.AddJSON with invalid data by improving error handling.
- Fixed dark mode check to not prevent script workspace to show search bar for older MacOS versions.
- Fixed issue with FM.RunDatabaseDesignReport to work in MacOS Catalina. Needs accessibility permissions in system preferences to click save button.
- Fixed PopupMenu on Windows to use more space for custom fonts.
- Fixed problem with DynaPDF.RenderPage not returning container if you pass empty file path parameter.
- Fixed ScriptWorkspace.ScriptText and related to copy script with tab characters included.
- Fixed tray setting for PDFKit.SetPrintSetting function.
- Fixed WebView.SetFormInputValue and related to take index for form instead of name.
- For DynaPDF we will rename the DLL to have 64-bit library named dynapdf.dll in future and dynapdf32.dll for the 32-bit version.
- Improved error message for SerialPort.Open to include port name.
- Improved performance for using JavaScript functions in parallel scripts on Server.
- Optimized syntax highlighting to reduce number of redraws we need. This should speed up scrolling.
- Removed check from ImageCapture.RequestScan to check for open session.
- Rewrote PDFKit.GetPrintLastSettings, PageSetupDialog.GetLastSettings and PrintDialog.GetLastSettings to return result as JSON.
- Updated CURL to version 7.69.0.
- Updated DynaPDF to version 4.0.37.107.
- Updated Plugin SDK.
- Updated SQLAPI to version 5.0.5.
- Updated SQLite to version 3.31.0.
Release notes for version 10.0 - 14th January 2020
New functions in 10.0 and Announcement in blog.
- Added WebView.Evaluate function to evaluate JavaScript expression and get back result for Windows.
- Added WebView.CallFunction to call any JavaScript function on Windows.
- Added DocumentCameraScan functions to scan documents via camera on iOS.
- Added CoreML.Update function.
- Added WMFP functions. Play audio in background or video on layout independent of FileMaker's container fields.
- Added # for variable name check as valid character for variable names.
- Added Async parameter for WebView.RunJavaScript function.
- Added Copy & Paste for the text fields in dialog functions.
- Added CURL.GetMultiOptionMaxConcurrentStreams and CURL.SetMultiOptionMaxConcurrentStreams functions.
- Added CURL.GetResultAsMime function.
- Added DynaPDF.CreateGoToAction, DynaPDF.CreateGoToActionEx, DynaPDF.CreateGoToRAction and DynaPDF.CreateGoToRActionEx functions.
- Added DynaPDF.FlattenAnnotOrField function.
- Added EIDSDK functions for using Zetes Bluetooth card reader on iOS.
- Added Files.CopyFiles function.
- Added JSON.EqualContent function.
- Added keyEquivalent and KeyEquivalentModifierMask parameters to SyntaxColoring.AddContextMenuCommand function.
- Added List.AndColumn, List.NotColumn, List.OrColumn, and List.XOrColumn functions.
- Added ListDialog.Reset function.
- Added more options to Printer.SetPrinter function to set paper format, orientation and source.
- Added option for SyntaxColoring.AddContextMenuCommand to create separator items.
- Added option to SyntaxColoring.AddContextMenuCommand to mark whether a command can work with discontinuous selections.
- Added our own JavaScript engine to run JavaScript in FileMaker without a web viewer: JS functions.
- Added parameter to JSON.FindValueInArray and JSON.FindValueInObjectArray to compare by content.
- Added Plugin.IsPrerelease and Plugin.CompileDate functions.
- Added QuickList.AndColumn, QuickList.NotColumn, QuickList.OrColumn, and QuickList.XOrColumn functions.
- Added RichText.AppendFormattedText and RichText.AppendText functions.
- Added ScriptWorkspace.GetScriptListSearch and ScriptWorkspace.SetScriptListSearch functions.
- Added ScriptWorkspace.IsActive function.
- Added ScriptWorkspace.SelectedLines function.
- Added Shell.SetDataAvailableEvaluate, Shell.GetDataAvailableEvaluate, Shell.SetDataAvailableScript, Shell.GetDataAvailableScriptName and Shell.GetDataAvailableScriptFileName functions.
- Added SyntaxColoring.GetFormulasWithLinks and SyntaxColoring.SetFormulasWithLinks functions.
- Added SyntaxColoring.ListContextMenuCommand function.
- Added SystemInfo.NetworkStats function.
- Added TextViewHeight parameter for Dialog.AddField function.
- Added Window.PositionNextDialog function.
- Added XL.Book.ReleaseAll function.
- Changed CGImageSource.Property to return array or dictionary encoded as JSON.
- Changed default text encoding for CURL.SetInputText and CURL.AddInputText to UTF-8.
- Changed DragDrop.CreateOnPopoverWithControl and TextView.CreateOnPopoverWithControl to return error when popover is not found.
- Changed DragDrop.CreateWithControl, DragDrop.CreateOnPopoverWithControl, TextView.CreateWithControl, TextView.SetFrameWithControl and TextView.CreateOnPopoverWithControl to return error when control is not found.
- Changed FM.TableStatistics to ignore calculated and global fields.
- Changed ImageCapture.Devices to filter duplicates.
- Changed ImageCapture.GetParameter and ImageCapture.SetParameter to return an error if you try to set parameter of a functional unit, but none is selected.
- Changed JSON functions to pass through floating numbers as is without rounding, in JSON.CreateNumber, JSON.AddNumberToArray and others.
- Changed LDAP loading code to load later on demand.
- Changed SmartCard.SplitValues to hex encode binary values.
- Changed SyntaxColoring.RemoveContextMenuCommand to do case-insensitive comparison.
- Changed WebView.RunJavaScript for Mac and iOS to return values in right data types and report errors better. If array or dictionary is returned, we encode it as JSON.
- Changed zoom in Script Workspace to be remembered if you close and reopen it.
- Fixed a bug in UNNotification.New to avoid endless loop.
- Fixed a bug with Encryption.Cipher function when key contained char(10).
- Fixed an issue for Files.MoveFile and Files.CopyFile where unability to move an old file to trash caused a problem on AFP volumes.
- Fixed an issue where text positions would block you from selecting which context to use for evaluating a formula.
- Fixed an issue with syntax coloring applying underscore variable color to field names.
- Fixed Archive functions to not complain about being unable to seek in file.
- Fixed bug in ScriptWorkspace.SelectLines with negative row numbers.
- Fixed bug in WebView.FormReset function.
- Fixed bug in Window.List on windows to remove empty lines.
- Fixed bug with random number generator on Windows not always working very randomly on server scripts.
- Fixed crashes with Files.CopyFiles function with invalid paths.
- Fixed detection of advanced tools setting for newer version.
- Fixed Dialog.Reset functions to also remove fields.
- Fixed file name handling for Archive functions on Windows.
- Fixed FileDialog functions on Windows to use frontmost FileMaker document window as parent window.
- Fixed issue from 9.5 where SmartCard.ReadFile would not read last chunk correctly.
- Fixed issue in Printer.SetupPrinter not setting value for Printer.CurrentPrinterName function.
- Fixed issue with "Non-public API usage" for iOS app store. Some function names in the plugin have the same name as those on Apple's forbidden list. Now the plugin passes again.
- Fixed issue with CubeSQL client in SQL Plugin to allow SHOW commands to work.
- Fixed ListDialog functions to show text with tabs if column count is 1.
- Fixed memory leak in WebView.AddUserScript function.
- Fixed problem in Archive.FileList and Archive.Content not returning error if encrypted archive could not be read.
- Fixed problem with ImageCapture dialogs not released properly.
- Fixed problem with plugin detecting runtime as normal FileMaker Pro.
- Fixed problem with switching to other applications while ListDialog is open on Windows.
- Fixed problem with SyntaxColoring.Format function.
- Fixed some issues with barcode functions to better handle desired width and height
- Fixed XML.ApplyStylesheet to return empty string if result should be empty.
- Improved CData handling for XML.ToJSON function.
- Improved code for SmartCard.ReadFile to read in chunks of 256 bytes instead of 255 bytes.
- Improved conversion from Windows VARIANT to FileMaker value for Windows functions (WMI, WIA and WebView).
- Improved CoreML.Description to include newer attributes for MacOS 10.15.
- Improved error messages for RSA.GeneratePrivateKey, RSA.Verify, RSA.Sign.
- Improved performance for EventMonitor functions on Windows to avoid problems moving the mouse.
- Improved syntax coloring to avoid crash when refreshing while text is being edited.
- Increased timeouts for ImageCapture functions.
- Renamed Shell.SetEvaluate to Shell.SetCompletedEvaluate and Shell.GetEvaluate to Shell.GetCompletedEvaluate.
- Renamed Shell.SetScript to Shell.SetCompletedScript, Shell.GetScriptName to Shell.SetCompletedScriptName and Shell.GetScriptFileName to Shell.SetCompletedScriptFileName.
- Rewrote CURL data receiving to improve performance for POP3 and IMAP.
- Updated CURL library to version 7.67.0.
- Updated DynaPDF to version 4.0.37.101.
- Updated Java.Initialize to better find Java libraries.
- Updated LibArchive to version 3.4.0.
- Updated LibXL to version 3.8.8.
- Updated SQLAPI to version 5.0.3.
- Updated Xcode to version 11.3.
- Updated zint library to version 2.7.
- Version 9.5
- Version 9.4
- Version 9.3
- Version 9.2
- Version 9.1
- Version 9.0
- Version 8.5
- Version 8.4
- Version 8.3
- Version 8.2
- Version 8.1
- Version 8.0
- Version 7.5
- Version 7.4
- Version 7.3
- Version 7.2
- Version 7.1
- Version 7.0
- Version 6.5
- Version 6.4
- Version 6.3
- Version 6.2
- Version 6.1
- Version 6.0
- Version 5.4
- Version 5.3
- Version 5.2
- Version 5.1
- Version 5.0
- Version 4.4
- Version 4.3
- Version 4.2
- Version 4.1
- Version 4.0
- Version 3.5
- Version 3.4
- Version 3.3
- Version 3.2
- Version 3.1
- Version 3.0
- Version 2.9
- Version 2.8
- Version 2.7
- Version 2.6
- Version 2.5
- Version 2.4
- Version 2.3
- Version 2.2
- Version 2.1
- Version 2.0
- Version 1.8
- Version 1.7
- Version 1.6
- Version 1.5
- Version 1.4
- Version 1.3
- Version 1.2
- Version 1.1
- Version 1.0


Links
MBS Xojo PDF Plugins