Icon Component Library

Elevate Web Builder includes both client and server component libraries for use with visual client applications and server applications, respectively. Each component library is a separate design-time application that is automatically loaded and compiled by the IDE during startup. You can add and remove components from each library in the IDE, and those changes will persist for any subsequent IDE usage. You can also rebuild each component library at any time, which is useful for situations where an existing component or control is modified, and you wish to have those changes reflected immediately at design-time.

Information The component libraries are the foundation for all design-time visual designers: you cannot work with visual client application projects or server application projects unless the corresponding client or server component library has been successfully loaded and compiled.

The TComponent class is the base class for all components and contains all core functionality for component ownership and notification. It inherits from the TPersistent class, so any TComponent-descendant class can automatically load/save itself to/from JSON strings.

The component library search paths are a global setting in the IDE and are automatically appended to the compiler search paths during the compilation of projects. Please see the Modifying IDE Settings topic for more information on modifying the component library search paths used by the compiler.

Core Units
There are a set of core units that make up the base functionality for both the client and server component libraries. Some of the core libraries are shared between both, while others are platform-specific and only apply to client or server applications.

Shared Units

The following source units make up the core of the runtime and component library for both client and server applications:

Source UnitDescription
WebCoreThis source unit contains the TPersistent class and the TComponent class, the TReader and TWriter JSON persistence classes, the TAbstractList, TObjectList, TStringList, and TCollection list and collection classes, and the TFormatSettings date/time and number formatting class. In addition, many of the runtime functions and procedures that aren't intrinsic to the runtime are implemented in this source unit.
WebDataThis source unit contains the TDatabase and TDataSet components.
WebHTTPThis source unit contains the TServerRequest component.

Client Units

The following source units make up the core of the runtime and component library for client applications:

Source UnitDescription
WebDOMThis source unit contains all external declarations for the web browser DOM (Document Object Model) classes, functions, procedures, and global variables. You can use the classes and functionality in this source unit to manipulate the browser DOM directly at run-time.
WebUIThis source unit contains the interface manager and the abstract UI layer that is used in both the design-time environment and the run-time environment.
WebCtrlsThis source unit contains the TControl component, which is the base control for all visual controls, as well as other controls that inherit from the TControl component to provide base functionality for scrollable, bindable, and input controls.
WebFormsThis source unit is the base unit for visual client applications and contains the TApplication, TSurface, TForm, TDialog, and TFrame components.

Server Units

The following source units make up the core of the runtime and component library for server applications:

Source UnitDescription
WebSrvrThis source unit contains all external declarations for the web server classes, functions, procedures, and global variables. This functionality is typically used in other source units in the component library, but certain classes, such as the TStream, TRasterImage, TWebServerRequest, and TWebServerSession classes, are used directly in applications.
WebRequestThis source unit is the base unit for server applications and contains the TApplication and TRequestHandler components.

In addition to these units, there are many other units that make up the rest of the component library. Please see the Component Reference section of this manual for detailed documentation about the units, classes, and types in the component library.