Josh Hoggan from Koingo Software, Inc. just released CrossToolbarKSW, a cool toolbar class where I helped him over the last months with a few issues. Certainly worth taking a look:
If you're waiting for Real Studio to get Cocoa toolbar customization, you may be waiting a while! We've been using this internal solution for a while to manage our toolbars. It is a wrapper class for toolbars in Real Studio that makes use of the MonkeyBread Software plugin set. It focuses on bringing a basic toolbar to Windows, but giving a fully fleshed out toolbar for Mac OS X including customization! Don't be stuck creating two sets of code for a toolbar for each platform any longer. There are a couple features here which don't work (ie. setting the pushed state of a toggle button to False instead of True manually), but they're easily added. Completely open-source and free to use and distribute without restriction.
Grab it here: crosstoolbarksw.zip
Here are a few basic things you should know and use in your code like the instances, fonts, error event, the color management and character maps.
Instances
Initializing a DynaPDFMBS object is time consuming as some initialization code needs to run like finding the fonts on the system. As initialization is costly, you should reuse the object. You call CreateNewPDF again to start a new PDF on the same instance. Of course you should call CloseFile and FreePDF before to cleanup.
Fonts
On Mac OS X and Windows we automatically load fonts from system font folder. But for other font folders or on Linux, you need to call AddFontSearchPath yourself to scan a folder for font files. That is important to know for people using web apps. Because we have users from time to time which have a web app working well on Mac or Windows, but they see no fonts on Linux.
This standard fonts are always available: Courier, Helvetica, Times, Symbol and ZapfDingbats.
Error Event
You should use the error event. This is an event where you are informed about all errors. While most functions return false or an error code in case of an error, the event gives you a way to decide if you want to ignore an error or handle it. Like when you set a font and the font can't be used. In that case you get error type being kE_WARNING and ErrorCode being 16. In that case you could simply ignore the error and call SetFont again with a different font name. So in error event depending on the error type (kE_FATAL_ERROR, kE_FILE_ERROR, kE_FONT_ERROR, kE_SYNTAX_ERROR, kE_VALUE_ERROR or kE_WARNING), you can decide if you want to display error to user or not.
Color Matching
Please take some time to learn the basics about color matching. If you want DynaPDF to correctly raster PDFs, you need to make sure color matching is initialized properly and used correctly. For that you call InitColorManagement method and pass some profiles. Create a new DynaPDFColorProfilesMBS object and set its properties. You can define a screen profile, a soft proof profile and default profiles for CMYK, RGB and grayscale colors. While RGB and gray profiles are really optional, you should always provide a screen profile for the target color space. If you render an image, this should be a the output color space for that image. If you render for displaying on screen, you should use the profile of your display. Also it is important to provide a default CMYK profile. As separation colors are normally defined with an alternative color in another color space (usually CMYK), this default CMYK profile is important to render them correctly to RGB.
Character Maps
You need to use SetCMapDir. Included with DynaPDF Examples you get a folder called CMAP with character mapping files. Those files are needed for mapping asian character correctly. So if you want to extract text correctly from any PDF, please use SetCMapDir to inform DynaPDF where to find the CMap files. They are needed to map back glyph IDs to actual unicode characters which is required for extracting, deleting or replacing them.
The next meeting of the Paris Real Studio developer group will take place Friday, January 18th, 2013 from 8h30 to 17h in Paris.
Save the date and join this meeting. The location has been announced: Espaces reunion, 43 rue de Dunkerque, 75010 Paris.
There will be presentations by Stéphane Thiroux, Stéphane Pinel (RealSoftware), Jeremiah Leroy, Valdemar de Sousa and Christian Schmitz (MBS).
Attendance at this meeting is free (but if you want to donate to the organization, you're welcome). WIFI is available on site.
For more details, please visit:
realstudio-fr.com/prochaine-reunion-du-groupe-pur-paris-utilisateur-realstudio/
PS: I booked my trip today, so I'll be there.
For our SQL plugin, we have an existing function
CloneRecordSetMBS to clone a recordset. Now we also add a function
BuildRecordSetMBS to create a RecordSet from scratch with an array of field names and an array of values. Currently string only, but I think this is enough to fill the Report functions in Real Studio on the fly with data.
Also to make use of our SQL plugin easier, we add a
SQLCommandMBS.AsRecordSet function to get a RecordSet for an existing
SQLCommandMBS. So you can do your query with our command object, set all flags and later get a RecordSet to run your normal code. So you can pass the RecordSet to the report functions, too.
This will be included in the next prerelease of 13.0 plugins.
- Added support of xlsm files
- Added UTF-8 support (mode is activated with book.setLocale("UTF-8"))
- Fixed bugs with loading some xls and xlsx files
- Fixed compatibility issues with Numbers for Mac
- Added support of empty cells in Sheet.cellFormat()
- changed format picture property from "Move but don't size with cells" to "Move and size with cells"
- Fixed Sheet.setNamedRange(), Sheet.setPrintArea() and Sheet.setName() methods for sheet's names with spaces (xlsx)
- Fixed bugs with some formula expressions with IF and AND functions (xls)
- Fixed bug with saving multi formatted cells in xlsx files
- Fixed bug in Book.delSheet() for xlsx files
- Fixed bug with reading some kind of error values
- Fixed issues with adding pictures into preloaded workbooks with pictures (xls)
- Fixed bug in Book.saveRaw() method (xls)
- Fixed possible memory leaks due to mismatched malloc/free functions (xlsx)
- Fixed bug in Sheet.cellFormat()
- Fixed bug with format/font inheritance for xlsx files
- Fixed Sheet.setPrintRepeatCols() method for xlsx files
This will be included in next plugin prerelease.
Frohe Weihnachten und ein gutes neues Jahr!
Dieses Jahr hat Michael fleißig mitgeholfen beim Backen
Merry Christmas & Happy New Year
This year Michael helped a lot with backing cookies.
Joyeux Noël et Bonne Année
Buon Natale e Felice Anno Nuovo
Sebastian, Michael, Monika & Christian Schmitz
New in this prerelease of the 13.0 plugins:
- Added NSAppleScriptMBS Constructor taking array of source code lines.
- Improved NetworkIntefaceMBS class to show more details.
- Added UUIDMBS.randomUUID, UUIDMBS.UUID and UUIDMBS.Validate.
- Added parameter to ValidateUUIDMBS for checking GUID version and new mode to fix formatting.
- Added RectControl.InvalidateThreadSafeMBS and RectControl.RefreshThreadSafeMBS.
- Changed win plugin to have more parts initialize completely only if not loaded in the IDE.
Download:
macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.
New in this prerelease of the 3.0 plugins:
- Added SNMP.SetRetries and SNMP.SetTimeout.
- Changed Syntax Coloring so variable and function names can have _ as character.
- Internal reading from container now also handles image: and file: path. So you can use that for reading image to GraphicsMagick for example.
Download at
monkeybreadsoftware.de/filemaker/files/Prerelease/.
For just $40 you can get a new license from Real Software today. Due to time zone differences, I think full 22 hours are left.
go here:
tinyurl.com/realstudiosale
New in this prerelease of the 3.0 plugins:
- Added SystemInfo.DoubleClickTime.
- Fixed bug with curl linked to wrong crypto library.
- Changed Files.List to also filter by extension if flags parameter is zero.
- Fixed UserNotification.Release.
Download at
monkeybreadsoftware.de/filemaker/files/Prerelease/.
Just to inform you. The filemaker meeting moves to 15th January and so I can't go to both Real Studio and Filemaker meeting in one run. For that reason, I will probably not drive to Hamburg that week.
PS: Of course if a client asks for a meeting in Hamburg for that time, I would be present. So if someone needs a session with me for training or development together for Filemaker or Real Studio, you can contact me.
Don't worry. Just a problem with a software update.
In general if they are offline with website and you need something, you can email support (custserv@realsoftware.com) directly, check the
blog or read the mailing lists.
Update: It's back online.
- Today, 17th December in Atlanta (USA). 6pm to 9pm in Aldo's Italian Restaurant. See website.
- Tomorrow, 18th December in Zurich (Swiss). 7pm in Positano restaurant.
- 9th January in Hamburg (Germany). 18:30 in Block House Wandsbeck. See our website.
- 18th January in Paris (France). Full day event. See website for details.
You can meet me in Zurich, Hamburg and Paris and ask your Real Studio questions
Save the date: 17th to 19th October 2013 in Salzburg, Austria.
New in this prerelease of the 3.0 plugins:
- Changed GMImage.NewFromContainer to also read from referenced container values.
- Added FM.QueryBaseTableNames, FM.QueryFieldsForBaseTableName, FM.QueryFieldsForTableName and FM.QueryTableNames.
- Removed FM.QueryFields and FM.QueryTables.
- Updated curl to version 7.28.1 on Mac OS X and Windows.
- Added a warning message dialog for Mac version which appears if you have two copies of the MBS plugin installed. I hope this helps to avoid some problems.
Download at
monkeybreadsoftware.de/filemaker/files/Prerelease/.
New in this prerelease of the 13.0 plugins:
- Added Label.SetTextThreadSafeMBS, Progressbar.SetMaximumThreadSafeMBS, Progressbar.SetMinimumThreadSafeMBS, Progressbar.SetValueThreadSafeMBS, RectControl.SetEnabledThreadSafeMBS and RectControl.SetVisibleThreadSafeMBS.
- Added AudioPlayThruMBS.Volume and CAPlayThroughMBS.Volume properties.
- Added Mode parameter to SystemInformationMBS.ProcessorCount to query either logical or physical cores.
- Added RecursionLimit and RecursionMaxLevel for DirectorySizeMBS class.
- Updated curl to version 7.28.1 on Mac OS X and Windows.
Download:
macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.
You may have read that accessing GUI elements in a thread is a bad idea. In the Real Software blog have been articles like
Doing Progress Right and
Detecting UI Access from Threads.
But well I don't like this thing with running a timer to update GUI. I want to update the GUI from the thread. There even was somewhere a feature request to make some methods like progressbar.value working well on a thread.
As this is still missing and setting progressbar.value on a thread still makes trouble, I added a few utility methods to our plugins:
- Label.SetTextThreadSafeMBS
- Progressbar.SetMaximumThreadSafeMBS
- Progressbar.SetMinimumThreadSafeMBS
- Progressbar.SetValueThreadSafeMBS
- RectControl.SetEnabledThreadSafeMBS
- RectControl.SetVisibleThreadSafeMBS
I hope those help people to move their code more easier to Cocoa, make it work right and thread safe.
You can apply now for DevCon as speaker now and also register for the conference.
Hotel rooms are also available now.
see
filemaker.com/developers/devcon
I think about applying with 3 sessions to offer. Of course I would be happy to be selected as speaker. Does someone here have experience with applying?
Tips are welcome!
New in this prerelease of the 3.0 plugins:
- Added FM.QueryFields and FM.QueryTables.
- Added SerialPort.GetBaudRate, SerialPort.GetDataBits, SerialPort.SetBaudRate and SerialPort.SetDataBits.
- Added SNMP.Get.
- Changed DynaPDF functions so you can also use them with a Lite license key if needed.
- Updated SQLAPI++ to 4.0.3b1.
- Improved memory allocations so we have a few less memory leaks.
- Fixed a little bug with backslashes in text for calculation syntax highlighting.
PS: We have to upload a 3.1pr2 for those using Mac OS X 10.6 as the plugin linked to a newer version of snmp library. You only need to download pr2 if pr1 didn't load for you.
Download at
monkeybreadsoftware.de/filemaker/files/Prerelease/.
New in this prerelease of the 13.0 plugins:
- Fixed rare crash in internal text functions where an empty string converted to UTF32 would cause a crash in internal text class destructor.
- Fixed PDFDocumentMBS attributes so you can now assign empty string to clear them.
- Added FormatMBS function.
- Added LocaleMBS class.
- Added NetworkInterfaceMBS class.
- Updated SQLAPI++ 4.0.3b1. This includes new informix unicode support.
Download:
macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.
The next meeting of the Paris Real Studio developer group will take place Friday, January 18th, 2013 from 8h30 to 17h in Paris.
Save the date and join this meeting. The location will be announced in the next days, but will be close to Gare du Nord in Paris.
There will be presentations by Stéphane Thiroux, Stéphane Pinel (RealSoftware), Jeremiah Leroy, Valdemar de Sousa and Christian Schmitz (MBS).
Attendance at this meeting is free (but if you want to donate to the organization, you're welcome). WIFI is available on site.
For more details, please visit:
realstudio-fr.com/prochaine-reunion-du-groupe-pur-paris-utilisateur-realstudio/
There is a regular Filemaker meeting in Cologne. It looks like the meeting scheduled for today is cancelled.
So if you planned to go there, please stay at home.
People on the event mailing list for Cologne will be notified for events taking place.
If you see this message:
You can either remove the Mac plugin part or update plugins to newer version. This error is due the missing resourcefork class in Real Studio 2012r2 in Cocoa targets.
Update: Resourcefork is also not available in Cocoa and gives an error when you use it.
As Real Studio 2012r2 removes the ResourceFork class for Cocoa target (strange idea, isn't it?), we decided to create our own resourcefork class for our plugins. It will be available with next prerelease.
And while we spend time on this, we can add a few additional goodies. if you have ideas or wishes, please do not hesitate to contact us.
Real Studio 2012 Release 2 is now available! With more than 100 improvements and 7 new features, this release includes:
- 30+ OS X Cocoa updates
- 20+ Web updates
- 10+ Windows updates
- 10+ Linux updates
- A new Web Control SDK that allows you to create web controls for use in Real Studio web applications using HTML/CSS/JavaScript. This makes it possible to use JQuery and other web frameworks in Real Studio web apps.
- Faster remote debugging for improved cross-platform support
- A WebCanvas for easily creating graphical, interactive custom controls
- Crypto module (Hashing) with support for MD5, SHA1, SHA256, SHA512, HMAC and PBKDF2 for 1-way encryption.
- Web applications can now easily be localized to support multiple languages in exactly the same way you localize desktop applications.
- PostgreSQL SSL support for improved security
To download 2012 Release 2, visit
realsoftware.com/download.
New in this prerelease of the 13.0 plugins:
- Added CoreFoundation support for Windows using QuickTime 7: CFArrayMBS, CFBinaryDataMBS, CFBooleanMBS, CFCharacterSetMBS, CFDictionaryMBS, CFMutableArrayMBS, CFMutableBinaryDataMBS, CFMutableCharacterSetMBS, CFMutableDictionaryMBS, CFMutableStringMBS, CFStringMBS and CFURLMBS work now on Windows if QuickTime 7 is installed.
- Added GTKWindowMBS class.
- Added MouseWheel, MouseExit or MouseEnter event to OverlayMBS class.
- Fixed OutOfBoundsException from Plugin on Windows to also show informative message.
- Fixed crash with DarwinRUsageMBS.IntegralMaxResidentSetSize property.
- Added picture parameter to ThreadedTransformMBS and TransformColorsMBS for better performance.
- Added CGDisplayMBS.SetRotation.
- Added folderitem.VolumeUUIDMBS.
- Fixed overflow bug in PictureConvolutionMBS class (dark pixels in white areas) and edge case (black pixels on left and right side)
- Fixed resize bug with lock properties on CocoaControlMBS on Cocoa targets.
- Fixed possible crash in MacUSBMBS.Connect.
- Fixed crash in GZipFileMBS.CloseForString on Linux.
- Fixed CocoaControlMBS function.
- Added BacktraceMBS function.
- Fixed some constants on NSWindowMBS like NSWindowDidEnterFullScreenNotification.
Download:
macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.
CoreFoundation is one of the Apple frameworks included with MacOSX. But it is also included with QuickTime 7 on Windows. So with next plugins theplugin parts
CF,
CFURL,
CFCharacterSet and
CFDictionaryArray are updated, so they work on Windows, too.
If no QuickTime is installed, we raise an exception on most functions.
You can try it soon in 13.0pr1 and if you have need for more CF classes on Windows, please contact us.
The people at
denkform.de are hosting a training for our MBS Filemaker Plugin. So if you want to spend a day with us checking our the plugin, please join us.
We make a guided tour and show you a couple of highlights and examples. Talk about what you can do and how you do some things. Later we will implement a couple of things in sample databases like the Audit function. Also download and upload with CURL is a good topic. We will look into the webviewer extensions and fill a sample form. Next we will do some image editing and writing a report into a Excel file.
Finally we have plenty of time for questions.
This event is in German (english event is also possible).
We meet 7th March 2013 at 9:30 am in
Denkform office. Cost is 70 Euro (+VAT) and you can buy a 5 seat license for additional 70 Euro (+VAT).
You can register on the
denkform website. After the event, there is the regular meeting which everyone can join for free and have dinner with us.
We can offer two Real Studio meetings:
18th December 2012 in Zurich
19th December 2012 in Bern
Both around 7pm to 10pm in a restaurant near the main station.
If you are interested, please email me so I can keep you informed about the exact time and location.
See also the
Swiss User Group.
Do you see picture on the side?
This is a cinema display rotated to 90° with the content. One of the fun things you can do nowadays with modern Macs.
With next plugins we'll have a SetRotation method on the CGDisplayMBS class to do this.
Code looks like this in our example project:
dim d as CGDisplayMBS = CGDisplayMBS.MainDisplay
dim e as integer = d.SetRotation(90)
if e<>0 then
MsgBox "Error: "+str(e)
end if
We just got a nice compliment from a customer. They started with Real Studio and did some testings with connecting to Microsoft SQL Databases. In their tests the plugin from Real Software to connect to MSSQL was much too slow. It app was frozen with processing a 100 records. They even considered dropping Real Studio, but luckily they discovered our
SQL plugin.
A speed comparison with same database and same hardware with MSSQL 2008 for processing 32,000 records shows this results:
Real Studio MSSQL Plugin: 2.5 hours if it does not crash!
MBS Real Studio SQL Plugin: 14 minutes
So this client is happy and enjoys our plugin and continues with Real Studio.
Your milage may vary as those benchmarks depend on a lot of parameters. But at least you should keep your database code able to switch so you can compare between various plugins.
PS: With MBS Real Studio SQL Plugin we also connect to Mircosoft SQL Server from Mac and Linux using freetds library which is not supported by Real Software's plugin.
Real World 2013 is less than five months away and Real Software announced today the session list:
- Advanced Object Oriented Design in Real Studio, Seth Verrinder
- Advanced Topics in Web Apps, Greg O'Lone
- Basics of Object Oriented Design in Real Studio, Seth Verrinder
- Cloud Sync Without iCloud, Stephen Dodd
- Creating Smart Apps Using Real Studio, Trisha Duke
- Database Code Hoarders: Buried Alive, Jared Zelek
- Database Design 101, Norman Palardy
- Design Patterns, Jared Zelek
- Designing Cross-Platform Apps, Paul Lefebvre
- Developing Linux Apps, William Yu
- Developing Windows Apps, William Yu
- How to Succeed in Business Using Real Studio, Richard Duke
- Intermediate Database Coding Techniques, Bob Keeney
- Introduction to the Web Control SDK, Greg O'Lone
- Introduction to Web Applications, Greg O'Lone
- iOS Basic, Joe Strout
- iOS Advanced, Joe Strout
- MonkeyBread Software Plugins Overview, Christian Schmitz
- New Framework: What, When and Why, Joe Strout
- New IDE Tips and Tricks, Thom McGrath
- Optimizing Code, Kem Tekinay
- Reporting Tools, Bob Keeney
- Scaling Web Apps, Travis Hill
- SQL 101, Norman Palardy
- Unit Testing: What and Why, Scott Boss
- Using 3rd Party Web Services, Paul Lefebvre
- Using Source Control, Paul Lefebvre
- Wifi Sync, Stephen Dodd
Also available is a
Pre-Conference Training Day from BKeeney Software. So see you on the conference and maybe I even come to the training to say Hello and answer some questions.
Tomorrow is once again the meeting of Filemaker developers from Rhein-Main area in Lorsbach (between Frankfurt and Wiesbaden) organized by
denkform.
If you like to chat with other developers or you'd like to ask me questions about our plugins, please join the meeting.
Location: Restaurant Linde von Lorsbach, Alt Lorsbach 21, 65719 Hofheim.
Date: 6th December
Time: 19:00 o'clock
Cost: You pay for your own drinks and dinner.
MBS will be there to show the new MBS Plugin 3.4.
We got this press release today:
Arbed is a tool to perform advanced editing operations with Real Studio
projects, such as:
- Comparing two projects, seeing and merging them in a structured manner
much better than what an be achieved using plain text files (such as xml and
rbvcp).
- Greatly assist in preparing an existing app for localization by turning
strings in your code into dynamic ones, all in one go.
- Advanced search & replace functions, even scriptable.
Version 1.6 adds the following features:
- Reads and writes VCP (.rbvcp) projects, too
- String Obfuscation lets you conveniently hide your texts (e.g. SQL statements) from hackers.
For more information see tempel.org/Arbed
We use it a lot here at Monkeybread Software, so we can recommend it to everyone for special tasks which the Real Studio IDE can't do. For example we use it to produce the HTML versions of the example projects which we include in our documentation.
Nickenich, Germany - MonkeyBread Software today is pleased to announce MBS FileMaker Plugin 3.0 for Mac OS X or Windows, the latest update to
their product that is easily the most powerful plugin currently available for FileMaker Pro. As the leading database management solution for Windows, Mac, and the web, the FileMaker Pro Integrated Development Environment supports a plugin architecture that can easily extend the feature set of the application. MBS FileMaker Plugin 3.0 has been updated and now includes 1375 different functions, and the versatile plugin has gained more than 100 new features:
Our new
DynaPDF functions allow you to work with PDF on Windows and Mac OS X. We have functions to open PDF from file or container field and import single pages or a whole document. You can query page count and page sizes. For each page you can render a picture of the page, extract the text and save a new PDF with your own metadata added.
New functions for
serial port control allow you to enumerate serial ports on the Mac or PC. You can start a connection and send or receive data. Useful for controlling label printers, point of sale displays or network switches.
On Mac OS X we can now use the same functions which drive TextEdit to
read files with formatted text including OpenOffice documents, Word documents and RTF files.
With our new Syntax Coloring features on Mac OS X for Filemaker 11 and 12 you can enjoy colors in your script lines to easily see mistakes and loops. In formula editors you can see missing brakes easily and highlight functions and variables. All this can be configured with
plugin functions and your settings are saved. Check our the new fmSyntaxColorizer database for easy configuration of this feature.
For
printers we now have functions to enumerate all installed printers on a computer. You can query and set the default printer.
For the
webviewer you can now also render the current website as picture. On Mac you can also get a PDF of the current webpage. And you can turn the webviewer in editor mode for a simple html editor.
For SQL we have a few additions. For
SQL commands inside your Filemaker database we now help you debugging with providing the error message which is not available in Filemaker directly. For
SQL connections to other servers we now have functions to read/write blob values directly with PNG/JPEG images.
Also we have
XML queries, new drawing commands to edit images, fullscreen window support for Mac OS X, new string functions for base64 and hex encoding, stored registration and much more.
For more details, please check the release notes. Take the time to check out the plugin and try the more than 150 example projects. Maybe you get some ideas on how to use the plugin in your solutions.
NICKENICH, Germany (December 4th, 2012) -- Monkeybread Software releases version 12.5 of the MBS plug-in for Real Studio.
The MBS plug-in comprises a collection of several plug-in parts which extend the Real Studio development environment with 1,700 classes featuring over 44,000 documented functions. Our plugins support all three platforms Mac OS X, Windows and Linux with all project types desktop, web and console.
Some of the highlights on the 12.5 update:
For our ChartDirector plugin we updated the ChartDirector library to version 5.1.1 and added a couple of new functions related to tracking cursors. Please try the new amazing examples for tracking cursors in various charts.
We updated DynaPDF to version 3.0.21.55 and added a few new classes like
DynaPDFEditTextMBS for editing page text. The new function ExtractPageText helps you to query the text of a page easily. And with the
DynaPDFPageStatisticMBS you can quickly check if a page has images or vector graphics.
The new
Mac USB class can connect to an USB device on a Mac. For Windows we have the
WinUSBMBS class. This way you can read and write data to USB devices cross platform and integrate various devices from your clients.
For our SQL plugin we have several new features. First you can connect now to SQL Anywhere Servers in version 10, 11 and 12 from Sybase. For our regular
SQLDatabaseMBS class we added SQLExecuteMT and SQLSelectMT methods for threaded queries in background. We also got an utility function CloneMBS to create a copy of a RecordSet and a few more utility functions like the new functions in our
MySQLMBS class.
With the new
ExtendedAttributesMBS module you can read and write extended attributes on Mac OS X like Finder comments and add your own metadata to each file.
Finally we have more additions like new picture functions, improvements to our Cocoa classes, improvements to PDFKit classes and the Twain plugin.
See
release notes for a complete list of changes. If you have questions, please don't hesitate to contact us. Also you can ask questions at Real World in Orlando next year.
Fixed 1600 examples for our Real Studio plugins and checked most of the 160 databases coming with the FIlemaker plugin.
Even a half automated process takes endless hours, but it is done now!
Thanks to Mr. Russell Watson we got a neat tool for syntax coloring. fmSyntaxColorizer makes it very easy to customize the syntax coloring feature in our Filemaker Plugin, version 3.0. You can setup your own palette for colors, color script steps and calculations and simply apply all the colors.
Take a look at those images. And once 3.0 is available, download it. You'll find this database in the Third Party folder in examples.
Update: if you like, you can already take a look on this by downloading the 3.0 pr here:
monkeybreadsoftware.de/filemaker/files. We are still working on some little improvements for the final 3.0 release.
New in this prerelease of the 12.5 plugins:
- Added RecordSet.CloneMBS method and CloneRecordSetMBS function.
- Added SQLExecuteMT and SQLSelectMT to SQLDatabaseMBS for threaded queries.
- Added DynaPDFMBS.PageStatistic.
- Added DynaPDFPageStatisticMBS class.
- Added mode 10 for CombineMBS function.
- Added support to BMPStringtoPictureMBS for BMP files with BI_FIELDS compression.
- Fixed bug in GMGraphicsMBS.Ellipse.
Download:
macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.
We all use a lot of databases, I presume?
Well, from time to time I had the idea that it would be useful to clone a recordset. And with the new plugin function
CloneMBS on the RecordSet class, this is indeed possible. The plugin makes an in memory copy of all records with all the values, so you can throw away the original RecordSet and even close the database connection.
This can be useful for various debugging things and I even considered some more functions, but I'm not sure how useful they'd be. Like creating a recordset on the fly in RB code providing an array of column names and and an array of values. Could you use such a dynamic created recordset?
Maybe something for
Studio Stable Database in order to use it with normal RecordSet? This way we could send a record set from SSD to report functions.
Well, if you have an idea, don't hesitate to contact us.
Five years ago we started created tutorial videos and today our
video page has birthday. Enjoy a video and learn about our plugins.
Over the years we collected more than 60 videos. We hope you enjoy them!
We know we could make more videos. So what wishes do you have?
Please email us or post a comment here.
You may have seen that we added SerialPort functions in last prerelease to our plugin.
Currently you can just
list ports,
open a connection to one or more and read/write data. On reading and writing we have functions to read and write text, single byte value or data as hex encoded text. For normal text you use the
write function to send it in a given encoding. Like this: MBS("
SerialPort.Write"; $port; "Hello World"; "UTF-8"). Or if you need to send just one character like escape key, you can use MBS( "
SerialPort.WriteByte"; $port; 27 ). Or you use MBS( "
SerialPort.WriteHex"; $port; $text ) so you can send some control characters noted as hex string like this: "1B7413D5".
We also have a few function to read like
SerialPort.Read,
SerialPort.ReadByte and
SerialPort.ReadHex. Finally you can close the port with
SerialPort.Close. As you need to pass a port reference number each time, you can open several ports at the same time.
This functions have been added for a project with a client where we needed to send text to a serial device, a point of sale display. That works fine. We have currently no functions to configure the port as we simply use default settings. In our case it doesn't really matter as the default settings work fine for us on Mac and Windows.
If you have other usages for this functions and you need more control, please email us so we can add more functions.
New in this prerelease of the 3.0 plugins:
- Added GMImage.AveragePixelValue.
- Added graphicsmagick functions to draw rectangle, line, round rectangles, circle, ellipse and arcs to image.
- Added SerialPort functions.
- You can now also use "dos" as text encoding name.
- Added new color names for Syntax Coloring.
- Added DynaPDF.PageStatistics.
- Added SyntaxColoring.Format function.
- Added more DynaPDF functions: DynaPDF.Save.
Download at
monkeybreadsoftware.de/filemaker/files/Prerelease/.