XI Library logo
Home    Download    Examples of use    Changelog    Online help    Purchase    Contact

Do you need the ultimate solution for run-time user interface generation? Are you developing a plugin-based application? Or do you want to teach your database how to edit itself? Then the XI Library is exactly what you need!

XI is a Delphi library that dynamically creates a user interface out of an XML source and lets you edit data using this interface. It introduces a concept similar to XAML but targeted for Win32 and more data-oriented (rather then interface-oriented). The main advantage is that you don't have to write complex code anymore to create a controls at runtime, just create an XML source that describes the interface you need and XI will do the rest. To make a long story short, just take a look at the following example.

Show the example

The XML source:

<?xml version="1.0" encoding="ISO-8859-1"?>
<root>
  <columns>
   <groupbox caption="Control group 1">
    <edit name="edit1" caption="Edit field"/>
    <memo name="memo1" caption="This is memo"/>
   </groupbox> 
   <groupbox caption="Control group 2">
    <checkbox name="check1" caption="Need to specify a name">
     <edit name="fname" labelpos="left" caption="First name"/>
     <edit name="lname" labelpos="left" caption="Last name"/>
    </checkbox>
    <radiogroup name="radio1" caption="Select a fruit" default="0">
     <item caption="Apple"/>
     <item caption="Orange"/>
     <item caption="Peach"/>
     <item caption="Cherry"/>
    </radiogroup>
   </groupbox>
  </columns> 
  <filenameedit name="file" caption="Filename" labelpos="left"/>
</root>

Dialog generated by XI:

Dialog generated by XI

Also check out our "Examples of use" page to see how you can unleash power of XI Library in your applications.

Main features:

  • Dynamically building a user interface (UI) out of an XML source at run time. The XML source can be loaded from a file, memory or a resource. The XML source can be loaded as text or in the form of "binary XML" (the more compact "compiled" form).
  • Independence from screen resolution. If the screen resolution on the target system differs from the screen resolution on the machine where the XML source was created, XI will scale controls accordingly.
  • Easy-to-use data exchange interface for generated UI. By default, in-memory, database, registry and INI-file storages are supported.
  • Events and messages for generated controls.
  • Basic set of controls, including the set of controls from JVCL.
  • Expandability. You can add your own controls with ease.
  • Detailed documentation explaining every aspect of using XI.
  • Easy-to-use XML source editor with previewing the resulting user interface.