Our Blog,   Our FileMaker Blog,   Our Xojo Blog,   Archive (older)     Follow us on Twitter, Xing, LinkedIn or Facebook.

MBS Xojo Plugins, version 21.6pr2

New in this prerelease of the 21.6 plugins: Download: monkeybreadsoftware.com/xojo/download/plugin/Prerelease/ or from Dropbox.
Or ask us to be added to our shared Dropbox folder.

MBS FileMaker Plugin, version 11.6pr2

New in this prerelease of version 11.5 of the MBS FileMaker Plugin: Download at monkeybreadsoftware.com/filemaker/files/Prerelease/, in Dropbox folder or ask for being added to the dropbox shared folder.

Adding a Scintilla based control to Xojo

In the last years we saw a lot of need for various edit controls in Xojo. The built-in TextArea is fine for a lot of people, but some need more. A couple of people extended the built-in control with various extensions, but those are always limited by what the platform can do. MacOS is quite good with NSTextView used as implementation and you see a lot of stuff via our NSTextViewMBS class to e.g. insert a picture. On Windows the RichEdit control is a bit limited, but we still got a few TextArea extensions in our plugins:
Next a few people started to write Canvas based control on their own. Like the Formatted Text Control for Xojo, which is now open source and can be used as an editor for styled text. Then recently we got notice of the Better Code Editor (BCE) Control from Garry Pettet. This may also help a few people and have it as source code in their projects and modify it.

But I looked for more and thanks to a little tip from Norman on my visit in September, I got pointed to the Scintilla project. That is am open source C++ library defining an editing component, which we can host in a plugin based Xojo control: ScintillaControlMBS
The description from their website shows what we may get in Xojo:

As well as features found in standard text editing components, Scintilla includes features especially useful when editing and debugging source code. These include support for syntax styling, error indicators, code completion and call tips. The selection margin can contain markers like those used in debuggers to indicate breakpoints and the current line. Styling choices are more open than with many editors, allowing the use of proportional fonts, bold and italics, multiple foreground and background colours and multiple fonts.

We may not get all things right into the control for the first release, but since the control seems to work fine for macOS and Windows already, I am confident we can ship this as a 1.0 with our next plugin release in January. There is still a long todo list, but we like to give interested developers a preview. Please try it in next pre-release.

Things we may do later, if possible include support for Linux. Maybe we can provide the library within the plugin instead of an external library. And we may improve the API to be more Xojo like, add printing functions, marker pictures or async loading.

This control should provide a great editor for XojoScript code in various projects. Also editing other things like SQL statements, JavaScript, JSON or HTML in your project. It has a great performance and should handle huge texts better than all the other choices.

Please try it in the next days and let us know what you think!

Variable Name Auto Completion

For a couple of years we do various things in FileMaker Script Workspace like syntax coloring. We got a copy command once we started to read all lines in a script. Later we added checks to find usage of undeclared variables, so you easier spot typos in your variable names. Now we go one step further: We scan for variables and present you a list of names we know.

When you have a script open in the Script Workspace and you open a calculation dialog, you can now auto complete. Just go into a calculation dialog for a Set Variable or Set Field or any of the other script steps taking a calculation. Then type something. We have a switch there, so only when you type a $ symbol, our plugin activates. Otherwise it lets the request pass to FileMaker to auto complete field and function names.

To find the variable names, we scan the script from the current selected line for currently up to 500 lines upwards. The limit can be adjusted with SyntaxColoring.CheckVariableDeclaration.SetLimits function if needed. We hope that is for now enough to find the common variable names you like to use. If you keep working in one script workspace, we retain global variable names, we see, so you may see them in auto complete for multiple scripts.

Like with the variable check, we support declaring variables in comment lines. That is a kind of workaround for the plugin not seeing into global variables list from FileMaker or parsing Let statements. You can define comments with a prefix @variable, @parameter or @constant or actually shorter with @var, @param and @const if you prefer. The plugin will notice them and use them for variable name checking as well as auto complete. If you use common global variables in the script, you may just declare them on the top as a comment:

# This script uses the following global variables, initialized in our start script:
# @variable $$UserName
# @variable $$WebServiceAuth

This feature was developed on the weekend of 27th/28th November 2021 and a bit tuned in the following week. We also got a command for the context menu to copy the list of variables defined in a script. Please try it soon with either pr1 or better pr2 tomorrow. Let us know if you see issues, problems or it just works for you.

Display Value List IDs

If you like to see the IDs for your value lists and later reference them in your scripts, check out the new option in the upcoming MBS FileMaker Plugin in version 11.6pr2 or newer:

If enabled in preferences dialog or via SyntaxColoring.SetShowValueListIDs function, the MBS FileMaker Plugin will query FileMaker's ValueListNames and ValueListIDs functions to assemble the lists and show right in the table the ID.

You can use FM.ValueListIDForValueListName and FM.ValueListNameForValueListID later in scripts to pick the name of a value list by ID or otherwise. Or just do the same via custom functions if you prefer that.

We'll provide 11.6pr2 next week, so keep checking our blog or mailing list for the announcement.

MBS @ FMTraining.TV

Check out the FMTraining.tv website. Richard Carlton and his team do a daily free live stream about FileMaker to watch. And they have a huge library of FileMaker training material to watch and learn all about the Claris FileMaker product family.

A few days ago Christian Schmitz from Monkeybread Software joined a live episode to talk a bit about the MBS FileMaker Plugin. Watch it on YouTube.

We show you what is new for MBS FileMaker Plugin in the upcoming version 11.6 and answer user questions.

Do you like this video?

Please let Richard know and send him your wishes or ideas for future live broadcast as well as topics for training videos. And check out the FileMaker Training bundles as well as their new book for FileMaker, updated for 2021.

Windows 64-bit ARM support coming to Xojo

Have you seen the updated roadmap from Xojo Inc.?

It lists ARM 64-bit support for Windows and Linux as items they work on. And I put in a some work the last weeks into building our plugins for Windows 64-bit ARM. We had Linux 64-bit ARM completed a few months ago. Still the plugins only compiling doesn't mean they will run right away. There will certainly a new plugin SDK for those targets, so we'll have a few changes and then try them once a Xojo version ships and we can build test applications.

Since we got ARM 64-bit support, I hope adding Android in the future should be easy for all the console enabled classes. But still it may be very useful to have SQL, DynaPDF or Encryption classes available there, too.

See older blog post Linux 64-bit ARM support coming to Xojo, Build System Updates for new targets, Building for future Xojo targets and Building plugins for Linux on ARM.

Please know that the roadmap lists various items Xojo Inc. works on, but not all and not necessarily in the order they ship. The listed items tend to be the ones, which takes multiple releases to get finished. Smaller items, which can be done in a few days by an engineer, may not be listed there.

MBS FileMaker Plugin, version 11.6pr1

New in this prerelease of version 11.5 of the MBS FileMaker Plugin:
  • Added SQL.GetFieldAsNumber, SQL.GetParamAsNumber and SQL.SetParamAsNumber to better handle numeric values.
  • Changed how we handles numbers in SQL functions to better handle numeric values and avoid conversion of numeric to floating pointer numbers.
  • Changed variable coloring and checks to allow exclamation mark in variable names.
  • Changed XML parsing to explicit disable network access.
  • Fixed a case where @param comments where not found with several spaces before the variable name.
  • Fixed a problem in CURL.GetHeaderAsJSON introduced in v11.5.
  • Fixed an edge case for syntax coloring with block comments to color the full comment.
  • Fixed Container.ReadFile to read empty files.
  • Fixed SyntaxColoring to colorize calculations starting with $ variable.
  • Updated archive library to version 3.5.2.
  • Updated cpuid library to version 0.51.
  • Updated curl to version 7.80.0.
  • Updated expat library to version 2.4.1.
  • Updated lz4 library to version 1.9.3.
  • Updated openssl to version 1.1.1l.
  • Updated ssh2 library to version 1.10.0.
  • Updated SystemInfo.CPUBrandString to work on Apple Silicon.
  • Fixed a potential problem in SQL.InsertOrUpdateRecords function where it could crash with too many primary keys.
Download at monkeybreadsoftware.com/filemaker/files/Prerelease/, in Dropbox folder or ask for being added to the dropbox shared folder.

MBS Xojo Plugins, version 21.6pr1

New in this prerelease of the 21.6 plugins:
  • Added ShowAllAnnotations for MKMapViewMBS class.
  • Changed XML parsing to explicit disable network access.
  • Fixed a bug where some functions like GetWindowsColorProfileMBS returning a FolderItem cause an InvalidArgumentException when running on newer Xojo versions.
  • Updated archive library to version 3.5.2.
  • Updated CPUBrandString method in SystemInformationMBS module to work on Apple Silicon.
  • Updated cpuid library to version 0.51.
  • Updated curl to version 7.80.0.
  • Updated expat library to version 2.4.1.
  • Updated lz4 library to version 1.9.3.
  • Updated openssl to version 1.1.1l.
  • Updated ssh2 library to version 1.10.0.
  • Updated taglib library to version 1.12.
  • Fixed a bug with CTFontMBS not returning file path in older Xojo version.
  • Added PropertyName and CountProperties methods to DirectShowPropertyBagMBS class.
Download: monkeybreadsoftware.com/xojo/download/plugin/Prerelease/ or from Dropbox.
Or ask us to be added to our shared Dropbox folder.

Four months till XDC 2022 in London

Just four months till the XDC 2021 in London, England. Tickets are still available for $850 USD till 15th February 2022 instead of $950 later.

It will be held March 30-April 1st, 2022 in London, England at the Holiday Inn Bloomsbury. This conferences is the best place to meet Xojo developers from around the world in real live, make contacts, present yourself as expert and learn what is new in Xojo. Tickets are available in the Xojo store and if you bring your partner, you can order an extra guest ticket for the dinner events.

Check out the conference highlights video if you want to see what it's like - or ask one of the many attendees from the forum!

Wether you are full or part time Xojo developer, this is your chance to learn all about the Web 2.0 framework, the Android progress and what's new in the Xojo world.

To get there, please use public transportation. The piccadilly line brings you right from Heathrow Airport to Russell Square Station, just next to the hotel. That trip should cost about 3 £ and you may just pay by tap in/out with your NFC enabled credit card or phone. Otherwise buy an Oyster card and load money on it if you don't have such a card. If you come by Eurostar train through the tunnel from France, you can exit Pancras station and just walk to the hotel. Otherwise take one station via subway to Russell Square Station. That station is right behind the hotel block.

We hope that the whole Covid-19 trouble dissolves when spring starts and we can all meet safely. Please only make refundable travel plans to be sure in case this gets cancelled.
See you soon there!

News from the MBS Xojo Plugins in version 21.5

In this article I want to introduce you the new functionalities from the MBS Xojo Plugins in version 21.5.

New Desktop controls for Xojo 2021r3

Xojo 2021r3 introduces new Desktop controls and we updated our own controls for this change. Whether you use Window or DesktopWindow, in both cases you can enjoy one of our 29 controls. Maybe you didn't know that there are so many controls from MBS for Xojo?
Therefore we would like to give you a list of these controls. Maybe you will discover one that can improve your application.


New in version 11.5 of MBS FileMaker Plugin

In this article we want to introduce you the new functions from the MBS FileMaker Plugin in version 11.5.


Let's start with the two functions that are new in the Text functions. With the function Text.Concat we create a text that writes all texts specified in the parameters one after the other. No space is set between the individual texts. Let's have a look at the sample. We have entered the words banana, orange and pineapple in the parameters of this function.

Set Variable [ $Concat ; Value: MBS("Text.Concat"; "Banana"; "Orange"; "Pineapple") ]

In the dialog box we see the text we get back.

The second new function is Text.List. It too will accept as many text parameters as we want. It creates a list from these text parameters. The individual parameters are then the elements of the list. Set Variable [ $List ; Value: MBS("Text.List"; "Banana"; "Orange"; "Pineapple") ]


Thanksgiving Sale

For this year's Thanksgiving in America, we offer again discounted licenses for our MBS Plugins for FileMaker and Xojo.
Please use coupon code BlackFriday for our web shop to order new licenses with a 20% discount. This includes DynaPDF and LibXL.

Order MBS FileMaker Plugin     Order MBS Xojo Plugins     Order LibXL

If you have special needs, you can email us to get an invoice or Paypal payment link directly. We know some people need to wait till next week to order, so the offer is valid till Tuesday.

Second if you have purchased previously an individual MBS Xojo Plugin part from the Complete Set within the last two years, but not the whole set, we offer you an upgrade to the Complete set for the update price. Please consider to get the whole collection of over 40 plugins instead of just one plugin.

See also Xojo Thanksgiving Sale, piDog sale, xDev Magazine and xDevLibrary sale.

Claris Engineering Blog

Please check the Claris™ Engineering Blog with a lot of interesting articles. Just recently they added one for a security fix in FileMaker Server 19.4:

Black Friday coming soon

As you may know Americans love to shop on Black Friday and Cyber Monday. This year Black Friday is 26th November. About half our customers are in North America, so we are happy to offer you a discount if they buy this weekend. Our offer will go live in the next days and should be available in time.

We plan to offer coupon code BlackFriday for the web shop with 20% off for new licenses of MBS Plugins, DynaPDF and LibXL.
Updates are already offered with discount (usually 50%) compared to new purchases and and our academic prices already have a discount, too. If you like, you can email us to get an order link for all licenses you need or provide an invoice if needed. Especially if you like to use Paypal for payment, we can provide a link with discount or write a custom invoice.

Order MBS FileMaker Plugin     Order MBS Xojo Plugins     Order LibXL

As usual the discounted offer allows you to buy whatever licenses you may need in the next year. Especially if your license expired in 2020 or before, this is a great chance to get up to date!

If you need a license from Xojo Inc. or their third-party store section, you may to check the Xojo store on the weekend. Everyone interested in a license for the current version 2021r3, should go and buy one. With a current license for iOS (Mobile) or Xojo Pro, you can enter Android testing.

You have a question? Please don't hesitate to contact us by email or phone. We may help to point you to the right offer.

If vs If in Xojo

On the Xojo forum was a discussion about the inline If vs the block If syntax in Xojo. Basically whether

result = if( value > 2, 123, 456

is faster or slower than

if value > 2 then result = "123b" else result = "456b" end if

And the answer is of course: it depends. It depends on what is exactly done and how much compiler optimisation eliminates test code. Like if you do a compare in a loop running one million times, the compiler may detect that the result doesn’t change and only run it once. Also if you assign a value to a variable and then compare that, the compiler may know the result and skip the compare.

So let’s deep dive into the assembly.


xDev Magazine and xDevLibrary Announce Huge Black Friday/CyberMonday Sale 2021

Marc Zeedar announced his offer for the week:

November 2021 – xDev Magazine and xDevLibrary are delighted to announce that through Nov. 29 (CyberMonday) their entire stores are on sale at 20% off!

Just use coupon code CYBERMONDAY to get the discounted price during checkout.

For xDev Magazine, this means 20% off subscriptions, renewals, books, bundles, and more! The only limitation is the minimum order amount must be at least $25 and already-discounted bundles (such as the popular “Welcome to Xojo” bundle) are excluded.


For xDevLibrary, you can save 20% on all digital books, articles, tutorials, and more – everything offered on the store! Just use coupon code CYBERMONDAY to get the discounted price during checkout.

This is a once-a-year sale, but it only lasts through CyberMonday (November 29, 2021). Hurry to take advantage of the great deals!

Also Strawberry Software offers a discount for renewals within the LiveBoat app and for MBS we offer 20% on new licenses with coupon code BlackFriday.

New desktop controls

In MBS Xojo Plugins 21.5 we got 29 new desktop controls to match our existing desktop controls. So whether you use 2021r3 or older, you can always use our controls:

The desktop versions are exactly the same as the normal ones, but with different super class. They derive from DesktopUIControl instead of RectControl.

Check them out!

Especially if you need modern browsing on macOS or Windows, our WebView controls can help. Otherwise enjoy showing map views, camera view, 3D scene or PDF content.

Christmas Funding Drive for The FM Soup

As you may know the FileMaker Soup is a community organized forum for English speaking Claris FileMaker developers to support each other. The forum is run by a non-profit organization of volunteers elected by forum members.
Currently the Soup runs a Christmas Funding Drive to gather the $1500 CAD to run the forum for another year.

MBS just donated money to fund the forum for 2 months by donating $250 CAD.
We hope a few more users of the forum can make a donation, even if it's just $20 and donate via Simplyk.

The Last Xojo Black Friday Sale

Xojo Inc. just announced their 10 day BlackFriday sale:

The Last Xojo Black Friday Sale - Save 20% storewide through November 29th

I'd like to add some details:
  1. Due to how the licensing works with Xojo, every licensee can just go and order an update. The expiration date will be adjusted to add the new year on the end, so even if your license is still good until 2022, you can extend and benefit from the discount. This should even work for more than one year.
  2. Third party products are included, so you can order some third party products along your Xojo license.
  3. Buying a XDC ticket gives you a discount coupon to give to a colleague to have them order a ticket, too.
  4. The reason they announced this to be the last sale on Black Friday is simple: Sales staff likes to enjoy family time. So instead of customers calling all day asking for help with placing their order, the sales staff can enjoy Thanksgiving next year. There will still be sales, but in other weeks of the year.
  5. Since Android is now in testing, you could get a license and play with it. Be assured that there is a 90-day money back guarantee, so Xojo Inc. can refund you if you are not happy.

For MBS, we match the offer of course. If you are interested in a new MBS Plugin license, you can get 20% off for our licenses (plus DynaPDF and LibXL). An announcement will follow next week. The coupon code BlackFriday can be used in our web shop. Otherwise email us for custom invoices or Paypal links with the discount.

Older blog entries:

2021-11-18 Xojo 2021r3 release
2021-11-16 MBS FileMaker Plugin 11.5
2021-11-16 MonkeyBread Software Releases the MBS Xojo Plugins in version 21.5
2021-11-16 Neues MBS FileMaker Plugin 11.5 - Über 6600 Funktionen in einem Plugin
2021-11-15 Avoid pre-compilation pitfalls
2021-11-13 MBS FileMaker Plugin, version 11.5pr7
2021-11-13 MBS Xojo Plugins, version 21.5pr7
2021-11-12 Recursive Folder Copy Script
2021-11-10 Extract and analyze images with DynaPDF
2021-11-10 MBS @ FMTraining.TV
2021-11-09 Tip of the day: Avoid repeated variant packaging
2021-11-08 MBS FileMaker Plugin, version 11.5pr6
2021-11-08 MBS Xojo Plugins, version 21.5pr6
2021-11-07 FileMaker Konferenz 2022 in Hamburg
2021-11-05 WebPreferences for WebView2
2021-11-05 Several ways for picture to PDF in MBS Plugins
2021-11-04 Upcoming FMTraining Live Broadcast
2021-11-02 MBS Xojo Plugins, version 21.5pr5
2021-11-02 MBS FileMaker Plugin, version 11.5pr5
2021-11-01 xDev Magazine 19.6


Dec 2021
Nov 2021
Oct 2021
Sep 2021
Aug 2021
Jul 2021
Jun 2021
May 2021
Apr 2021
Mar 2021
Feb 2021
Jan 2021
Dec 2020
Nov 2020
Oct 2020
Sep 2020
Aug 2020
Jul 2020
Jun 2020
May 2020
Apr 2020
Mar 2020
Feb 2020
Jan 2020
Dec 2019
Nov 2019
Oct 2019
Sep 2019
Aug 2019
Jul 2019
Jun 2019
May 2019
Apr 2019
Mar 2019
Feb 2019
Jan 2019
Dec 2018
Nov 2018
Oct 2018
Sep 2018
Aug 2018
Jul 2018
Jun 2018
May 2018
Apr 2018
Mar 2018
Feb 2018
Jan 2018
Dec 2017
Nov 2017
Oct 2017
Sep 2017
Aug 2017
Jul 2017
Jun 2017
May 2017
Apr 2017
Mar 2017
Feb 2017
Jan 2017
Dec 2016
Nov 2016
Oct 2016
Sep 2016
Aug 2016
Jul 2016
Jun 2016
May 2016
Apr 2016
Mar 2016
Feb 2016
Jan 2016
Dec 2015
Nov 2015
Oct 2015
Sep 2015
Aug 2015
Jul 2015
Jun 2015
May 2015
Apr 2015
Mar 2015
Feb 2015
Jan 2015
Dec 2014
Nov 2014
Oct 2014
Sep 2014
Aug 2014
Jul 2014
Jun 2014
May 2014
Apr 2014
Mar 2014
Feb 2014
Jan 2014
Dec 2013
Nov 2013
Oct 2013
Sep 2013
Aug 2013
Jul 2013
Jun 2013
May 2013
Apr 2013
Mar 2013
Feb 2013
Jan 2013
Dec 2012
Nov 2012
Oct 2012
Sep 2012
Aug 2012
Jul 2012
Jun 2012
May 2012
Apr 2012
Mar 2012
Feb 2012
Jan 2012
Dec 2011
Nov 2011
Oct 2011
Sep 2011
Aug 2011
Jul 2011
Jun 2011
May 2011
Apr 2011
Mar 2011
Feb 2011
Jan 2011
Dec 2010
Nov 2010
Oct 2010
Sep 2010
Aug 2010
Jul 2010
Jun 2010
May 2010
Apr 2010
Mar 2010
Feb 2010
Jan 2010
Dec 2009
Nov 2009
Oct 2009
Sep 2009
Aug 2009
Jul 2009
Apr 2009
Mar 2009
Feb 2009
Dec 2008
Nov 2008
Oct 2008
Aug 2008
May 2008
Apr 2008
Mar 2008
Feb 2008
XML: RSS Feed XML: Atom Feed