This page brings together all the documentation that is currently available to help developers who are new to Xara LX get up to speed. Some of the documents were written a long time ago, but still contain relevant and useful information. You'll notice that many documents refer to 'Camelot' which is just a developer code name for the product that's stayed the same while the public name for the tool has changed many times!

General Developer Documents

Xara LX technical basics
A good place to start.

Tips for porting Camelot code to wxWidgets
This document has been put together by those developers who've worked on porting Xtreme to Linux so far. So it contains some useful tips and sometimes hard learned lessons on how to port the code.

Top 20 Coding Guidelines  
Please try and stick to these guidelines to help maintain the health and consistency of the codebase.

Resources System
An introduction to resources in Camelot.

Debugging under Linux
Hints on debugging under Linux

Import/Export Filters

Xara LX supports a powerful mechansim that allows third parties to implement and test plug-in import and export filters, without building or changing Xara LX itself. Filters must convert data to and from the Xar format. We provide helpful example code (including a complete example filter), documentation and a helper library to make developing filters as easy as possible for external developers. See the filter development page for details.

Xar file format specification
The XAR format is the native file format of Xara LX, Xara Xtreme and many earlier versions of Camelot. The Xar Format Specification page provides a detailed PDF document describing the format, a support library to help read and write XAR files and a sample XAR file filter.

User Interface

» Xara LX User Interface description
» The CamArtProvider System
» Implementation of the View classes
» The A to Z of Blobs
» Click Processing
» Rendering Into Dialog Boxes
» The Camelot Colour Editor
» Xara LX Focus Handing Rules


Printing

» PostScript Printing
» Print Loop
» Printing Sub-System
» XaraLX printing alternatives

Other Documents

» Bounding Rectangles and How They Work
» The Colour System
» Co-ordinate System
» Dragging selected objects
» Using the Global Drag Manager
» Using Files
» Idle Events in Camelot
» Camelot messages
» Camelot’s Messaging System
» Creating a new operation
» Using OrderedLists
» How to use Paths and NodePaths
» Camelot Preferences
» The New Camelot Progress System
» Render Region List
» Snapping in Camelot
» ScrollToShow Implementation
» Attribute Stacking
» AllowOp
» The Mould Tool
» All about QuickShapes
» Dialog system specification
» Creating Tabbed Dialogs and Notebooks 
» Smoothing Bezier Points
» The Camelot rendering system
» Transformations
» Selection Bounds Handling
» Path stroking
» Attribute Application, Optimisation & Integrity
» Creating a new Tool
» Error trapping and reporting
» String handling
» Flash export filter

Last Updated ( Wednesday, 30 July 2008 18:21 )