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


MonkeyBread Software Releases the MBS Xojo Plugins in version 17.3


Nickenich, Germany (July 18th, 2017) -- Monkeybread Software releases version 17.3 of the MBS plug-in for Xojo.

The MBS plug-in comprises a collection of several plug-in parts which extend the Xojo development environment with 2,400 classes featuring over 62,000 documented functions. Our plugins support all three platforms Mac OS X, Windows and Linux with all project types desktop, web and console including 64-bit and ARM targets.

Some of the highlights on the 17.3 update:

If you are interested in using SNMP (Simple Network Management Protocol) queries to check status of your network devices, you can now use our NetSNMPMBS class.

To select fonts on Windows you can now use the WindowsFontDialogMBS class. The dialog can be preset, provides an apply button with an event to live show the new font in your document and various other events to know its state. With various properties you can customize the appearance of the dialog.

While the next macOS version is in beta, we already implemented new functions to support newer image and video formats there. This plugin also fixes a few issues, so you can now use our plugins on the latest macOS beta.

For our XL functions to read and write Excel documents, we can now load and save partial documents. If you have huge documents, using a temporary file can reduce the memory requirements. And if you only need data from one sheet inside a big document, loading only that one sheet can speed up processing a lot.

For CipherMBS class we changed CipherInit, EncryptInit and DecryptInit methods to return a boolean and indicate whether they were successful. You may need to update your code.

Our WindowsDeviceModeMBS class is updated for handling setup strings better in Xojo 2017r1. This is important as the format changed and you may want to avoid trouble.

We got PNG library with SSE2 for Mac enabled, context menu in overlayMBS, better handling of emails, better PDFKit annotations, CURL form data inspection and much more.

Finally we updated SQLite to 3.19.3, PostgreSQL to version 9.6.3, OpenSSL to 1.1.0f and 1.0.2l, libPNG to version 1.6.30 and DynaPDF to 4.0.11.31.

See release notes for a complete list of changes.

MBS Xojo Plugins, version 17.3pr7


New in this prerelease of the 17.3 plugins:
  • Added WindowsDeviceModeMBS.ApplyToSetupString method.
  • Updated WindowsDeviceModeMBS class methods for SetupString to handle 2017r1 SetupString format.
  • Added XLBookMBS methods to load partially and load/save with temp file.
  • Added GMImageMBS.PNGLibVersion function.
  • Changed Contacts, CoreLocation and MapKit plugin parts to better load on macOS 10.13 and not crash.
  • Added check to CGPDFDocumentMBS to raise out of memory exception in low memory conditions to avoid crashes later.
Download: monkeybreadsoftware.de/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared Dropbox folder.

MBS Xojo Plugins, version 17.3pr6


New in this prerelease of the 17.3 plugins:
  • Enabled SSE2 extension for libPNG for macOS as all Macs with Intel CPU should have SSE2.
  • Updated libPNG to version 1.6.30.
  • Updated DynaPDF library to version 4.0.11.31.
Download: monkeybreadsoftware.de/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared Dropbox folder.

Summer Sale in Xojo Store


Xojo Inc. announced a sale in their store for add-ons to Xojo:

Sale in the Xojo Add-On Store - 20% off!

Beat that summer heat, stay inside with Xojo! Between today and July 16th, shop our add-on store and save 20%, sale includes XDC Videos! Simply use discount code SPLASH when you check out in the store!

Shop the Xojo Add-ons store to find third party products that will help you develop faster and do more! The store includes developer tools, user interface add-ons, database extensions, distribution tools and learning materials, like training videos and magazine subscriptions.

Get access to the 2015 or 2016 Xojo Developer Conference session videos (plus slides) for 20% off. And don't forget, you can still save $200 on your XDC 2018 registration when you sign up now!

Shop now!

If you like, you can get MBS licenses there or contact us directly for the same discount on new licenses.
Same coupon code should work for MBS Orders via Share-It.

MBS Xojo Plugins, version 17.3pr5


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

New Country and Territory promotion


As you may know our MBS Plugins are used in over 55 countries (FileMaker) and 74 countries (Xojo).

But still there are a lot of countries left, so we’d like to offer a promotion:

Get a second year of updates for free when purchasing a new license from us in July when the order comes from a country we not yet have customers from. For some bigger countries, new state/province is also fine.

After a purchase, we can definitive say whether you are from a not yet listed country, so please contact us before/after purchase to check.

You may wonder which countries we don’t have clients from?

FileMaker:
In Europe for example Poland, Ukraine, Serbia and Bulgaria.
In North America for example Alaska, New Mexico and Maine in USA, Ontario in Canada.
In South America for example Peru, Ecuador, Panama and Guyana.
In Asia for example Vietnam, Indonesia or Pakistan.
In Africa there is a lot of space between Egypt and South Africa.

Xojo:
In Europe for example Lithuania, Montenegro or the islands Sardinia and Corsica.
In North America for example Alaska and South Dakota.
In South America for example Peru or Nicaragua.
In Asia for example Vietnam, Bangladesch and Papua-Neuguinea.
In Africa anything between Namibia and Egypt.

So if you like to get a license and contact us and we give you a free update if you add an entry to our country list or at least live somewhere we have no customers yet.

xDev Magazine Issue 15.4 Issue


The July/August (15.4) issue of xDev Magazine is now available. Here's a quick preview of what's inside:

Shrink Your Apps by Mattias Sandstrom
Mattias with some techniques to make your built apps smaller.

Windows Fast Listbox Updating by Eugene Dakin
If you want your listboxes updated quickly, you can run into flickering on Windows. Eugene shows how to solve that with some handy routines.

Berlin, Here I Come by Marc Zeedar
Marc went overseas for the first time in years for the MBS Xojo Conference in Germany in May. Here's what happened, with gobs of photos.

Sharing Data for Health, Part 2 by Jc Cruz
Jose concludes the data sharing project he started last issue.

Optimizing Xojo Apps by Christian Schmitz
Xojo is great at handling many technical details for you, but some of that management costs performance. Christian shows how to avoid the slowdowns with these tips.

Plus: Xojo and WWDC, initializing controls, pg_dump, and more!

Linux Loader Trouble


The last week we once again run into an issue with the Linux shared library loader. In a Xojo app you may end up having several libraries several times in different versions. For example the system provides the zlib library in some version, e.g. 1.2.3 on an older Linux installation. The MBS Compression Plugin uses zlib in version 1.2.8 while DynaPDF uses a custom patched 1.2.7 for the PDF compression. Also the Xojo runtime may come with its own version.

Now it seems like there can be a problem. All those versions of the library may or may not export publicly their functions and you may have several deflateInit functions around. Now when resolving the functions references in a shared library (e.g. plugin), the loader will pick one by name to solve it. And for us this was catastrophic a few times. Because you end up getting a different version of the library than expected. DynaPDF brings 1.2.7, but may end up getting tied up to 1.2.3 or 1.2.8. For PNG, JPEG, zlib and other libraries, there are checks in place to make sure the header files and the library matches in version. If versions won’t match data structures may have different sizes or parameters to functions have different meanings.

In DynaPDF the resulting error from a different zlib version is:

'EndPage: Error compressing stream!' (code:14, type:536870912)


This is solved for MBS Plugin 17.3pr4 by setting all non-exported symbols to local symbols. This should make all functions to resolve within the library take precedence over functions from other libraries.

For DynaPDF we added GetPNGVersion, GetJPEGVersion, GetTIFFVersion and GetZlibVersion functions. They allow you to query the jpeg, png, tiff and zlib versions used in the DynaPDF library.

PS: For FileMaker Cloud we do the same fix next prerelease.

MBS Xojo Plugins, version 17.3pr4


New in this prerelease of the 17.3 plugins:
  • Fixed crash with 64-bit for Execute methods in AuthorizationMBS class.
  • Changed linux linking to avoid loader to connect function to wrong library if several versions of the library exists.
  • Added MinY, MinX, MidY, MidX, MaxY and MaxX for NSRectMBS class.
  • Updated DynaPDF library to version 4.0.11.30.
  • Added OverlayMBS.menuForEvent event.
  • Turned properties for PDFKit annotation classes into real properties so you see them in debugger.
  • Fixed bug with DynaPDF and optimize command when using ICC based JPEG pictures.
  • Fixed problem with PDFAnnotationMarkupMBS not setting QuadrilateralPoints.
Download: monkeybreadsoftware.de/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared Dropbox folder.

JavaScript callback in HTMLViewer on Mac


Did you know you can register you own javascrpt callbacks for a HTMLViewer on Mac?

 

The WebScriptCallbackMBS class helps to handle such methods calls in JavaScript and redirects them to an event. In the Open event of the window, we add the WebFrameLoadDelegate to the HTMLViewer:

 

wui=new MyFrameEvents

web.InstallWebFrameLoadDelegateMBS wui

 

We need to subclass WebFrameLoadDelegateMBS in order to catch the windowScriptObjectAvailable event and add our MyBrowser object to the JavaScript name space:

 

Class MyFrameEvents Inherits WebFrameLoadDelegateMBS

EventHandler Function windowScriptObjectAvailable(windowScriptObject as WebScriptObjectMBS) As boolean

// Install an Object called "MyBrowser" on the javascript document object

// Any function call inside will tricker callback event

windowScriptObject.setWebScriptCallback "MyBrowser", app.callback

End EventHandler

End Class

 

Next we need to subclass WebScriptCallbackMBS class and fill the Callback event and do whatever our method should do:

 

Class MyScriptCallback Inherits WebScriptCallbackMBS

EventHandler Function Callback(Name as string) As variant

System.DebugLog "Function: "+name

Select case name

case "MsgBox"

MsgBox me.ArgumentValue(0)

case "PrintDialog"

call MainWindow.web.PrintDialogMBS

case "SetText"

MainWindow.Output.text=ArgumentValue(0)

end Select

End EventHandler

End Class 

 

As you our event can be called giving the name of the method called and the parameters can be queried via ArgumentValue function. The JavaScript call looks like this:

 

MyBrowser.SetText('Hello');

 

Sadly we can't provide the same for Windows so far. But Mac this is great already.


Xojo meetings in Arizona


As you know I come to attend the FileMaker DevCon 2017 in Phoenix, Arizona.

As I stay a few extra days in Phoenix, we will have two Xojo developer meetings:

22nd July 2017 in a restaurant near Phoenix.
28th July 2017 in a restaurant near Tucson.

I know I have over 20 Xojo developers using my plugins in Phoenix alone.
If you like to join, please contact me soon.

I reserve a table in a nice restaurant and I will be there. You can join and we can shop talk all night. Ask me plugin questions, bring your laptop and show projects.
And of course we discuss latest changes in Xojo, upcoming conferences and what's new in plugins.

OmegaBundle final extension


The OmegaBundle.net will finally end 4th July 2017.
After two extensions it must come to an end and if you missed all the announcements, we finally need to say: sorry.



Get your copy now on OmegaBundle.net.

MBS Xojo Plugins, version 17.3pr3


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

XojoTalk podcast 2^5


The XojoTalk podcast just got it's pow(2,5)th episode. So go and listen to it!
  1. Shoving Phones In Their Pockets with Geoff Perlman
  2. That's A Lot Of Tens with Bob Keeney
  3. Developer of Long Standing with Eric Gibbon
  4. Grizzled Veterans with Travis Hill
  5. Where's My Column? with Marc Zeedar
  6. I have no idea what you're talking about with Kem Tekinay
  7. Snowgun with Kevin Cully
  8. Really Wicked with Hal Gumbert
  9. It's my dog with Norman Palardy
  10. Strap a Mac Pro to my wrist with Tim Dietrich
  11. The forum is my personal training ground with Tim Hare 
  12. Shipping is a feature with Paul Levine 
  13. Hockey Programmer with Mike Cotrone 
  14. Software Maniacs with Ken Whitaker 
  15. Type my password like an animal with Justin Elliott
  16. Magical Toolkit with Craig Boyd
  17. I Keep My Secrets to Myself with Bruno Frechette and Jonanthan Guillemette 
  18. Not The Pi You Eat with Geoff Perlman 
  19. Ghost Touches with Geoff Perlman 
  20. Spoiler Alert with Bob Keeney and Marc Zeedar 
  21. Enterprise Consulting with Arthur Couture and Tom Rupprecht 
  22. I Like Things That Just Work with Tim Parnell
  23. Take a Walk with Michel Bujardet 
  24. Figure out stuff on my own with Kimball Larsen 
  25. Toughest thing is the substitutions with Jim Meyer 
  26. Happened by Accident with Tom Catchesides
  27. Database Goddess with Carol Keeney 
  28. Email is Not a Project Management Tool with Susan Fennema 
  29. I Went to High School with the Apple File System Guy with Tim Dietrich 
  30. We Like Our Customers with Geoff Perlman 
  31. Virtual Office Rules with Dana Brown and Alyssa Foley
  32. Copy, Paste, Search and Replace with Terry Eutsler
Subscribe at iTunes or to RSS Feed

Virtual Xojo User Group - June 2017 Meeting Is Today


Just a reminder that the June VXUG meeting is today (June 15th) at 2:00 PM Eastern Time.

Today's presenters include:
  • Dana Brown, Xojo's Director of Marketing, who will give us an update on XDC 2018.
  • Tim Dietrich, who will demonstrate Aloe, a Xojo class and development methodology that can be used to create public Web sites using Xojo.
  • Wayne Golding of Axis Direct Ltd, who will give a presentation on using Xojo to develop Windows Service Apps.
We still have space available. If you haven't already signed up, and would like to attend, click here.

Playing with CoreML in Xojo


Thanks to the 64-bit debugger in Xojo 2017, we can now easily try 64-bit applications and that's a must as Apple's latest frameworks don't support 32-bit anymore.
So yesterday and today I worked on a test project including a Xojo plugin for CoreML framework. Here is my test project running:



While macOS 10.13 is not ready for a few months, we can already download the beta versions of macOS and Xcode and play with it. You can use a model quite easy as you see in the Core ML presentation from WWDC 2017. With just a few lines of code we load a model, setup source image and run it though the neural network to classify the picture. You can get sample models from Apple's Machine Learning website.

The plugin will be available later this year with the macOS release.

OmegaBundle 2017 ends on weekend


The OmegaBundle for Xojo including MBS Plugins is ending on the weekend:



If you plan to buy the bundle, please do it soon.

Plugin wishes for macOS 10.13 and iOS 11?


You may all be watching videos from WWDC and learn what's coming soon for macOS and iOS.

Now the are a lot of new APIs, but I'd like to know from you what you'd like to see in our plugins for Xojo and FileMaker.

Usually we provide lower level wrapper for Xojo to Apple's APIs for macOS with hiding all the threading issues from you and translating values from native Xojo types to the matching Foundation types. As there is currently no iOS plugin SDK for Xojo, we can't make all features available via declares.

For FileMaker we usually provide a much more higher level API to do selected things and provide plugin functions for both macOS and iOS.

If you have ideas and wishes, please email me. I'll keep a list and if we have a lot of wishes for a given API, I may give it some priority.

Looking for speakers for XDC 2018


Xojo Inc. is looking for speakers for XDC 2018, the biggest Xojo conference in 2018 from April 25 to 27 in Denver, Colorado, USA:

We are looking for talented and passionate speakers to present at XDC 2018 in Denver, CO! In addition to the fame, becoming an XDC speaker gets you a 50% discount on conference registration!

If you are interested in presenting, please submit a proposal with your session topic(s) and brief description(s) (3-5 sentences), along with your full name and contact info (preferred email and phone number), to the XDC Conference Coordinator at dana@xojo.com. If you are interested in presenting, but not sure of a topic, please reach out to us and we can help you develop your session. The deadline to submit proposals is Friday, June 30, 2017.

Here are some tips on submitting a good session topic.

Still 20 days left to submit a proposal. Myself I can of course talk about what's new in MBS Plugins, or take about making plugins or maybe make a session about comparing what machine code the compiler creates with various options and Xojo versions.

MBS Xojo Plugins, version 17.3pr2


New in this prerelease of the 17.3 plugins:
  • Improved key length handling for CipherMBS class. Init functions now report true on success and false on failure. Short keys are filled with zeros (as before), we report false in case of errors, but still may take reduced key (as before).
  • Updated SQLite to 3.19.3.
  • Fixed bug with DynaPDFMBS.ShowDifference and rotated pages.
  • Added QueryMT method for NetSNMPMBS class.
Download: monkeybreadsoftware.de/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared Dropbox folder.

Older blog entries:

2017-06-09 Developer Meeting in Nuremberg
2017-06-08 Save the date: MBS Xojo Developer Conference
2017-06-07 Austin Xojo Meetup in July - With Geoff Perlman & Others
2017-06-06 Xojo Meeting in Netherlands
2017-06-05 MBS Xojo Plugins, version 17.3pr1
2017-06-03 Windows Task Monitor written in Xojo
2017-05-31 Job Offer: Xojo Developer to work with Light Blue Software
2017-05-30 Xojo Conference planning 2018
2017-05-30 Xojo Versions used
2017-05-30 Enable Web Inspector for WebViewer
2017-05-29 Show progress in task bar on Windows
2017-05-26 DynaPDF Manual online
2017-05-23 Xojo Stammtisch in Berlin
2017-05-23 Xojo on sale
2017-05-20 Xojo Developer Meeting in Nuremberg
2017-05-20 OmegaBundle 2017 ends soon
2017-05-18 Register now for the 2018 Xojo Developer Conference
2017-05-18 Convert WMF and EMF files to PDF with DynaPDF
2017-05-16 Zurich, Switzerland
2017-05-15 MBS Xojo Plugins 17.2

Archives

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