
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2274 8e941d3f-bd1b-0410-a28a-d453659cc2b4
239 lines
9.0 KiB
ObjectPascal
239 lines
9.0 KiB
ObjectPascal
{*********************************************************}
|
|
{* myovcreg.pas *}
|
|
{*********************************************************}
|
|
|
|
{* ***** BEGIN LICENSE BLOCK ***** *}
|
|
{* Version: MPL 1.1 *}
|
|
{* *}
|
|
{* The contents of this file are subject to the Mozilla Public License *}
|
|
{* Version 1.1 (the "License"); you may not use this file except in *}
|
|
{* compliance with the License. You may obtain a copy of the License at *}
|
|
{* http://www.mozilla.org/MPL/ *}
|
|
{* *}
|
|
{* Software distributed under the License is distributed on an "AS IS" basis, *}
|
|
{* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License *}
|
|
{* for the specific language governing rights and limitations under the *}
|
|
{* License. *}
|
|
{* *}
|
|
{* The Original Code is TurboPower Orpheus *}
|
|
{* *}
|
|
{* The Initial Developer of the Original Code is TurboPower Software *}
|
|
{* *}
|
|
{* Portions created by TurboPower Software Inc. are Copyright (C)1995-2002 *}
|
|
{* TurboPower Software Inc. All Rights Reserved. *}
|
|
{* *}
|
|
{* Contributor(s): *}
|
|
{* *}
|
|
{* Phil Hess - adapted ovcreg.pas to register only ported controls. *}
|
|
{* *}
|
|
{* ***** END LICENSE BLOCK ***** *}
|
|
|
|
unit MyOvcReg;
|
|
|
|
{
|
|
Registration unit for the ported Orpheus components.
|
|
}
|
|
|
|
interface
|
|
|
|
uses
|
|
Classes,
|
|
Forms,
|
|
LResources,
|
|
PropEdits,
|
|
ComponentEditors,
|
|
ovcabot0, {Property editors}
|
|
ovclbl0,
|
|
myovctbpe1,
|
|
myovctbpe2,
|
|
ovcbase, {Controls}
|
|
ovctcedt,
|
|
ovctchdr,
|
|
ovctccbx,
|
|
ovctcsim,
|
|
ovctcbox,
|
|
ovctcbmp,
|
|
ovctcgly,
|
|
ovctcico,
|
|
ovctbcls,
|
|
ovctbrws,
|
|
ovctable,
|
|
ovcurl,
|
|
ovcrlbl,
|
|
ovclabel,
|
|
ovcsf,
|
|
o32flxed,
|
|
o32tcflx,
|
|
ovccal,
|
|
// ovcedcal,
|
|
// ovccalc,
|
|
// ovcclrcb,
|
|
ovcsc,
|
|
ovcvlb;
|
|
|
|
procedure Register;
|
|
|
|
|
|
implementation
|
|
|
|
type
|
|
TOvcHeaderProperty = class(TCaptionProperty);
|
|
|
|
{component editor for the table}
|
|
TOvcTableEditor = class(TDefaultComponentEditor)
|
|
public
|
|
procedure ExecuteVerb(Index : Integer);
|
|
override;
|
|
function GetVerb(Index : Integer) : AnsiString;
|
|
override;
|
|
function GetVerbCount : Integer;
|
|
override;
|
|
end;
|
|
|
|
{*** TOvcTableEditor ***}
|
|
|
|
const
|
|
TableVerbs : array[0..1] of PAnsiChar =
|
|
('Columns Editor', 'Rows Editor');
|
|
|
|
procedure TOvcTableEditor.ExecuteVerb(Index : Integer);
|
|
var
|
|
Table : TOvcTable;
|
|
C : TOvcfrmColEditor;
|
|
R : TOvcfrmRowEditor;
|
|
begin
|
|
Table := TOvcTable(Component);
|
|
if Index = 0 then begin
|
|
C := TOvcfrmColEditor.Create(Application);
|
|
try
|
|
C.Editor := Self;
|
|
C.SetCols(TOvcTableColumns(Table.Columns));
|
|
C.ShowModal;
|
|
Designer.Modified;
|
|
finally
|
|
C.Free;
|
|
end;
|
|
end else if Index = 1 then begin
|
|
R := TOvcfrmRowEditor.Create(Application);
|
|
try
|
|
R.SetRows(TOvcTableRows(Table.Rows));
|
|
R.ShowModal;
|
|
Designer.Modified;
|
|
finally
|
|
R.Free;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
function TOvcTableEditor.GetVerb(Index : Integer) : AnsiString;
|
|
begin
|
|
Result := StrPas(TableVerbs[Index]);
|
|
end;
|
|
|
|
function TOvcTableEditor.GetVerbCount : Integer;
|
|
begin
|
|
Result := High(TableVerbs) + 1;
|
|
end;
|
|
|
|
|
|
procedure Register;
|
|
begin
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcURL, 'Caption', TOvcHeaderProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcURL, 'URL', TOvcHeaderProperty);
|
|
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcRotatedLabel, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcLabel, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcURL, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcSpinner, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcVirtualListBox, 'About', TOvcAboutProperty);
|
|
//{$IFDEF MSWINDOWS}
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcSimpleField, 'About', TOvcAboutProperty);
|
|
//{$ENDIF}
|
|
RegisterPropertyEditor(TypeInfo(string), TO32FlexEdit, 'About', TOvcAboutProperty);
|
|
// RegisterPropertyEditor(TypeInfo(string), TOvcCalculator, 'About', TOvcAboutProperty);
|
|
// RegisterPropertyEditor(TypeInfo(string), TOvcColorComboBox, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcTable, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcTCColHead, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcTCRowHead, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcTCString, 'About', TOvcAboutProperty);
|
|
//{$IFDEF MSWINDOWS}
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcTCSimpleField, 'About', TOvcAboutProperty);
|
|
//{$ENDIF}
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcTCMemo, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcTCCheckBox, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcTCComboBox, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcTCBitMap, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcTCGlyph, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcTCIcon, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TO32TCFlexEdit, 'About', TOvcAboutProperty);
|
|
RegisterPropertyEditor(TypeInfo(string), TOvcController, 'About', TOvcAboutProperty);
|
|
|
|
{register label component editor}
|
|
RegisterComponentEditor(TOvcCustomLabel, TOvcLabelEditor);
|
|
|
|
{register property editors for the entry fields}
|
|
(*
|
|
RegisterPropertyEditor(
|
|
TypeInfo(Char), TOvcSimpleField, 'PictureMask', TSimpleMaskProperty);
|
|
RegisterPropertyEditor(
|
|
TypeInfo(string), TOvcPictureField, 'PictureMask', TPictureMaskProperty);
|
|
RegisterPropertyEditor(
|
|
TypeInfo(string), TOvcNumericField, 'PictureMask', TNumericMaskProperty);
|
|
RegisterPropertyEditor(
|
|
TypeInfo(string), TOvcSimpleField, 'RangeHi', OvcEfPe.TEfRangeProperty);
|
|
RegisterPropertyEditor(
|
|
TypeInfo(string), TOvcSimpleField, 'RangeLo', OvcEfPe.TEfRangeProperty);
|
|
RegisterPropertyEditor(
|
|
TypeInfo(string), TOvcPictureField, 'RangeHi', OvcEfPe.TEfRangeProperty);
|
|
RegisterPropertyEditor(
|
|
TypeInfo(string), TOvcPictureField, 'RangeLo', OvcEfPe.TEfRangeProperty);
|
|
RegisterPropertyEditor(
|
|
TypeInfo(string), TOvcNumericField, 'RangeHi', OvcEfPe.TEfRangeProperty);
|
|
RegisterPropertyEditor(
|
|
TypeInfo(string), TOvcNumericField, 'RangeLo', OvcEfPe.TEfRangeProperty);
|
|
RegisterPropertyEditor(
|
|
TypeInfo(string), TOvcPictureLabel, 'PictureMask', TPictureMaskProperty);
|
|
*)
|
|
|
|
RegisterPropertyEditor(TypeInfo(TOvcTableRows), TOvcTable, '', TOvcTableRowProperty);
|
|
RegisterPropertyEditor(TypeInfo(TOvcTableColumns), TOvcTable, '', TOvcTableColumnProperty);
|
|
|
|
{register component editor for the table}
|
|
RegisterComponentEditor(TOvcTable, TOvcTableEditor);
|
|
|
|
RegisterComponents('Orpheus', [TOvcRotatedLabel]);
|
|
RegisterComponents('Orpheus', [TOvcLabel]);
|
|
RegisterComponents('Orpheus', [TOvcURL]);
|
|
RegisterComponents('Orpheus', [TOvcSpinner]);
|
|
RegisterComponents('Orpheus', [TOvcVirtualListBox]);
|
|
//{$IFDEF MSWINDOWS} //If used, crashes IDE with GTK, so only register if Windows
|
|
RegisterComponents('Orpheus', [TOvcSimpleField]);
|
|
//{$ENDIF}
|
|
RegisterComponents('Orpheus', [TO32FlexEdit]);
|
|
RegisterComponents('Orpheus', [TOvcCalendar]);
|
|
// RegisterComponents('Orpheus', [TOvcDateEdit]); //Needs ButtonOkay fixes like TO32FlexEdit
|
|
// RegisterComponents('Orpheus', [TOvcCalculator]);
|
|
// RegisterComponents('Orpheus', [TOvcColorComboBox]);
|
|
RegisterComponents('Orpheus', [TOvcTable]);
|
|
RegisterComponents('Orpheus', [TOvcTCColHead]);
|
|
RegisterComponents('Orpheus', [TOvcTCRowHead]);
|
|
RegisterComponents('Orpheus', [TOvcTCString]);
|
|
//{$IFDEF MSWINDOWS} //If used, crashes IDE with GTK, so only register if Windows
|
|
RegisterComponents('Orpheus', [TOvcTCSimpleField]);
|
|
//{$ENDIF}
|
|
RegisterComponents('Orpheus', [TOvcTCMemo]);
|
|
RegisterComponents('Orpheus', [TOvcTCCheckBox]);
|
|
RegisterComponents('Orpheus', [TOvcTCComboBox]);
|
|
RegisterComponents('Orpheus', [TOvcTCBitMap]);
|
|
RegisterComponents('Orpheus', [TOvcTCGlyph]);
|
|
RegisterComponents('Orpheus', [TOvcTCIcon]);
|
|
RegisterComponents('Orpheus', [TO32TCFlexEdit]);
|
|
RegisterComponents('Orpheus', [TOvcController]);
|
|
end; {Register}
|
|
|
|
initialization
|
|
{$I ovcreg.lrs}
|
|
|
|
end.
|
|
|