home | download | demos | platforms | restrictions | help |
- Description
- Visual application builder and multiplatform execution environment
- Features
- Extremely powerful visual editing interface that allows easy editing across files using multiple overlapping windows. The graphics objects drawn and edited using the interface have built in intelligence and react to the mouse and each other so as to maximize user productivity and reduce tedious repetitive setup sequences (see the IPAD sub app features for more information on the visual edit capabilities available to the developer).
- The self contained execution environment of the multiplatform IPAD-Pro core which allows apps built using XEBOT to:
- run directly on systems without GUI support (e.g. MSDOS or DRDOS)
- replace the native GUI where it is considered bloated or unpredictable.
- run on all supported platforms without the usual porting overheads. This lets the developer design the app once and use it through the same interface on many platforms.
- Fast prototyping of partial designs allows icremental interactive development of complex specifications between developers and users, and greatly accelerates time to market.
- The underlying IPAD-Pro core manages many form and dialog functions which other GUIs normally require the app take responsibility for.
- The drag and drop capability of the XEBOT interface lets forms and dialogs be quickly built from templates.
- The control property editor and code editor of the XEBOT interface lets forms and dialogs be quickly and easily tailored.
- The concise coding model allows functionality to be quickly and easily added to controls.
- App development and maintenance is greatly simplified by:
- The ability to directly add concise code to controls on a form or dialog which does not need to intercept and decode GUI event messages.
- The ability to directly set or inspect context variables belonging to controls (including forms and dialogs).
- The ability of controls on a form or dialog to directly interact with each other and the user in response to events without the need to build and send special messages between the communicating components.
- The sophisticated API which allows complex data gathering, validation and mapping between the IPAD-Pro core and the visual components of the app (such as buttons, text entry fields, check boxes etc.) There is no need to provide hundreds of API defined functions and buffers just to collect data and perform validation from myriad's of points within the code.
- Code module support allowing components to encapsulate data and functionality.
- Supports hot swap dynamic linking of externally compiled modules allowing in situ upgrades. This is of particular value when the app is part of a monitoring or control process since there is no need to reboot the system or restart the IPAD-Pro core.
- External code (code written in C, C++ and assembler which is linked in at run time) can access form or dialog controls simply by name if required, with no need for the external code to be given a list of specific control IDs by the app or for it to manage such a list (e.g. when reporting errors the external code can simply ask for the ID of the message box with the name "error_messages" and write to it). This also applies to code belonging to other controls or modules.
- Limitations
- How XEBOT differs from IPAD-Pro or why you can't build ZMech from XEBOT.
XEBOT does not allow you to do various things which are essential when building an IPAD-Pro sub app (this is different from a normal app such as the calculator example given below). One of them is the ability to create new code objects. You can make a copy of an existing code object and change some of its properties but you cannot change the code objects fundamental properties, you need IPAD-Pro to do that. Normally sub apps do not allow code objects to be exported, but in the case of XEBOT and ZMech the code objects are exportable so that the developer can get a feel for what's going on in a complete sub app and use these as templates for building his/her own sub app. Having changed the exported code objects, you cannot import them again in the hope of generating a new sub app.
So how do you customize ZMech using XEBOT?
By using the ZMech enabled version of XEBOT (xebot_tmpl) available from the ZMech distribution web page. Simply run ZMech, open a new window, load xebot_tmpl into it and away you go.
- Examples
- xebot_base - XEBOT interface (defined using xebot)
This is part of the standard XEBOT distribution package.
This is the complete XEBOT interface. Modifying this lets you tailor XEBOT itself. From it you would normally build your customized xebot_tmplxebot_tmpl - XEBOT control templates
This is part of the standard XEBOT distribution package.
This is what you would normally build an app from. It is a sub set of xebot_base. To use it simply run XEBOT, open a window, load xebot_tmpl into it, open another window and copy the controls from the template to your work sheet. For more details look at some of the xebot demos.xebot_demo - boiler temperature monitor
This is part of the standard XEBOT distribution package.calc - fully functional virtual calculator
This is a proper app that runs in the self contained execution environment of IPAD-Pro
home | download | demos | platforms | restrictions | help |