⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 iloggaugecomponenteditor.pas

📁 iocopm3.04源码,一套很好的工控开发工具
💻 PAS
📖 第 1 页 / 共 2 页
字号:
{*******************************************************}
{                                                       }
{       TiLogGaugeComponentEditor                       }
{                                                       }
{       Copyright (c) 1997,2003 Iocomp Software         }
{                                                       }
{*******************************************************}
{$I iInclude.inc}

{$ifdef iVCL}unit  iLogGaugeComponentEditor;{$endif}
{$ifdef iCLX}unit QiLogGaugeComponentEditor;{$endif}

interface

uses
  {$I iIncludeUsesForms.inc}

  {$IFDEF iVCL} iComponentEditorForm,  iTypes,  iLogGauge,  iGaugePointer,{$ENDIF}
  {$IFDEF iCLX}QiComponentEditorForm, QiTypes, QiLogGauge, 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
  TiLogGaugeComponentEditorForm = 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;
    AboutTabSheet: TTabSheet;
    iComponentEditorButtonPanel1: TiComponentEditorButtonPanel;
    ThemeTabSheet: TTabSheet;
    iComponentEditorThemePanel: TiComponentEditorThemePanel;
    OPCTabSheet: TTabSheet;
    iOPCBrowserPanel: TiOPCBrowserPanel;
    TransparentCheckBox: TiComponentEditorCheckBox;
    CachedDrawingCheckBox: TiComponentEditorCheckBox;
    iAboutPanel1: TiAboutPanel;
    DesignPageControl: TiComponentEditorPageControl;
    DesignGeneralTabSheet: TTabSheet;
    DesignPointersTabSheet: TTabSheet;
    DesignMinMaxTabSheet: TTabSheet;
    DesignTicksTabSheet: 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;
    Label28: TLabel;
    TickMarginUpDown: TiUpDown;
    LabelsGroupBox: TGroupBox;
    Label15: TLabel;
    Label19: TLabel;
    TickLabelPrecisionUpDown: TiUpDown;
    TickLabelMarginUpDown: TiUpDown;
    TickLabelFontPicker: TiComponentEditorFontPicker;
    TickLabelPrecisionEdit: TiComponentEditorEdit;
    TickLabelMarginEdit: TiComponentEditorEdit;
    TickLabelStyleRadioGroup: TiComponentEditorRadioGroup;
    MinorGroupBox: TGroupBox;
    Label25: TLabel;
    Label27: TLabel;
    TickMinorLengthUpDown: TiUpDown;
    TickMinorColorPicker: TiComponentEditorColorPicker;
    TickMinorLengthEdit: TiComponentEditorEdit;
    TickMinorStyleRadioGroup: TiComponentEditorRadioGroup;
    TickMinorAlignmentRadioGroup: TiComponentEditorRadioGroup;
    TickMarginEdit: TiComponentEditorEdit;
    MajorGroupBox: TGroupBox;
    Label20: TLabel;
    Label24: TLabel;
    TickMajorLengthUpDown: TiUpDown;
    TickMajorColorPicker: TiComponentEditorColorPicker;
    TickMajorLengthEdit: TiComponentEditorEdit;
    TickMajorStyleRadioGroup: TiComponentEditorRadioGroup;
    ShowTicksAxisCheckBox: TiComponentEditorCheckBox;
    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;
    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;
    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
  iLogGaugeComponentEditorForm: TiLogGaugeComponentEditorForm;

implementation

{$R *.dfm}
//****************************************************************************************************************************************************
procedure TiLogGaugeComponentEditorForm.CreateThemeInstance;
begin
  iThemeInstance := TiLogGauge.Create(Self);
end;
//****************************************************************************************************************************************************
procedure TiLogGaugeComponentEditorForm.CopyPropertiesToForm(Component: TWinControl);
var
  iLogGauge : TiLogGauge;
  x         : Integer;
begin
  iLogGauge := Component as TiLogGauge;

  //-------------- General ---------------------------------------------------------------------------------------------------------------------------
  PositionEdit.AsFloat                             := iLogGauge.Position;
  PositionMaxEdit.AsFloat                          := iLogGauge.PositionMax;
  PositionMinEdit.AsFloat                          := iLogGauge.PositionMin;
  CurrentMaxEdit.AsFloat                           := iLogGauge.CurrentMax;
  CurrentMinEdit.AsFloat                           := iLogGauge.CurrentMin;
  EndsMarginEdit.AsInteger                         := iLogGauge.EndsMargin;
  BackGroundColorPicker.Color                      := iLogGauge.BackGroundColor;
  AutoFrameRateCheckBox.AsBoolean                  := iLogGauge.AutoFrameRate;
  AutoCenterCheckBox.AsBoolean                     := iLogGauge.AutoCenter;
  UpdateFrameRateEdit.AsInteger                    := iLogGauge.UpdateFrameRate;

  BorderStyleRadioGroup.AsInteger                  := ord(iLogGauge.BorderStyle);
  OrientationRadioGroup.AsInteger                  := ord(iLogGauge.Orientation);
  OrientationTickMarksRadioGroup.AsInteger         := ord(iLogGauge.OrientationTickMarks);
  ReverseScaleCheckBox.AsBoolean                   := iLogGauge.ReverseScale;
  CachedDrawingCheckBox.AsBoolean                  := iLogGauge.CachedDrawing;
  TransparentCheckBox.AsBoolean                    := iLogGauge.Transparent;

  OffsetXEdit.AsInteger                            := iLogGauge.OffsetX;
  OffsetYEdit.AsInteger                            := iLogGauge.OffsetY;
  //-------------- Pointers --------------------------------------------------------------------------------------------------------------------------
  PointerOffsetEdit.AsInteger                      := iLogGauge.PointerOffSet;
  PointerSizeEdit.AsInteger                        := iLogGauge.PointerSize;
  PointerStyleRadioGroup.AsInteger                 := ord(iLogGauge.PointerStyle);
  PointerColorPicker.Color                         := iLogGauge.PointerColor;

  MinMaxPointerSizeEdit.AsInteger                  := iLogGauge.MinMaxPointerSize;
  MinMaxPointerMarginEdit.AsInteger                := iLogGauge.MinMaxPointerMargin;
  MinMaxFixedCheckBox.AsBoolean                    := iLogGauge.MinMaxFixed;
  MinMaxUserCanMoveCheckBox.AsBoolean              := iLogGauge.MinMaxUserCanMove;

  ShowMaxPointerCheckBox.AsBoolean                 := iLogGauge.ShowMaxPointer;
  MaxPointerColorPicker.Color                      := iLogGauge.MaxPointerColor;

  ShowMinPointerCheckBox.AsBoolean                 := iLogGauge.ShowMinPointer;
  MinPointerColorPicker.Color                      := iLogGauge.MinPointerColor;
  //-------------- Ticks -----------------------------------------------------------------------------------------------------------------------------
  ShowTicksAxisCheckBox.AsBoolean                  := iLogGauge.ShowTicksAxis;
  TickMarginEdit.AsInteger                         := iLogGauge.TickMargin;

  TickLabelPrecisionEdit.AsInteger                 := iLogGauge.TickLabelPrecision;
  TickLabelMarginEdit.AsInteger                    := iLogGauge.TickLabelMargin;
  TickLabelStyleRadioGroup.AsInteger               := ord(iLogGauge.TickLabelStyle);

  TickMajorLengthEdit.AsInteger                    := iLogGauge.TickMajorLength;
  TickMajorColorPicker.Color                       := iLogGauge.TickMajorColor;
  TickMajorStyleRadioGroup.AsInteger               := ord(iLogGauge.TickMajorStyle);

  TickMinorLengthEdit.AsInteger                    := iLogGauge.TickMinorLength;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -