XDS End-of-Summer Developer's Bundle 2015

Xojo Developer’s Spot - Developer’s Bundle 2015

As summer comes to an end, I’d like to make available some of our custom classes, controls, and applications (full-source) at less than half price for Xojo Developers.

What’s Included in the Bundle?
ElastiControls (Desktop & Web Versions) Commercial - $19
FacebookAPIv2.4 Commercial - $55
GoogleAPIs Commercial - $40
SetPuzzle Lesson - $10
SimConsole (Windows Only) - $10
SimDesignerCanvas Commercial - $65
SimTabs (with 2 skins included - Carbon and Rounded Graphite) - $15
Simulanics WebCrypt - $10
Stripe Payments Modules - $30
XDS FontEmbedder Source - $10
XDSLibraryListbox - $15
XDSTinyMCEEditor (for Desktop) - $20
XTeTiCSQLServer (stand-alone and embeddable SQL server) beta - Lifetime source-code FREE for Bundle license holders, $99 stand-alone compiled for non-bundle license holders, $150 for source-code license for non-bundle license holders; when released publicly mid-october.

All these, have a value of $379+ USD and are being released for a limited time for only $185.00 USD.

To purchase the bundle license or see more, visit: http://xojodevspot.com/page.php?14

Want to know more about each item included?

Demos provided upon inquiry, if the links are not already provided below.

Developers whom already hold a license to one or more of the titles included in this bundle, and would like to upgrade to the bundle license, please inquire at mcombatti©xojostudio.org. Bundle License upgrades are available for a fee of the difference already applied to to currently held paid licences.

All sources are full source code, unencrypted commercial licenses

ElastiControls (Desktop & Web Versions) Commercial: ElastiControls was developed as part of the original XTeTiC package and allows controls to automatically resize in proportion to the application or webpage on which they reside. The classes were developed nearly 2 years ago, in response to Pariahware disclosing that they’d no longer be maintaining the “ElasticWindows/Web” classes. ElastiControls supports native and custom controls. ElastiControls has been separated from the XTeTiC plugins package, to provide developers a cheap, just-as-efficient, user-friendly, replacement to the no-longer-supported ElasticWindows classes.

FacebookAPIv2.4 Classes: Need to interact with Facebook? These classes give you access to post, edit, delete, and alter, Accounts, Achievements, Books, Events, Family, Friend Lists, Friends, Games, Groups, Home/Wall, Inbox, Likes, Links, Movies, Music, News Feed, Notifications, Outbox, Permissions/Security, Photo Albums, Photos Uploaded, Photo Tags, Pokes, Profile Feed, Scores, Statuses, Subscribed To, Tagged items, Television, Updates, Video Tags, and Video Uploads… just to name a few.? You can even upload Photos to Facebook!

Get the encrypted Demos Here to Try-Before-You-Buy!
Download: http://www.xojodevspot.com/fbdemo/FacebookAPIDemo-v2.4-Encrypted.xojo_binary_project

GoogleAPIs Classes (Set of 3): Using the included classes, it is possible to access and create:

-Maps with pins
-View Street, Satellite, Terrain, and Hybrid maps.
-Routing and polygons


  • Get driving, walking, and bicycling directions. Directions can feature waypoints and route optimization. You can avoid tolls and highways. Use device sensor to get location (if exists). All units are in Imperial or Metric.


  • Draw polygons and calculate distance and acreage.

Comes with Desktop and Web-Edition demos. Web-Edition polygons demonstrates use with “work-around demonstration” for mobile “touch” devices for rapid acreage/distance calculation via dropping pins (and moving pins) on a map, while keeping the page stationary.

SetPuzzle Lesson: Demonstrates how to scrape a game on a website, to obtain the current daily puzzle, and solve the puzzle within a mere moment. The source is provided to show how to obtain and make sense of the page HTML, and create logic to solve the given puzzle. Great for learning to create bots and web-automation services. This code provides the solution, so that the user can input the answers, and solve the puzzle quickly!

SimConsole (Windows Only): Allows a developer to create a console window while using a standard desktop application, and interact with the console. This is useful for shell operations, debugging, and running console applications from within a desktop application. The provided demo also shows how to embed the console window directly into the desktop application itself. This class DOES NOT allow a desktop application to run as a stand-alone console application, and the console is not available from a terminal separate from the application; only from within the desktop application itself.


SimDesignerCanvas: The SimDesignerCanvas is an advanced canvas control replacement for the standard Xojo Canvas control. It allows for rapid custom control development, object-oriented image handling, and automates designer interface implementation by allowing objects to be manipulated by code or drag-n-dropped. Like the Xojo IDE, it features custom object locking capabilities, visual object alignment bars, and object resize handles (all fully customizable). The SimDesignerCanvas also features picture object layering with move forward, backward, move to the front, and move to the back. Transparencies can be maintained, and the SimDesignerCanvas can save and load entire layouts with all objects and settings in XML format. The XML format can be saved directly to file or be obtained as a string for custom project file formats, for storing in a database, or used in another manor. Any and all features can be enabled, disabled, and customized from the Xojo Inspector, or by code. Picture (CanvasObject) objects within the SimDesignerCanvas can also store user-defined properties for use in designer IDE’s or other purposes. Objects in the SimDesignerCanvas also handle events such as MouseEnter (Hover), MouseExit, ObjectMoved, ObjectCreated, ObjectResized, ObjectResizing, GotFocus (ObjectSelected), and many more (plus the standard Canvas Event Handlers), and images can be dynamically changed within these events, or anywhere within your code as desired. Built-in functions also include Object rotation and Vertical/Horizontal mirroring. Even better, if an object has been removed, the SimDesignerCanvas can undo the remove event by calling a single function at any time (even after manipulating other objects). Any picture can be added to the SimDesignerCanvas as a CanvasObject, and a few built-in CanvasObjects are automatically supported such as Shapes (adding Quadrilaterals (squares, rectangles) and Ovals; supporting PenWidth, PenHeight, and PenColor), Text-Only Objects (drawn text elements with custom Font, TextSize, and TextColor), Drawable Objects (CanvasObjects which can receive mouse/pen input and be drawn-on with custom PenWidth, PenHeight, and PenColor). Objects can even accept a Caption parameter for use in labelling objects or creating custom buttons, with no additional code required. Dynamic controls (such as buttons,textfields, etc) can also be embedded into the canvas, or picture objects within the canvas, and move or be manipulated with the pictures themselves. You can export the entire canvas into a variety of formats such as PNG, Pict, JPG, GIF, BMP, and TIFF; supporting transparencies (if the image format supports transparencies) or call the FlattenedImage function, returning a Picture object of the entire canvas for use elsewhere in your software. Extending the CanvasObject Class is easy since it can accept any Graphics/Picture class objects, and all CanvasObject properties and custom properties can be accessed at any time, anywhere. StyledText objects are also supported and can be added to the canvas and moved around, edited, and resized freely, preserving their properties, and automatically handle word-wrapping. One of the best features of the SimDesignerCanvas is its ability to also export the entire canvas (all CanvasObjects and Backgrounds) in HTML format converting StyledText, object sizing and positioning, background position and sizing, all into native HTML elements! It is truly a “What you see is what you get” (WYSIWYG) Canvas control that is easy to use, and removes the complexities of designer interface and custom control development, so you can work on other faculties of your software immediately. It also features grid abilities and object linking, where objects can be chain-linked together and the connections move as objects are moved, maintaining their connection. All the common tasks and picture object management is handled for you!

The source code included in the bundle contains the SimDesignerCanvas control, the standard full demo application featuring all of the built-in functions, a ReadMe outlining all available functions, properties and abilities, plus demo XML project formats that can be loaded by the demo application.

The control has been commercially tested in a variety of software from electronic circuit board/PCB design, story/article publication software, HTML editors, and even a non-public iOS compiler called Simulanics iBuilder 2.0, written entirely with Xojo!

A demo application called “WebAlchemist” (comparable to EverWeb HTML editor) is also included to show what is possible. Within the ‘Extras’ folder, is also demos of custom control creation using the SimDesignerCanvas. WebAlchemist also includes a number of unmentioned custom created controls as well, that are bonuses for developers to keep in their code and control arsenal! The demo of WebAlchemist is not a 100% complete application (about 75% complete), but demonstrates many areas of interest developer’s will encounter while creating a designer of any kind!

SimTabs: The native OS Tabpanel is great, but sometimes a developer wants a unique feel to the application appearance. SimTabs is a custom tabpanel which includes 2 custom skins (Carbon and Rounded Graphite) to get a developer started. This great control also makes it extremely quick and easy for developers to create their own custom skins for the tabpanel!

Simulanics WebCrypt: A nice little security utility that has been used for almost 2 years behind closed doors within the XDS beta community, to share and collaborate code and ideas, ensuring that the code and ideas can never be compromised. Ideally, a source input should be around 5MB or under. WebCrypt uses a state-of-the-art proprietary encryption system to convert data into highly secure image formats, that are distributable on webpages as shared images, attached to emails, or any other method of data sharing/transfer. Each source input is selected, given an encryption key, and an encryption key file is chosen before the actual encryption commences. The full source code has been included, to give developers a starting point to advance and create their own secure data transfer protocols, or learn more about non-conventional highly secure encryption.

Stripe Payment Module: NOTE: You will need Xojo Web Edition, even if you plan to only make payments for desktop applications. The code was designed this way to ensure ultimate security of credit card information as well as your Stripe account. Desktop applications can process payments through your web application, keeping Stripe credentials out of reach from the End-User. You will need to install Node.JS, which is a small cross-platform server-side JavaScript interpreter. Node.JS is ONLY required on the payment processing server-side. Processing the payments server-side, instead of through JavaScript in the client browser, ensures with 100% certainty the client cannot perform malicious actions, or falsify information.

Stripe is an online payment processing service, like PayPal, only with better rates and without all the branding. Stripe allows you to securely process payments as well as setup and manage subscriptions. Stripe’s payment method allows your application to know the moment a payment is submitted, whether or not it is valid, and there is no pending period (unlike PayPal). The payment is either processed, or denied.
Contained, is the web edition and desktop demo applications, with full un-encrypted source code, so you can extend and change any Stripe APIs as you desire.

One of our clients was ecstatic about this set of code, and left the following testimony:

"This module – along with stripe payment processing – is a godsend for anyone looking to integrate credit card payments into their Xojo project. It is so easy to use you can set yourself up to accept payments in just a few hours saving yourself days, if not weeks, of work. On top of that, it comes with excellent developer support from people who really care about helping you get up and running. This product is so great that I contacted them and offered to send along this endorsement.”
-Steve Trombley
Praximity Consulting Group??

XDS FontEmbedder for Web Edition: The compiled application is donation-ware and available freely through our website. Within this bundle, we’ve included the full source code to the utility.

Ever wondered how to write a program to automate writing Xojo code, and make life as easy as select, generate, and import? Well, this utility and source shows just how to select a font from your system, convert it for embedding in Xojo, and even generates all the necessary code and WebStyles to utilize the font in any Xojo Web Application! This application shows how to write code, that writes your code for you! Once a font is embedded, the font will display on every device, whether the user has the font installed on their system or not!

XDSLibraryListbox: This custom listbox adds a clean visual professional appeal to your applications, and is a ‘most-sought-after’ control for a number of developers. This control is only available through the bundle, for a limited time.

XDSTinyMCEEditor: Ever needed an HTML Editor for a desktop application? This control has been used in a number of applications for the last 3 years, and has proven itself invaluable many times. The custom Xojo class, embeds the popular TinyMCE editor in any desktop application, and gives it the appearance of a native control. TinyMCE has the most extensive set of plugins and menu-items available, of any HTML Editor found on the web. It’s used and trusted by WordPress, Drupal, Ebay, and a number of other large web entities. Thanks to this custom control, the same lovable HTML editor, is available for desktop applications. A developer can add/remove plugins, menu items, and even re-arrange them to desired preference, with this control. The control even permits use of the “Save” plugins, allowing the web interface to save to file or database, with help from Xojo. Custom plugins and user defined buttons can also be added to the editor’s toolbar with ease! This is truly the best desktop HTML editor you will ever find for Xojo!

XTeTiCSQLServer (pre-release; Lifetime Source Code License): Everyone needs a database every now and again for a software application. This package contains the pre-release version of the XTeTiCSQLServer, for developer testing and input. It is being released early for testing by developers in this bundle, to gain insight into what will be important features to implement, beyond the solid SQL and custom API interfaces in place already. It will be provided freely FOR LIFE, with the source code, only to bundle license holders. The initial provided package contains the compiled server sources, and connector classes to access the server. A public online testing server also exists for developers to see and test a fully working remote version of the server. Optionally, developers can invoke a copy of the server on their own hosting services for testing. The server itself is a full SQL server that works much like CubeSQL, in that it permits multiuser SQLite Databases, but has some other features such as custom API development. Another great feature of the XTeTiCSQLServer, is that it comes with embeddable SQL server classes. This in essence, is equivalent to embedding a CubeSQL server directly into your own software. The possibilities start to become endless. These classes have been used for years in the Xojo Developer Library Software Package to sync and permit peer-to-peer code sharing across networks, and the web. To take a sneak-peak at the pre-release remote server, visit http://www.xojodevspot.com:8899

A demo of a custom phone number lookup API, created on the server, can be viewed here:

The scripting interface is powered by XTeTiC, which is XojoScript on Steriods!
Here is the following XTeTiC script which makes the API work (minus the class).

<?sim Dim OutResponse as String Dim OutTwo as String Dim Val as String If (Network.IsConnected = "True") then Val = USAPhoneInfo.LookupNumber(AreaCode, Region, Identifier) If (Val = "True") Then OutResponse = UpperCase(USAPhoneInfo.Carrier) + EndOfLine + USAPhoneInfo.CityName + EndOfLine + USAPhoneInfo.StateName + EndOfLine + USAPhoneInfo.Company Print OutResponse + EndofLine + USAPhoneInfo.Gateway + EndOfLine + USAPhoneInfo.TelcoType Else Print "Something happened and no information was found for that number." EndIf Else Print "A network connection is required to use this plugin" EndIf ?>?

**XTeTiC has a very strict use policy and may only be accessible by the developer. End users are not permitted to utilize XTeTiC.
Learn more about XTeTiC here: http://xojodevspot.com/page.php?11

Send inquiries, questions, and comment to mcombatti@xojostudio.org, or visit http://www.xojodevspot.com and utilize the contact, chat, or in-site mailbox system.

Happy Coding!

It was asked what “gems” are included, but not mentioned for custom controls. The ones off the top of my head are:

Directory/File View
SimSplitter Control
Object Locking Control
System Font PopupMenu


*SimBarcodes was added to the bundle by developer request when the bundle was being packaged.