Added live chat to website

On our websites you can now post a question in the live chat. You find it on the bottom right of every page.
Enjoy. It's powered by

Wiki to PDF

This project creates a PDF from the wiki with the documentation from REAL Software.
It's a hobby project by me to have the wiki in a PDF handy. You can put it on the iPad or print it.

To create a new copy of the wiki PDF, do this:
* add your MBS and DynaPDF license codes to both REAL Studio projects.
* Run Wiki to PDF to create more than 3500 PDF files. If the app has an error, restart it.
* Run Create PDF to create the big PDF.

If you remove files from the pdf files folder, you can make excerpts like our PDF with only Curriculum and Userguide.

PS: Future versions of this project will be included with our DynaPDF plugin as example projects.

Common errors for Mac App Store Submission

  • Apps that do not comply with the Mac OS X File System documentation will be rejected.
    For example if you have code inside to write registration values like days left for trial to a hidden file on the file system.
  • All REAL Studio applications which include PPC code will be rejected, so upload an intel only built.
  • Apps that present a license screen at launch will be rejected.
    Do not forget to disable any EULA dialog on first launch. Especially as you, the developer, don't see it as you have maybe the 1000th launch.
  • Apps that exhibit bugs will be rejected
    The bug can be to show Demo as text there.
  • Linking to libcrypto.dylib without /usr/lib is not allowed.

Dates not to miss this week

28th January 2011:
REAL Studio One Day Renewal Sale

29th January 2011:
End of Omega Bundle offer

31st January 2011:
End of early bird prices for REAL Studio Summit 2011

MBS Filemaker Plugin 2.2 Mac updated

We had a little link bug in our 2.2 final plugins for Mac. They linked to libcrypto 0.9.8, a library that ships with Snow Leopard, but not with older versions of Mac OS X. That has been fixed and now it links to version 0.9.7 which is present on Mac OS X 10.4, 10.5 and 10.6. Sorry for the inconvenience.
Please download the newer archive.

MBS Releases the MBS Filemaker plug-in in version 2.2

NICKENICH, Germany (January 25th, 2011) -- Monkeybread Software releases version 2.2 of the MBS plug-in for Filemaker.

The MBS plug-in extends Filemaker with over 400 functions. Very popular are our functions for controlling the webview control on your database forms. Other key features are the ability to run AppleScript or Windows Script code in your calculations, manipulate pictures and to query system informations. In version 2.2 we improve the existing functions and add a few new functions:

With our new PDFKit functions you can now download a PDF for later processing. Like extracting certain pages out of a PDF and getting text or preview pictures for pages. New functions for WebKit allow you to get the PDF file currently visible on a webviewer. The new WebView.GetURL method can be useful to query what page is currently visible in a webviewer. With our WebView GetImage and GetImageCount functions you can query details about images on a website. This is useful to download all pictures from a website.

The new Log and Msgbox functions allow you to quickly show a variable or function result in a little dialog or on the debug console. We also added new window methods to move and resize with animation. Also you can hide the window content on Mac OS X while resizing for a better animation. Please also check our WindowTransition functions.

Finally we have some receipt validation functions. You need them if you want to build a filemaker runtime solution and send it to the Apple App Store. Our code helps you to validate the receipt file. This way you can avoid illegal copies of your application. We include also a step by step guide on how to submit your application to the App Store. Please note that this is brand new and it's not 100% clear whether Apple will accept Filemaker runtimes.

Read the complete release notes here:

The plug-in is available for FileMaker 7 to 11 on Windows XP, Vista, 7 and as Universal Binary for Mac OS X. Demos are available on the website, along with license and purchasing information. Not all functions are available on both platforms, so please check the documentation.

The plugins can be downloaded on our website:

The online documentation can be found here:

For questions you can send us an email or use the feedback forms on our website.

More on Web Apps

Today I spend a couple of hours on a web app and I got a few items you may want to sign on or add your comments?
  • #15595: WebListbox needs CellStyle() or DataCell.Style property
  • #15187: WebListbox needs column alignment options
  • #15570: 3 downloads with WebFile in a listbox crash web app
  • #15526: format doesn't work right in Web edition
  • #15601: WebButton needs Cancel option
  • #15163: Open Event fires twice for ContainerControls on Webpage
  • #15604: WebListbox needs rowpicture/cell picture
  • #15605: Webcheckbox sends request to server for every click, but webtextfield not?
In order to have those links work, please install Feedback app. You need an account from the REAL Software website to login. And you should connect your license with the account to add points for the ranking.

Last week for Omega Bundle

Our Omega Bundle ends on 29th January 2011, so check it out:
Even if you have a few of the items, this bundle may be very useful for you.

For our plugins, you get a new commercial license independent of whether you had one before.
But if you have a subscription to the REAL Studio Developer Magazine, you can extend your subscription with this sample.

Tipp of the day: showurl

Using showurl on the REAL Studio Web Edition is the normal way to start a download of a file. But it looks like it fails if you use it too fast. See Feedback #15570. Workaround is to use put a htmlviewer on the webpage and assign the URL there. But that can lead into double downloads if the page is reloaded later and the browser starts downloading again.

The 10 Hottest Features of Valentina Office Server

Lynn posted an article on about what benefits you get from using their Office server included with our Omega Bundle:

Take a look :-)

(Personal) Trainings

You want to learn more about REAL Studio? Get started with the Web Edition? Or you want to discuss your ideas with me about how implement them?

We do offer trainings. Regular group trainings with Brainworks (See as well as individual trainings. Individual trainings for you personally or a group of developers coming together can be in German or English.

If you like a training, please email me.
Locations can be our office here, your office or a hotel room. And we can have trainings near REAL Studio conferences in Essen and Atlanta so you travel only once.

Uploaded videos to youtube

I uploaded my tutorial videos to
But seems like youtube has some encoding problem as a lot of videos have been shrunken. Some are only one second long. Has someone an idea?
I uploaded my MP4 videos with QuickTime X Player.

SQLiteManager on sale

SQLiteManager from Macro Bambini is on sale. I love this little database tool and use it at least once a week. So if you like to order a license, that's your chance:


Localized Web Apps

You can localize a web app. To do so you have two possibilities:

First is to duplicate code. We create a web page for English and for German: WebPageGerman and WebPageEnglish. In the session CreatePage event, we get have pagename being empty for the default page and there we can decide which page should show. For that we look into the session headers and if the accepted language includes German (de), we show the German page. Else the english page:
Function CreatePage(PageName As String) As WebPage
if PageName = "" then // start page
dim Lang as string = Session.Header("Accept-Language")
if instr(lang, "de")>0 then
Return WebPageGerman
Return WebPageEnglish
end if
end if
End Function
The second and maybe better way is to change the language in the WebPage open event and switch the labels to show the right texts:
Sub Open()
dim Lang as string = Session.Header("Accept-Language")
if instr(lang, "de")>0 then
label1.text = "Hallo Leute"
end if
End Sub
This way you avoid duplicate code.

Example projects:

Omege Bundle for REAL Studio is available until 29th January 2011

As you may know the Omege Bundle for REAL Studio is on sale this month.
The end date of this bundle has been set to 29th January.

Inside REAL Studio Web Edition

Today I did some heavy web development with the REAL Studio Web Edition. And I got a few curious things. I think this are internal variables, but they look interesting. So have you tried adding a variable "port as integer" to your App object in the Web Edition? Guess what happens?
Well, your port variable is there. No error, but suddenly you can't launch your app! Seems like port is a variable already declared by REAL Studio. Your own property hides the one from the framework and suddenly it uses port=0 for the sockets. A simple
print str(app.port)
shows the port from the build settings. Port does not autocomplete, but it is listed in the documentation, so this is not a hidden thing. On the documentation you see also an icon property. But it's not in the current REAL Studio WebApplication class, at least not in REAL Studio 2010r5.
So it's somewhere else and I found it. If you are in, the word framework does not autocomplete, but once you wrote it for any reason, it shows "WebApplication.framework as Dictionary" in the status line. This dictionary is very interesting. To look inside, simply write in a event
Sub Open()
dim d as dictionary = framework
End Sub
Once in the debugger, you can see the content of d. The dictionary has the following keys and values:
  • framework.css, some Style Sheets
  • framework.js, some javascript
  • pagestop.png, a PNG with forbidden sign. You see it if the connection is lost.
  • space.gif, a GIF.
  • favicon.ico, the favorite icon which Safari shows next to the URL. Currently a globe picture.
Now we can use that and replace the pagestop png with our own like this:
Sub Open()
// take a picture
dim p as picture = logoMBS(500)
// make a PNG
dim s as string = PictureToPNGStringMBS(p,0)
// assign to the framework dictionary
framework.Value("pagestop.png") = s
End Sub
I don't know how REAL Software sees this, but I like this dictionary. It allows us to customize a few things like the favorite icon and the pagestop icon. They could simply document it and have users pass their own items here. Maybe that's their intent as normally they hide properties used by the framework. Sometimes you see those internal properties in the debugger or in autocomplete. They start with underscores and should be invisible for autocomplete or the debugger. By the way: Documenting this dictionary would implement a few feature requests right away.

PS: Years ago I read this Inside Turbo Pascal books to learn how things worked and I think this should exist for REAL Studio, too.

Booked my trip to Atlanta

I booked my flight and hotel for the REAL Studio Summit 2011.
On my list I have already 17 people where I know they will come to this event, but there are probably more.

It's still time to sign up and come for a visit to Atlanta on 19/20th March 2011.

MBS REALbasic Plugins, version 11.0pr13

New in this prerelease of the 10.6 plugins:
  • Added WindowsExecuteMBS function.
  • Added CustomPicture for OpenDialogMBS on Windows.
  • Added new UnZipMBS Constructor for passing a file offset inside the zip file.
  • Updated XMP Toolkit to Version 5.1.2. A few methods removed and a few new ones added. PPC is no longer supported by Adobe, so don't expect the plugin to work there.
  • Disabled my new OpenGL code on ScreenshotRectMBS as it does not return the right screen rectangle. Old code still works.

Conference Hotels

For the REAL Studio Summit 2011 in Atlanta, finding a hotel seems to be pretty easy. I expect to stay in the conference location, the Holiday Inn Atlanta Airport south. I hope that others will stay there too and we can spend time together for dinners or sit together at the bar.
Of course you make no big mistake if you book the Holiday Inn Atlanta Airport (without south), but you'll have to drive a mile. Next to the conference location, there are at least 3 hotels next door and 20 hotels within a mile.

PS: Seems like the Sleep Inn Atlanta costs less than half compared to the Holiday Inn Atlanta Airport South and it's just a 300 ft walk.

For the REAL Studio Conference 2011 in Essen, Germany, it's a bit trickier. The Unperfekthaus is nice location for events and I really like the room 154 for our conference. But even if they have a hotel part, that is more like an holiday apartment (7 rooms) and too expensive for a normal visit. The best choices may be the Holiday Inn Hotel in Essen, just 350 m away from the Unperfekthaus and my favorite. Hotel Lindenhof may also be a choice and is even closer to the conference location. Finding a hotel is in general not too difficult as as I know there are not other big events which would make hotels a difficult task.

See you there!

Why image color matching is very important

Heinz Groß sent me a good test image for testing whether an application does color matching correctly. Click on this picture to open the test image and see how it looks like:

There are two possibilies how this picture looks like:

The picture has a color circle and inside the names of the colors in German. Where you read ROT, you should see red. And where you read BLAU, you should see blue. So the left picture is wrong and the right one is correct in colors.

How it works? Well, this image has a very special ICC Profile which switches the color channels for red and blue. Applications which use the profile will show the correct picture and others will show the raw pixels.

Download of the test picture: sylwia.jpg

Making use of the WebFileUploader

A few days ago I discussed with a client about creating a picture upload. The idea was that customers could upload a dozen picture files for having them printed on a high end printer.
The first question is how the user could add pictures to the WebFileUploader control. Currently you can only use the plus button to add files, but you have to click plus for each file. So we had our first Feedback request: 15375: allow multi-file selection for webfileuploaderf. An alternative to the plus button would be to use Drag and Drop which seems to be possible in newest browsers. As far as I know Safari and Chrome can do this already, so I hope our second Feedback request may be implemented: 15374: Drag and drop for webfileuploader.
Now the user can add files, but we have no way to check if the file is valid. Maybe it's far too big to upload or not a picture file, so we may need a way to check what the user selected: 14947: We need a way to check the files selected by a user before uploading using WebFileUploader. For removing a file we don't want from the list, we need of course a remove method: 15102: WebFileUploader Additional Methods.
Now we tried the upload and detected that uploads are limited to something like 500 KB/s maximum. a 40 MB file has an upload speed of 260 KB/s on localhost. This is of course much too slow. Downloads form Web Apps can be 50 MB/s and we'd expect upload to be as fast. So we made this feedback request: 15386: Slow performance with Web Edition in RS 2010r5b1. Sadly we put our REAL Studio 2010r5b1 performance problems into the same report and can't split it now. :-(

Now once we have the pictures on the server, we'd love to display thumbnails to the user. Now we would like to build the JPEG for the WebPicture object ourself. So we have this request: 14950: Please add WebPicture constructor taking a picture. So our JPEGExporterMBS class could create the picture and we pass it through a WebPicture to the user. With own compression settings (baseline, progressive, ICC Profile).

Finally we had the question how to make affiliates or brandings. We'd love to call the webapp with a special URL including a parameter so we can customize the appearance of our image upload tool and handle several sellers from one app with different offers: 15061: WebSession.CreatePage should give full URL for new page requested.

About the Omega Bundle

I got a few questions about the bundle. First it's a very special offer. With $399 for over $3200, the reduction in price is huge. You have over 80%, exactly 87.5%. This is a great chance for everyone to get into using plugins with REAL Studio and ordering this bundle. Even if you have one or two of those items included, this is a great deal for you.

So it's not possible to modify the bundle for you in case you have an item and swap something else inside. But if your Complete license ends later this year, ordering this bundle will give you an extra license valid until end of 2011. And as far as I know the RB Developer part of the bundle gives you 6 additional issues for your subscription.

The offer will be valid for the next two weeks, but before it is stopped, we'll certainly announce the end a day or two in advance.

For more information and immediate purchase visit

Testimonial from Tim Jones

today, I got a new testimonial, this time from Tim Jones:

I've worked in the realm of software development since 1982. I've used tools from CICS to COBOL to FORTAN, 4 families of C, multiple FORTH implementations, Rexx, TCL, Python, and numerous BASIC variants on computer systems ranging from old NCR systems, Wang VS and OIS systems, IBM System 36 and 38, and various DEC VAXen before moving to more modern Unix and PC based evironments. When I took on the Macintosh platform in 2001, the options were limited. While Apple provided Xcode and a version of GCC, their libraries were different enough from my normal Unix platforms that simple ports became quite an effort.

In 2003, I discovered REALbasic and very quickly became a fan for its ease of use as a RAD tool. I was able to very quickly create GUI wrappers for our ported Unix tools that enabled non-sysadmin users to access to power of the Unix command line on OS X. As I became more familiar with both REALbasic and OS X, I started to realize that a lot of the power in the OS X platform was not easily available from a default REALbasic installation. Finally, in 2005, I found and started using the Monkey Bread Software plugins - a very funny name for a very important addition to my programming toolbox.

I've been an MBS user continuously since then and all of our products on the three supported platforms - Mac OS X, Linux, and Windows - would not have been possible without a lot more effort on my engineering team's part if not for Christian's powerful and versatile Monkey Bread Software Plugins.

Tim Jones
President and CTO,
TOLIS Group, Inc.

Omega Bundle 2011 for REAL Studio Released

10 Essential Tools for All REAL Studio Developers

Monkeybread Software has joined with a group of professional development tool vendors to produce and release Omega Bundle 2011 for the REAL Studio (RS) environment. This limited time package contains $3200 worth of tools but available in this set for $399 - over 80% savings.

Omega Bundle 2011 for REAL Studio brings together 10 essential plugins, add-ons and more, including:
  • Formatted Text Control: Instantly add word processor capabilities to REAL Studio based applications. Sold separately for $150.00.
  • Elastic Window. Provides elegant window resizing in your applications. Sold separately for $195.00.
  • Mask-R-Aid. A developer's tool to generate masks for photo realistic icons. Sold separately for $19.95.
  • RB Code Reports. Generates reports on software metrics for your REAL Studio based applications. Sold separately for $24.95.
  • REAL Studio Developer Magazine. All previously published issues plus one-year subscription. Sold separately for $261.00.
  • Aspen Icon Set. 80 professionally designed, cross platform compatible icons for your applications. Sold separately for $179.00.
  • Valentina Office Server Unlimited. Advanced database and reports server based on the ultra fast columnar database engine Valentina. Sold separately for $1499.
  • Franklin 3D Game Engine. Easy to use, multi-platform cross-platform 3D engine for games, simulations and 3D apps. Sold Separately for $299.
  • MBS Complete. Thousands of new functions that transcend RS limitations. Sold separately for $259.00.
  • Valentina ADK+ for REAL Studio. Embedded local ultra fast database for REAL Studio on Windows, Mac OS X and Linux. Sold separately for $399.00.
This package will elevate your REAL Studio programming to a whole new level that will allow you to produce more polished applications. REAL Studio is the modern, cross-platform, integrated development environment for building object oriented BASIC applications on Windows, Linux and MacOS X and available separately from Austin, Texas based REAL Software.

For more information and immediate purchase visit

REAL Studio Developer Magazine 9.2 published

The January/February 2011 (9.2) issue of REAL Studio Developer is now available!

Here's a quick preview of what's inside this issue:
  • Submitting to the Mac App Store * by Thomas Tempelmann
    Curious how to get your app on Apple's new Mac OS App Store? Your step-by-step instructions are here!
  • Survival of the Fittest * by Johnathan Mercer
    How to use genetic programming in REAL Studio to find the best solution to your problem!
  • Deploying REAL Studio Web Apps * by Paul Lefebvre
    REAL Studio Web Edition is here, but how do you make your Web Apps available to the world?
  • Hashing for Security * by JC Cruz
    If you don't know your hashes from hash browns, this in-depth article will bring you up to speed.
  • The Fine Art of Beta Testing * by Tam Hanna
    Why you should user-test your software and some tips on how to do it.
In our regular columns we've got articles on updating Self-Updater, the importance of face time with clients, and SQL's "Prepared Statements" feature, and much more. Enjoy!

Mac App Store launched (Updated)

And we are inside with our Combine PDFs tool. Also a few other apps from the REALbasic world are there, so check it soon.

If you like to make your own app for the Mac App Store you can use code from MacOSLib to check the receipt. Here is my variant which uses our CoreFoundation plugin classes instead of the MacOSLib CoreFoundation classes. As I use my plugins anyway, I'd prefer to have less code in my project:

And finally there is a guide for the Mac App Store from Thomas Tempelmann on the ARBP website or in the 9.2 REAL Studio Developer Magazine as well as a presentation on the REAL Studio Summit 2011.

Atlanta REAL Studio Users Group - January 10th, 2011

After the holidays off, we're back at it with a January meeting.

Who: Everyone interested in developing in REAL Studio
What: Monthly Meeting
Where: Ippolito's Restaurant, Sandy Springs, GA
When: January 10th, 2011 - 6pm to 9pm
Why: Talk about the latest news including the release of REAL Studio Web Edition!

As always, first pizza is on me!

Click here for a map to Ippolito's

(from Kevin Cully)

PS: Has been rescheduled for a later date, so please check updates from Kevin.

Just took a picture...

MBS REALbasic Plugins, version 10.6pr12

New in this prerelease of the 10.6 plugins:
  • Added WindowsFontFamilyMBS class.
  • Added QTKitCaptureFileOutputMBS events.
  • Added OpenDialogMBS SelectionChanged event.
  • Added HTMLViewer.PrintToPDFFileMBS function.
  • REAL Studio IDE shows now special missing classes in the error messages which tells you that the CocoaBase plugin is missing if you didn't install it.

Just 11 weeks till REAL Studio Summit 2011

You are living in the United States? Or you'd love to go there for a conference?
In just eleven weeks you have the chance to meet REAL Studio developers you know from the forum or the mailing list. And you can ask me all the questions you have about our plugins and services :-)

The early bird price until end of January is $350 (later $450). Sign up now!

Take the chance to visit Atlanta, meet other REAL Studio developers and learn from REAL Software engineers first hand about news on REAL Studio. A lot of sessions will show you what others did with REAL Studio before and how to use some of the famous tools for developing. Other sessions will show some best practices on development techniques like databases. Over time more sessions will be added and if you like you can do a presentation yourself. And of course you can chat with me about our REAL Studio products.

More details are available here:

PS: For everyone who likes to visit our conference in Germany, you can register here: REALcon 2011 in Essen, Germany. Early bird registration fee there is 179 Euro incl. VAT.

Combine PDF 5.1 failure

Software projects get big. So big that you sometimes forget to remove some code from a beta version.
So it happened in version 5.1.x of Combine PDFs. Our application tells you that it's an outdated beta version. This error should not be there and we fixed it for version 5.2 on our homepage.

A very easy problem and now everyone has to download the application again :-(


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