XCL
VISUAL
 |
Tempora mutantur, nos et mutamur
in illis.
(The
times change, and we change with them.).
(John
Owen) |
|
XCL Wizard - is a new project, intended to make XCL
programming visual again. |
Programming in XCL was non-visual process before (like creating
of new components). But now this is changing. Current project XCL Wizard is
intended to make programming with XCL classes VISUAL again. And first release of
XCL Wizard is coming very soon. Now You can read more detailed about status of
the project in Last
News.
Here You get know more about structure of the Wizard, its
capabilities, tools, etc.
STRUCTURE
XCL Wizard contains three basic parts:
- XCL Expert (xclexpert3.DPL, xclexpert.BPL (D4) or
xclexpert5.BPL (D5) ) - expert add-in, installing like usual Delphi package
into IDE, integrating into Delphi environment and allows to other parts of the
Wizard to interact with IDE.
- XCL Designer (xdesigner.exe) - standalone application
(written using XCL itself), which is providing main visual tasks - visual
editing of project's forms. It is containing following three basic parts:
- XCL Class Palette - auto-hiding (from top edge of
screen) bar with icons of classes/controls. Pressing of button with icon of
control, it is possible then drop the control on designed form.
- XCL Property Inspector - mainly auto-hiding
(optionally) from left or right edge of screen bar with Inspector of forms,
class objects, controls. Allows inspect and modify properties of selected
(in designed form) objects.
- XCL Visual Form Editor - creates for each form of
project form with preview of controls and non-visual classes. Allows
dropping of controls/objects from the Palette, selecting, dragging of
objects and resizing of controls on form.
- XCL Library (xclclsd4.DLL). This part contains
declarations of all classes in XCL compiled into DLL, and definitions of
classes/controls and its properties in special format, which can be recognized
by XCL Designer.
And now brief description of the interface. I think it is not necessary to
describe, "how it works" very detailed. I only notice about some points, what
could be lost among other documentation.
- To create new XCL project, use File|New XCL project.
- When edit source of dpr-file or units of XCL project, do not alter
signature comments inserted on creating of those ones.
- In XCL mode (i.e. after creating new XCL project or after [re]loading
already created XCL project, use new menu items
- File|New XCL form
- File|New XCL unit
- Do not try to use File|New... or File|New form in XCL mode - such attempts
will be cancelled.
- Do not open packages and other files in XCL mode.
- To finish working with XCL project and turn XCL mode off, just perform
File|Close all or reopen any VCL project. Icon of XCL Wizard must be removed
from the tray.
- When project is closed, its definition is stored in file with the same
name as form's unit, but with extension .xfm. Definition is also stored before
compiling, when unit is saved on disk, and when You close form editor window
with given form.
- Previous state of xfm-file is stored in file with extension ~xf. You may
rename xfm (to save it) or delete, and restore previous state of form
definition, renaming ~xf file to xfm back.
- To show XCL Palette, move mouse up to the top edge of screen.
- To drop new object on form, press (by mouse) button on palette, which
represents desired class, and then click on form.
- To delete selected objects, press DELETE key (form must be active).
- To get context help about (first of) selected object, press F1, when forms
designer is active with selected object. If no objects selected, help about
XCustomForm will be appeared. (XCL Help Generator must be installed).
- To show Property Inspector:
- move mouse to the left (or right) edge of screen - if it is in auto-hide
mode.
- press F11 (like in VCL to show Object Inspector).
- use menu item View|Object Inspector
- To get context help about selected property or event in Property
Inspector, press F1, when the Inspector is active. (XCL Help Generator must be
installed).
- To show [closed] form of the unit with form:
- press F12 (like in VCL) - Delphi Editor window with desired unit source
must be current.
- use menu item View|Toggle XCL form/unit
- To show (make foreground) [opened] form, when current window is Property
Inspector, press F11 or like above F12/Toggle.
- When button, corresponding to a class (control) is pressed in XCL Palette,
currently inspecting (in Inspector) form becomes foreground too. And, if left
mouse button pressed anywhere on Palette, current designer form also is
bringing to foreground.
- To select group of controls in Visual Form Editor, use Shift + Left mouse
click.
- It is possible also select controls from tab sheet 'Objects' in Inspector.
Enter or Click - select single object. Space or Ctrl+Click - select/deselect
one object (additionally to already selected).
- To easy select parent of selected control[s], press Escape in Form Editor.
- To rename object or form, press Ctrl+R in Inspector or double click its
title bar.
- Keyboard in Inspector:
- Ctrl+R - rename object.
- Tab - tabulating between tab sheets (Properties, Events, Objects,
Add-ons).
- In Properties tab:
- Up/Down - selecting property
- Enter - expand/collapse node or confirm editing or turn switcher or
drop down combo.
- Space - expand/collapse node or turn switcher.
- Left/Right - for read-only combobox, select previous/next item.
- Ctrl+Left/Right - increment/decrement integer value.
- Escape - cancel editing of the property.
- In Events tab:
- Up/Down - selecting event
- Enter - expand combo box with list of available handlers of the given
type
- Space (in empty combo) - create new event and jump to IDE editor (the
same as double-click in empty combo).
- Space (in filled combo) - jump to existing event in IDE editor.
- In Objects Tab:
- Up/Down - move through objects.
- Enter - select single object (the same as Click)
- Space - select/deselect one object without deselecting other objects
(the same as Ctrl+Click).
- In Add-ons Tab:
- It is possible in Inspector to edit properties with the same names for
groups of objects, if such properties are of the same type. Just be careful.
If value of property is not the same, You see value for only one of selected
objects (usually for selected first).
- New code is generated by the Wizard in following cases:
- When new object is dropped onto form at design time or
selected objects are removed - in that case declaration of
form class is completing. New objects are added first into public section,
created (if needed) immediately after start of class declaration. But You
always can move declarations of desired objects into any other sections of
the form class definition.
- When new event handler is created by double click of
combo box or pressing SPACE on it (if combobox is empty) or by entering new
name for event handler or by selecting event among available ones in dropped
combo list. Or, when empty event handler is deleted by pressing DELETE,
entering empty new name for handler or by saving unit(s) in IDE Editor.
- When unit(s) is(are) saved, or project is
compiled or unit is closed (in last case
form is closed too) - in that case overriden method
CreateCustomObjects is generated and filled with creating
of form objects and setting its properties.
- To clear all empty event handlers, save unit - like in VCL.
- To delete single empty event handler, select all the text of combobox with
event handler name and press Delete.
goto XCL page
goto
home page