Kit vs. Plugin for Bonjour

As you may know we offer both a MBS Xojo Network Plugin and a MBS Xojo Network Kit and both offer Bonjour classes. Now a client asked what to buy and the answer can be both. Just take a look on the platforms we support Bonjour:As you see, you can use the Kit for iOS and the plugin for desktop projects. If your desktop project only runs on Mac, you could use the Kit alone and enjoy same code for iOS and Mac development.

PS: If you still use DNSServiceDiscovery classes from MacOSX plugin, please migrate to newer DNSService classes.
The linux plugin uses the avahi library which is compatible to Apple's Bonjour.

MBS Xojo / Real Studio Plugins, version 15.1pr3

New in this prerelease of the 15.1 plugins:
  • Added Picture.GrayScale2MBS function.
  • Improved Carbon Printer Manager function. Some methods were deprecated by Apple and are removed. Others have been added.
  • QCCompositonMBS object can now be put into dictionaries and variants for conversion to NSDictionary.
  • Fixed NSTokenFieldMBS class which broke in 15.0.
Download: macsw.de/plugin. Or ask us to be added to our shared Dropbox folder.

The 2015 Xojo Developer Conference, one month left

Just one month left until we all meet for Geoff's keynote. In the last Xojo Developer Magazine issue, there is my article with travel tips for sight seeing around Austin. With a couple of pictures from a few years ago when the last conference was in Austin. On the Xojo Blog is an article about some more tips.

The good news on the hotel is that plenty of rooms are still available. And now the reservation system seems to work fine. It's $169 per room. No suites are available for discounted rates, just the regular ones. Anyway, as we can cancel room up to 2 days before conference, you should make your reservation early and later modify or cancel it.

The 2015 Xojo Developer Conference will take place April 29 - May 1, 2015 at the Radisson hotel in fabulous downtown Austin!

XDC is the best place for Xojo users to learn from the experts, network with other Xojo users from around the world and meet the Xojo engineers. We will have sessions for everyone wanting to get the most out of their tool - from topics for those who are just getting their feet wet, to sessions for the most advanced Xojo developer.

FileMaker and Xojo Meetings for Munich and Nuremberg

As I have work to do in southern Germany in April, we travel to Munich and Nuremberg.

This allows us to invite for local developer meetings there.

16th April, Xojo meeting in Munich
17th April, FileMaker meeting in Munich
20th April, Xojo meeting in Nuremberg
21st April, FileMaker meeting in Nuremberg

We have already 18 people on the list for those meetings. Now we look for a restaurant.

If you like to join us for dinner, please add yourself. We'll reserve a table in a nearby restaurant, meet and chat about development. Entry is free, but you have to pay for your dinner and drinks.

PS: If we don't have your email address, please also send us an email with contact details.

ChartDirector 6 progress

ChartDirector makes good progress and we got a few sample projects to run and output PDF files:



We are happy about the progress and I'm already working on the updated plugin.
You can load the PDF files here: colorbar2.pdf linearhbar.pdf semicirclemeter.pdf multiline2.pdf

XojoTalk podcast

The XojoTalk podcast just got it's tenth 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
Subscribe at iTunes or to RSS Feed

Warning of the day: Xcode vs. Xojo versions

Please keep a copy of Xcode 6.1 before you upgrade to 6.2 via app store updates. Or download a copy of the older version from Apple's developer website.

It's really annoying to get Xcode 6.2 installed by App Store and discover that Xcode 6.1 is required for Xojo 2015r1 to build iOS apps.
If you install Xcode 6.1 in Applications folder you can switch with xcode-select command just like this:

sudo xcode-select -switch /Applications/Xcode\ 6.1.app

Just curious here after switching back to 6.2, the Xojo 2015r1 IDE still finds the simulator!
Earlier today it complained about missing iPhone SDK.

MBS SQLite Extension in version 1.4

NICKENICH, Germany (March 24th, 2015) -- Monkeybread Software releases version 1.4 of the MBS SQLite Extension.

The MBS SQLite Extension is a multifunctional extension to any SQLite powered application. You can use it as:
  • a plug-in for Cube SQL 4.0 from SQLabs or newer.
  • a plug-in for Studio Stable Database Server 2.0 or newer.
  • an extension to SQLiteDatabase class in Xojo
  • an extension to REALSQLDatabase class in Real Studio
  • a plug-in for the REAL Server from REALsoftware
  • an extension for SQLite which you can use in all SQLite based database applications like SQLiteManager application (from SQLabs).
New in Version 1.4:
Our SQLite Extension gives you over 50 new functions for SQLite:
  • Additional mathematical functions like Round or Pow.
  • Functions to save blob values in files outside the database.
  • Functions to calculate checksums on blob values on the server.
  • String functions like SoundEx or accents removing for your text searches.
  • Regular Expressions in queries.
  • UUID generation
Our SQLite Extension supports Mac OS X, Windows and Linux.
Example projects for Xojo and Real Studio are included for SQLiteDatabase, REALSQLDatabase, REALSQLServerDatabase and CubeSQLDatabase classes.

You can test the extension for free up to 10 minutes per launch in a demo mode. Licenses are available for 99 Euro per developer with one year of free updates. If you have feature requests for additional functions, please send us an email.

MBS Xojo / Real Studio Plugins, version 15.1pr2

New in this prerelease of the 15.1 plugins:
  • Added QCCompositionMBS and QCCompositionRepositoryMBS classes.
  • Updated ColorSyncBitmapMBS to work with Xojo Pictures in Cocoa target.
  • Updated LCMS to 2.7.
  • Changed CloseAndSignPDFFile and CloseAndSignPDFFileWithDialog for DynaPDFMBS class to accept nil for OutputFile.
  • Fixed PictureMBS methods Clone and ClipImage to work better for clipped and console picture based instances.
  • Added QCViewControlMBS control.
  • Added QCViewMBS.loadCompositionFromData method and improved the properties.
  • Upgraded Xcode to version 6.2
  • Fixed bug in PictureMBS.CopyPixels where too many bytes were copied if sx was not zero.
  • Corrected mouse up event for OverlayWindowMBS class.
  • Added OrHigher parameter to the OS Version functions for Mac and Win so you can define if you want higher OS, too.
  • Added SystemInformationMBS.IsWindows81 and SystemInformationMBS.IsWindow10.
Download: macsw.de/plugin. Or ask us to be added to our shared Dropbox folder.

Tip of the day: PDF print settings

If your application produces PDF via DynaPDFs, you can include print settings for the PDF Viewer application. For existing PDFs you can import them in DynaPDF and write a new PDF including your print settings.

Print settings can include details like duplex mode with possible settings for default, short edge, long edge or simplex printing. You can ask the PDF Viewer to pick the tray from a laser printer based on the PDF Paper size. You can specify number of copies in range 1 to 5 and ask for no scaling or app default scaling. Finally you can even suggest print ranges to only print some pages.

For FileMaker the MBS FileMaker Plugin 5.1 introduces new commands to handle print settings: DynaPDF.SetPrintSettings, DynaPDF.GetPrintSettings and DynaPDF.GetInPrintSettings.

For Xojo the DynaPDFMBS class has methods including SetPrintSettings, GetPrintSettings and GetInPrintSettings. Related constants like kdpmFlipLongEdge, kdpmFlipShortEdge, kdpmNone and kdpmSimplex help to define values like duplex mode.

Especially the possibility to post process existing PDFs should help. For saving records as PDF from FileMaker provides a PDF which you can customize using our plugin.

FileMaker and Xojo Meetings for Munich and Nuremberg

As I have work to do in southern Germany in April, we travel to Munich and Nuremberg.

This allows us to invite for local developer meetings there.

Munich Xojo
Munich FileMaker
Nuremberg Xojo
Nuremberg FileMaker

Already 15 people put in their day preferences. In a few days, we can fix the dates.

If you like to join us for dinner, please add yourself. We'll reserve a table in a nearby restaurant, meet and chat about development. Entry is free, but you have to pay for your dinner and drinks.

PS: If we don't have your email address, please also send us an email with contact details.

MBS Releases the MBS Xojo Addressbook Kit in version 1.0

Nickenich, Germany (March 17th, 2015) -- Monkeybread Software releases version 1.0 of the MBS Xojo Addressbook Kit.

The MBS Xojo Addressbook Kit provides you with a few useful classes and modules to easily add Addressbook to your Xojo iOS application.

Complete Wrapper for iOS Addressbook framework.
  • CFErrorMB
  • ABSourceMB
  • ABRecordMB
  • ABPersonMB
  • ABMutableMultiValueMB
  • ABMultiValueMB
  • ABGroupMB
  • ABAddressbookMB
You can query sources, groups and persons, read/modify/delete values and get/set images for persons. Our example shows you how to create a person and browse people, groups and sources.

Wrapper Features
  • For Xojo 2015r1
  • Using exception handling to track error
  • Test code included
  • All classes with MB postfix to avoid name conflicts.
  • All module definitions are protected to avoid conflicts
  • Inline documentation
  • Full Source code, no encryption
  • Works for 32bit and 64bit targets.
Our Addressbook Kit requires Xojo 2015r1 or newer.
If you need similar classes for OS X, you can check the MBS Xojo Cocoa Plugins from us.

The Addressbook Kit is available for $99 USD or 79 Euro (+VAT if needed).

You can learn more and try the sample application on our website.
Please do not hesitate to send us comments, questions or feedback.

MBS Xojo / Real Studio Plugins, version 15.1pr1

New in this prerelease of the 15.0 plugins:
  • Added inline option for CURLEmailMBS.AddAttachment.
  • Added methods to AVMetadataItemFilterMBS to build filters on the fly and limit what is exported with AVAssetExportSessionMBS.
  • Added backgroundColor parameter for NSImageMBS.CopyPicture.
  • Added NSImageMBS.CopyPictureWithAlpha function.
  • Added MapiMessageMBS.SendMailMT methods.
  • Added CenterResize functions for Cocoa applications to resize window centered.
  • Updated MAPI functions to user Unicode API.
  • Added XLBookMBS.CopyContent function to copy content from one XL document to other, useful for converting between XLS and XLSX formats.
  • Added AVAudioMixMBS.mutableCopy, AVMetadataItemMBS.mutableCopy and a copy constructors to the mutable classes.
  • Improved SQL Plugin for running better threaded.
  • Changed SSH Plugin to set keep alive for the socket and set pipe signal to ignore automatically.
  • Fixed bug in CGSWindowListMBS class (double free which caused problems sometimes).
  • Added DNSServiceBaseMBS.Initialize function.
  • Optimized array access for RS 2006r4 to Xojo 2015r1 for maximum speed.
  • Added values functions for Java array classes to get Xojo array with values.
  • Added private constructors to Java classes.
  • Fixed DidConnect events for SQLConnectionMBS and SQLDatabaseMBS.
  • Added Trace event to SQLDatabaseMBS class.
  • Added Listen method and PostgresNotification event to SQLConnectionMBS and SQLDatabaseMBS classes.
  • Added JavaStatementMBS.executeBatch function.
  • Updated DynaPDF to version 3.0.39.113.
  • Added DynaPDFMBS.SetMetadata method.
  • Added TiffPictureMBS.Predictor property and constants.
  • Added RegExMBS.Unescape function.
  • Fixed AUPlayerMBS to work on Mac OS X 10.6 again.
  • Added DynaPDFMBS.ImportPDFPage function.
  • Fixed a bug with NSURL conversion in NSObject to variant conversion in plugin.
  • Added addressbook properties to various addressbook classes to avoid the addressbook being freed before person/group/value objects are freed.
  • Fixed a bug with DynaPDF registration on Windows. The dialog to show message about outdated license key did cause a buffer overflow (only on Windows).
Download: macsw.de/plugin. Or ask us to be added to our shared Dropbox folder.

Centered window resizing for Xojo Cocoa applications

Today I implemented a few new plugin functions to allow centered resizing in Xojo windows:



So if you resize the window, the center of the window will stay on the same place. It's difficult to show here in the blog, but maybe you simply try the project soon.
If you want to try soon, email me for a copy. Else wait for a new plugin prerelease.

PS: Works also in Real Studio if you still use that. Requires Cocoa target.

Installing 32 bit libraries on Ubuntu 14

Today I installed 32-bit libraries on a 64-bit Ubuntu to get Xojo app running.

here a list of steps I made, which you may need to do also:

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 libglib2.0-0:i386 libsoup2.4-1:i386 libicu52:i386

This installs a lot of libraries and after that my apps launch!

The ldd command helps to identify which libraries an executable or library file requires.

MBS Releases the MBS Xojo Network Kit in version 1.0

Nickenich, Germany (March 10th, 2015) -- Monkeybread Software releases version 1.0 of the MBS Xojo Network Kit.

The MBS Xojo Network Kit provides you with a few useful classes and modules to easily use network functions in iOS.
Our Kit contains two parts: A wrapper for OS X and iOS Bonjour classes to publish service and browser for service including resolving the IP addresses. and a wrapper for OS X and iOS for NSConnection classes including NSURLRequest/NSURLResponse with HTTP extensions.

NSConnection Wrapper:
  • HTTP and HTTPS support.
  • FTP download support
  • Synchronously and asynchronously transfers
  • Load to memory or file
  • Supply HTTP Header fields
  • Supply HTTP Body for upload
  • Supply HTTP Method like GET, PUT, POST or others.
  • Control about cache handling
  • Can use pipelining with HTTP 1.1
  • Define if to use cellular network or not.
NSNetService Wrapper:
  • asynchronously browses for domains to use
  • asynchronously browses for services with given type
  • asynchronously publishes services
  • query/publish TXT Record data.
  • Function to check for events on console projects.
  • Parse code for IP addresses, supporting IPv4 and IPv6
Wrapper Features
  • For Xojo 2015r1
  • Using exception handling to track error
  • Test code included
  • All classes with MB postfix to avoid name conflicts.
  • Compiles for all targets
  • All module definitions are protected to avoid conflicts
  • Inline documentation
  • Full Source code, no encryption
  • Works for 32bit and 64bit targets.
  • Example projects for Desktop, iOS and Console using our classes.
Our Network Kit requires Xojo 2015r1 or newer.
If you need network functions for Windows, Linux and Mac OS X cross platform, please check our MBS Plugins, especially the Network and CURL plugin parts.

The Network Kit is available for $99 USD or 79 Euro (+VAT if needed).

You can learn more and try the sample application on our website.
Please do not hesitate to send us comments, questions or feedback.

Arbed updated and reduced price

Our friend Thomas Tempelmann released a new version of Arbed, the alternative Xojo project editor.
The latest version improves reading/writing projects for Xojo 2014r3 and newer. Still iOS projects are not yet supported, so if you need that, please tell Thomas.

License prices have dropped by about 50%.
A complete license is not $89 and the basic license is now $29.
We recommend every Xojo developer to add Arbed to your toolbox. This is definitive a: Go and get it now!

More details on the Arbed website.

I personally use Arbed a lot to compare projects and see what changed between two versions. Also the export to HTML is used for my plugin documentation. Finally Arbed helped a lot on repairing corrupted projects. So Thank you Thomas for creating this editor.

Retina Drag & Drop

Today I had an idea how to solve the problem of having Xojo app run with retina resolution, but drag images where not high resolution. 


We now offer a plugin method to intercept the drag operation and replace the drag image with a better one.


Works very well here in various Xojo versions.


Will be part of 15.1pr1 plugins soon. If you want to try before, please send an email.


MBS Releases the MBS Xojo Encryption Kit in version 1.0

Nickenich, Germany (March 3rd, 2015) -- Monkeybread Software releases version 1.0 of the MBS Xojo Encryption Kit.

The MBS Xojo Encryption Kit provides you with a few useful classes and modules to easily add encryption to your Xojo iOS application. Our Kit contains three parts: The wrapper for CommonCrypto framework from Apple, Compression and Decompression functions using zlib and a database connector example to use databases from iOS projects.
  • Wrapper for OS X and iOS CommonCrypto framework.
    • Hashes with various algorithms: MD2, MD4, MD5, SHA1, SHA224, SHA384, SHA256 and SHA512
    • Key derivation with PBKDF2
    • Encryption with AES, Blowfish, DES and others
    • Hardware accelerated
    • Key wrapping with AES
    • Projects for Desktop, iOS, Web and Console using our classes.
  • Compression/Decompression functions using zlib.
    • Zlib wrapper for Compression and Decompression of memory blocks in memory.
    • for Win/Linux with MBS Compression Plugin
  • Database Connector for encrypted database queries from iOS to server app.
    • Features Server:
      • Console application for running in background on server
      • Reads preferences file for database name, password, user and server port
      • Using ServerSocket for taking queries
      • Code to Encrypt & Decrypt, Compress & Uncompress messages
    • Features Client Desktop:
      • Using Sockets for synchronous queries, 3 attempts
      • Classes for RecordSet in memory
      • Query window to run queries.
    • Features Client iOS:
      • Socket for connecting to server and running queries asynchronously
      • Query view to run queries and show result in table.
      • Delegate to inform about query finished/failed
      • Classes for RecordSet in memory
Wrapper Features
  • For old and new framework
  • Using exception handling to track error
  • Using enums for saver constant passing
  • Test code included
  • Convenience functions to pass values as text or string instead of MemoryBlocks
  • Parameter validation
  • All classes with MB postfix to avoid name conflicts.
  • Includes EncodeHex function
  • Compiles for all targets
  • All module definitions are protected to avoid conflicts
  • Inline documentation
  • Full Source code, no encryption
  • Works for 32bit and 64bit targets.
Our Encryption Kit requires Xojo 2015r1 or newer.
For Windows/Linux support you may need MBS Xojo Compression and Encryption Plugins and Database Connector access to various SQL Database, the MBS SQL Plugin is used.

The Encryption Kit is available for $99 USD or 79 Euro (+VAT if needed).
You can learn more and try the sample application on our website.
Please do not hesitate to send us comments, questions or feedback.

xDev Magazine Issue 13.2

The March/April 2015 (13.2) issue of xDev Magazine is now available.

Here's a quick preview of what's inside:
  • Your Guide to Austin, Texas by Christian Schmitz
    Heading to Austin in April for the Xojo Developer's Conference?
    Plan some extra time to see all the great places and historical sites in the area!
  • Animation Crash Course by Sam Rowlands
    Animation is a great way to make your applications feel more polished and professional. Sam shows how to use Apple's Core Animation to make your controls dance.
  • iOS Deployment by Marc Zeedar
    You've made your first iOS app with Xojo and tested it with iOS Simulator. Now it's time to get it onto your iPhone for real testing... but just how do you do that?
  • Mandrill and Xojo by Scott Boss
    Mandrill is a web API to send customized bulk emails. Scott shows how to talk to Mandrill with Xojo, so now you can use the service in your own applications!
  • Solving Sandboxing Issues by Sam Rowlands
    We love the security benefits of sandboxing, but not the developer headaches it creates. Sam demonstrates how to solve some common sandboxing problems.
Plus: articles on class extensions, Xojo Developer Evangelist Ulrich Bogun, database design, tips on using dates, common RegEx mistakes, and much more!
The biggest plugin in space...

Archives

Jul 2024
Jun 2024
May 2024
Apr 2024
Mar 2024
Feb 2024
Jan 2024
Dec 2023
Nov 2023
Oct 2023
Sep 2023
Aug 2023
Jul 2023
Jun 2023
May 2023
Apr 2023
Mar 2023
Feb 2023
Jan 2023
Dec 2022
Nov 2022
Oct 2022
Sep 2022
Aug 2022
Jul 2022
Jun 2022
May 2022
Apr 2022
Mar 2022
Feb 2022
Jan 2022
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