📄 qilineargaugecomponenteditor.pas
字号:
{*******************************************************}
{ }
{ TiLinearGaugeComponentEditor }
{ }
{ Copyright (c) 1997,2003 Iocomp Software }
{ }
{*******************************************************}
{$I iInclude.inc}
{$ifdef iVCL}unit iLinearGaugeComponentEditor;{$endif}
{$ifdef iCLX}unit QiLinearGaugeComponentEditor;{$endif}
interface
uses
{$I iIncludeUsesForms.inc}
{$IFDEF iVCL} iComponentEditorForm, iTypes, iLinearGauge, iGaugePointer,{$ENDIF}
{$IFDEF iCLX}QiComponentEditorForm, QiTypes, QiLinearGauge, QiGaugePointer,{$ENDIF}
{$IFDEF iVCL} StdCtrls, ExtCtrls, Controls, ComCtrls, Classes, iComponentEditorThemePanel, iComponentEditorButtonPanel, iEditorBasicComponents, iOPCBrowserPanel, iAboutPanel, iRadioGroup, iComponent, iVCLComponent, iCustomComponent, iCheckBox;{$ENDIF}
{$IFDEF iCLX} QStdCtrls, QExtCtrls, QControls, QComCtrls, Classes, QiComponentEditorThemePanel, QiComponentEditorButtonPanel, QiEditorBasicComponents, QiOPCBrowserPanel, QiAboutPanel, QiRadioGroup, QiComponent, QiCLXComponent, QiCustomComponent, QiCheckBox;{$ENDIF}
type
TiLinearGaugeComponentEditorForm = class(TiComponentEditorForm)
PageControl: TiComponentEditorPageControl;
GeneralTabSheet: TTabSheet;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
PositionEdit: TiComponentEditorEdit;
PositionMaxEdit: TiComponentEditorEdit;
PositionMinEdit: TiComponentEditorEdit;
DesignTabSheet: TTabSheet;
Label5: TLabel;
Label6: TLabel;
CurrentMaxEdit: TiComponentEditorEdit;
CurrentMinEdit: TiComponentEditorEdit;
TransparentCheckBox: TiComponentEditorCheckBox;
AutoScaleTabSheet: TTabSheet;
Label46: TLabel;
Label47: TLabel;
AutoScaleEnabledCheckBox: TiComponentEditorCheckBox;
AutoScaleDesiredTicksEdit: TiComponentEditorEdit;
AutoScaleDesiredTicksUpDown: TiUpDown;
AutoScaleMaxTicksEdit: TiComponentEditorEdit;
AutoScaleMaxTicksUpDown: TiUpDown;
AutoScaleStyleRadioGroup: TiComponentEditorRadioGroup;
AboutTabSheet: TTabSheet;
iComponentEditorButtonPanel1: TiComponentEditorButtonPanel;
ThemeTabSheet: TTabSheet;
iComponentEditorThemePanel: TiComponentEditorThemePanel;
OPCTabSheet: TTabSheet;
iOPCBrowserPanel: TiOPCBrowserPanel;
CachedDrawingCheckBox: TiComponentEditorCheckBox;
iAboutPanel1: TiAboutPanel;
DesignPageControl: TiComponentEditorPageControl;
DesignGeneralTabSheet: TTabSheet;
DesignPointersTabSheet: TTabSheet;
DesignMinMaxTabSheet: TTabSheet;
DesignSectionsTabSheet: TTabSheet;
Label10: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Label21: TLabel;
Label22: TLabel;
Label30: TLabel;
Label31: TLabel;
Label32: TLabel;
Label33: TLabel;
SectionCountUpDown: TiUpDown;
SectionColor1Picker: TiComponentEditorColorPicker;
SectionColor2Picker: TiComponentEditorColorPicker;
SectionColor3Picker: TiComponentEditorColorPicker;
SectionColor4Picker: TiComponentEditorColorPicker;
SectionColor5Picker: TiComponentEditorColorPicker;
SectionEnd1Edit: TiComponentEditorEdit;
SectionEnd2Edit: TiComponentEditorEdit;
SectionCountEdit: TiComponentEditorEdit;
SectionEnd3Edit: TiComponentEditorEdit;
SectionEnd4Edit: TiComponentEditorEdit;
DesignTicksTabSheet: TTabSheet;
iPointerListBox: TiComponentEditorListBox;
PointersGeneralPageControl: TiComponentEditorPageControl;
TabSheet1: TTabSheet;
Label1: TLabel;
Label4: TLabel;
PointerOffsetUpDown: TiUpDown;
PointerSizeUpDown: TiUpDown;
Label9: TLabel;
Label50: TLabel;
PointerOffsetEdit: TiComponentEditorEdit;
PointerSizeEdit: TiComponentEditorEdit;
PointerStyleRadioGroup: TiComponentEditorRadioGroup;
PointerColorPicker: TiComponentEditorColorPicker;
PointerPositionEdit: TiComponentEditorEdit;
iPointerAddButton: TButton;
PointerRemoveButton: TButton;
Label2: TLabel;
Label11: TLabel;
MinMaxPointerSizeUpDown: TiUpDown;
MinMaxPointerMarginUpDown: TiUpDown;
MinMaxPointerSizeEdit: TiComponentEditorEdit;
MinMaxPointerMarginEdit: TiComponentEditorEdit;
MaxGroupBox: TGroupBox;
Label7: TLabel;
MaxPointerColorPicker: TiComponentEditorColorPicker;
ShowMaxPointerCheckBox: TiComponentEditorCheckBox;
MinGroupBox: TGroupBox;
Label8: TLabel;
MinPointerColorPicker: TiComponentEditorColorPicker;
ShowMinPointerCheckBox: TiComponentEditorCheckBox;
MinMaxFixedCheckBox: TiComponentEditorCheckBox;
MinMaxUserCanMoveCheckBox: TiComponentEditorCheckBox;
Label28: TLabel;
TickMarginUpDown: TiUpDown;
LabelsGroupBox: TGroupBox;
Label15: TLabel;
Label19: TLabel;
TickLabelPrecisionUpDown: TiUpDown;
TickLabelMarginUpDown: TiUpDown;
ShowTickLabelsCheckBox: TiComponentEditorCheckBox;
TickLabelFontPicker: TiComponentEditorFontPicker;
TickLabelPrecisionEdit: TiComponentEditorEdit;
TickLabelMarginEdit: TiComponentEditorEdit;
MinorGroupBox: TGroupBox;
Label25: TLabel;
Label26: TLabel;
Label27: TLabel;
TickMinorCountUpDown: TiUpDown;
TickMinorLengthUpDown: TiUpDown;
TickMinorColorPicker: TiComponentEditorColorPicker;
ShowTicksMinorCheckBox: TiComponentEditorCheckBox;
TickMinorCountEdit: TiComponentEditorEdit;
TickMinorLengthEdit: TiComponentEditorEdit;
TickMinorStyleRadioGroup: TiComponentEditorRadioGroup;
TickMinorAlignmentRadioGroup: TiComponentEditorRadioGroup;
TickMarginEdit: TiComponentEditorEdit;
MajorGroupBox: TGroupBox;
Label20: TLabel;
Label23: TLabel;
Label24: TLabel;
TickMajorCountUpDown: TiUpDown;
TickMajorLengthUpDown: TiUpDown;
TickMajorColorPicker: TiComponentEditorColorPicker;
ShowTicksMajorCheckBox: TiComponentEditorCheckBox;
TickMajorCountEdit: TiComponentEditorEdit;
TickMajorLengthEdit: TiComponentEditorEdit;
TickMajorStyleRadioGroup: TiComponentEditorRadioGroup;
ShowTicksAxisCheckBox: TiComponentEditorCheckBox;
Label76: TLabel;
UpdateFrameRateUpDown: TiUpDown;
UpdateFrameRateEdit: TiComponentEditorEdit;
AutoFrameRateCheckBox: TiComponentEditorCheckBox;
Label3: TLabel;
Label29: TLabel;
EndsMarginUpDown: TiUpDown;
OrientationRadioGroup: TiComponentEditorRadioGroup;
OrientationTickMarksRadioGroup: TiComponentEditorRadioGroup;
BorderStyleRadioGroup: TiComponentEditorRadioGroup;
OffsetGroupBox: TGroupBox;
Label34: TLabel;
Label35: TLabel;
OffsetXUpDown: TiUpDown;
OffsetYUpDown: TiUpDown;
OffsetXEdit: TiComponentEditorEdit;
OffsetYEdit: TiComponentEditorEdit;
PrecisionStyleRadioGroup: TiComponentEditorRadioGroup;
ReverseScaleCheckBox: TiComponentEditorCheckBox;
BackGroundColorPicker: TiComponentEditorColorPicker;
EndsMarginEdit: TiComponentEditorEdit;
AutoCenterCheckBox: TiComponentEditorCheckBox;
PointerVisibleCheckBox: TiComponentEditorCheckBox;
procedure iComponentEditorFormCreate(Sender: TObject);
procedure iComponentEditorFormDestroy(Sender: TObject);
procedure iPointerListBoxClick(Sender: TObject);
procedure iPointerListBoxGetData(const Index: Integer; var DrawColorBox: Boolean; var AColor: TColor; var AText: String);
procedure iPointerAddButtonClick(Sender: TObject);
procedure PointerRemoveButtonClick(Sender: TObject);
procedure PositionEditChange(Sender: TObject);
procedure PointerChange(Sender: TObject);
private
FPointerManager : TiGaugePointerManager;
FLastPointerIndex : Integer;
protected
procedure CreateThemeInstance; override;
procedure CopyPropertiesToForm (Component: TWinControl); override;
procedure CopyPropertiesToComponent(Component: TWinControl); override;
procedure InsertEvent(Sender: TObject);
procedure RemoveEvent(Sender: TObject);
procedure ChangeEvent(Sender: TObject);
procedure UpdatePointers;
end;
var
iLinearGaugeComponentEditorForm: TiLinearGaugeComponentEditorForm;
implementation
{$R *.dfm}
//****************************************************************************************************************************************************
procedure TiLinearGaugeComponentEditorForm.CreateThemeInstance;
begin
iThemeInstance := TiLinearGauge.Create(Self);
end;
//****************************************************************************************************************************************************
procedure TiLinearGaugeComponentEditorForm.CopyPropertiesToForm(Component: TWinControl);
var
iLinearGauge : TiLinearGauge;
x : Integer;
begin
iLinearGauge := Component as TiLinearGauge;
//-------------- General ---------------------------------------------------------------------------------------------------------------------------
PositionEdit.AsFloat := iLinearGauge.Position;
PositionMaxEdit.AsFloat := iLinearGauge.PositionMax;
PositionMinEdit.AsFloat := iLinearGauge.PositionMin;
CurrentMaxEdit.AsFloat := iLinearGauge.CurrentMax;
CurrentMinEdit.AsFloat := iLinearGauge.CurrentMin;
EndsMarginEdit.AsInteger := iLinearGauge.EndsMargin;
BackGroundColorPicker.Color := iLinearGauge.BackGroundColor;
BorderStyleRadioGroup.AsInteger := ord(iLinearGauge.BorderStyle);
OrientationRadioGroup.AsInteger := ord(iLinearGauge.Orientation);
OrientationTickMarksRadioGroup.AsInteger := ord(iLinearGauge.OrientationTickMarks);
PrecisionStyleRadioGroup.AsInteger := ord(iLinearGauge.PrecisionStyle);
ReverseScaleCheckBox.AsBoolean := iLinearGauge.ReverseScale;
CachedDrawingCheckBox.AsBoolean := iLinearGauge.CachedDrawing;
TransparentCheckBox.AsBoolean := iLinearGauge.Transparent;
AutoFrameRateCheckBox.AsBoolean := iLinearGauge.AutoFrameRate;
AutoCenterCheckBox.AsBoolean := iLinearGauge.AutoCenter;
UpdateFrameRateEdit.AsInteger := iLinearGauge.UpdateFrameRate;
OffsetXEdit.AsInteger := iLinearGauge.OffsetX;
OffsetYEdit.AsInteger := iLinearGauge.OffsetY;
//-------------- Pointers --------------------------------------------------------------------------------------------------------------------------
MinMaxPointerSizeEdit.AsInteger := iLinearGauge.MinMaxPointerSize;
MinMaxPointerMarginEdit.AsInteger := iLinearGauge.MinMaxPointerMargin;
MinMaxFixedCheckBox.AsBoolean := iLinearGauge.MinMaxFixed;
MinMaxUserCanMoveCheckBox.AsBoolean := iLinearGauge.MinMaxUserCanMove;
ShowMaxPointerCheckBox.AsBoolean := iLinearGauge.ShowMaxPointer;
MaxPointerColorPicker.Color := iLinearGauge.MaxPointerColor;
ShowMinPointerCheckBox.AsBoolean := iLinearGauge.ShowMinPointer;
MinPointerColorPicker.Color := iLinearGauge.MinPointerColor;
//-------------- Ticks -----------------------------------------------------------------------------------------------------------------------------
ShowTicksAxisCheckBox.AsBoolean := iLinearGauge.ShowTicksAxis;
TickMarginEdit.AsInteger := iLinearGauge.TickMargin;
ShowTickLabelsCheckBox.AsBoolean := iLinearGauge.ShowTickLabels;
TickLabelPrecisionEdit.AsInteger := iLinearGauge.TickLabelPrecision;
TickLabelMarginEdit.AsInteger := iLinearGauge.TickLabelMargin;
ShowTicksMajorCheckBox.AsBoolean := iLinearGauge.ShowTicksMajor;
TickMajorCountEdit.AsInteger := iLinearGauge.TickMajorCount;
TickMajorLengthEdit.AsInteger := iLinearGauge.TickMajorLength;
TickMajorColorPicker.Color := iLinearGauge.TickMajorColor;
TickMajorStyleRadioGroup.AsInteger := ord(iLinearGauge.TickMajorStyle);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -