Issue: 13.5 (September/October 2015)
Author: Scott Boss
Author Bio: Scott Boss is the founder of Nocturnal Coding Monkeys, LLC, who specialize in writing custom software. Scott has been a developer, system administrator, storage engineer, consultant, and architect to businesses from startup to global 100.
Article Description: No description available.
Article Length (in bytes): 7,605
Starting Page Number: 66
Article Number: 13509
Related Web Link(s):
Excerpt of article text...
This is the first article in the new column
Open & Free. Here I will discuss open source software for Xojo, including modules, classes, and applications. If you have any suggestions for items for me to review, please email me at firstname.lastname@example.org.
This issue we will be looking at Kaju (
https://github.com/ktekinay/Kaju). At the time of writing this column, it was version 1.5.1. Kem Tekinay wrote Kaju to enable self-updating Xojo applications. In the Mac world we have had Sparkle ( http://sparkle-project.org) to update our applications for years now. Sparkle works well at auto-updating Mac applications, but Sparkle doesn't have a native Xojo interface for it, so you have to use declares or use MonkeyBread Software's plugin. The other drawback is it is only for the Mac.
Now Kaju is cross-platform. It works on Mac, Windows, and Linux desktop applications. The design doesn't lend itself to console nor Web Edition applications, although some changes could be made to make it compatible with those editions. I have tested it on both Mac and Windows. It works equally well on both. Kaju is also native Xojo code, so you can expand its functionality as you see fit.
To start using Kaju, you will need to clone the repository (
https://github.com/ktekinay/Kaju) from Github. Then you will need to open up the Admin App in Xojo, and copy the "Kaju Classes" folder to your application. Next add a global property UpdateInitiater As Kaju.UpdateInitiater. Finally we need to add code to two events in App. First event is CancelClose, add the following code.
Code Listing 1: App.CancelClose.
...End of Excerpt. Please purchase the magazine to read the full article.