ScaleRichView editor, as well as TRichView editor, allows inserting components.
But while TRichView inserts controls directly in the editor window and they work like if they were placed on a form, ScaleRichView works differently: it displays images of controls (but inserted controls still process keyboard and mouse events).
This method allows to scale controls together with the document, but applies some restrictions
(for example, the caret is not shown in TEdit and TMemo).
To take all advantages of this feature, you can use SRVControls.
SRVControls is a set of controls that was designed to provide full functionality when inserted in ScaleRichView editor. However, they can be inserted in a TRichView editor, or placed directly on a form as well.
are completely supported by SRichViewEdit;
are drawn and scaled in high quality;
have additional properties related to scaling and printing;
have the same appearance in all versions of Windows;
support Unicode in all versions of Delphi;
have advanced features that are not present in standard Delphi/Lazarus controls.
SRVControls: Basic Controls
TSRVEdit – a single-line edit control, analog of TEdit; TSRVCheckBox and
TSRVRadioButton – a must have for questionnaires and forms, analogs of TCheckBox and TRadioButton; TSRVButton – a button, analog of TButton; TSRVPanel – a panel control that can contain other controls, analog of TPanel; TSRVLabel – a text label, analog of TLabel; TSRVGroupBox – a panel with a caption, analog of TGroupBox. TSRVListBox – an advanced analog of TListBox. TSRVComboBox – an advanced analog of TComboBox. TSRVPaintBox – an analog of TPaintBox. TSRVMemo – an analog of TMemo.
TSRVEdit and TSRVComboBox can display a list of suggestions. Unlike a combo box drop-down list, items in this list are generated dynamically and depend on the text in the control.
Items in TSRVListBox and TSRVComboBox can have:
custom indent (defining a hierarchy of items)
check box (only for TSRVListBox)
text (with custom font)
SRVControls: Data-Aware Controls
SRVControls includes a set of components for editing database fields:
TSRVDBEdit – analog of TDBEdit; TSRVDBCheckBox – analog of TDBCheckBox; TSRVDBText – analog of TDBText; TSRVDBListBox – analog of TDBListBox; TSRVDBComboBox – analog of TDBComboBox; TSRVDBMemo – analog of TDBMemo.
SRVControls are used to create a database input form in a ScaleRichView document SRVControls\Demos\Delphi\PetsDB.FireDAC_IB\
These components can be inserted in an editor, placed on a form or in TDBCtrlGrid.
SRVControls: TSRVTabSet and TSRVImagesScroll
TSRVTabSet displays horizontal or vertical tabs.
The user can click or rearrange them.
This component is used, for example, in the ActionTestTabs demo for switching between documents.
TSRVImagesScroll displays a gallery of images horizontally or vertically.
SRVControls: Media Player
TSRVMediaPlayer component was created specially for SRichViewEdit.
The component provides full access to features of media files, allowing creating multimedia documents.
Watching video embedded in your document? No problem!
There are several ways to define appearance of SRVControls:
controls can be linked to TSRVSkinManager, which defines skins; skins contain images for drawing different elements of controls;
by default, controls use a “simple” style; in this mode, components have modern and clean appearance, lines are anti-aliased, color themes can be used;
it is possible to switch to a “classic” style to return appearance used in older versions of ScaleRichView;
some controls have events for custom drawing.
SRVControls in a pale blue color theme
SRVControls in a spring green color theme
SRVControls in a sienna color theme
SRVControls in a high contrast color theme
ScaleRichView\Demos\*\BaseControls\ – a simple form created using the standard components;
SRVControls\Demos\*\SRVControls\Example1\ – a list of SRVControls;
SRVControls\Demos\*\SRVControls\Example2\ – the same form as in the first example, but created using SRVControls;
ScaleRichView\Demos\Delphi\Flash\ – several examples for Shockwave Flash ActiveX;
SRVControls\Demos\*\InsertControls\ – the demo showing how to insert components in the editor and how to change their properties.