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

📄 iplotdatafulllist.pas

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

{$ifdef iVCL}unit  iPlotDataFullList;{$endif}
{$ifdef iCLX}unit QiPlotDataFullList;{$endif}

interface

uses
  {$I iIncludeUses.inc}
  {$IFDEF iVCL} iTypes,  iPlotDataCustomList;{$ENDIF}
  {$IFDEF iCLX}QiTypes, QiPlotDataCustomList;{$ENDIF}

type
  TiPlotDataFull = record
    X                : Double;
    Y                : Double;
    Null             : Boolean;
    Empty            : Boolean;

    High             : Double;
    Low              : Double;
    Open             : Double;
    Close            : Double;

    TraceLineColor   : TColor;
    TraceLineWidth   : Integer;
    TraceLineStyle   : TiPlotLineStyle;

    MarkerVisible    : Boolean;
    MarkerSize       : Integer;
    MarkerStyle      : TiPlotMarkerStyle;
    MarkerPenColor   : TColor;
    MarkerPenWidth   : Integer;
    MarkerPenStyle   : TPenStyle;
    MarkerBrushColor : TColor;
    MarkerBrushStyle : TBrushStyle;
    MarkerCharacter  : Char;

    BarVisible       : Boolean;
    BarReference     : Double;
    BarWidth         : Double;
    BarPenColor      : TColor;
    BarPenWidth      : Integer;
    BarPenStyle      : TPenStyle;
    BarBrushColor    : TColor;
    BarBrushStyle    : TBrushStyle;
  end;
type
  TiPlotDataFullArray = array[0..(Maxint div SizeOf(TiPlotDataFull)) - 1] of TiPlotDataFull;
  PiPlotDataFullArray = ^TiPlotDataFullArray;

  TiPlotDataFullList = class(TiPlotDataCustomList)
  private
    FList : PiPlotDataFullArray;
  protected
    function  GetX               (const Index: Integer): Double;                        override;
    function  GetY               (const Index: Integer): Double;                        override;
    function  GetNull            (const Index: Integer): Boolean;                       override;
    function  GetEmpty           (const Index: Integer): Boolean;                       override;

    function  GetHigh            (const Index: Integer): Double;                        override;
    function  GetLow             (const Index: Integer): Double;                        override;
    function  GetOpen            (const Index: Integer): Double;                        override;
    function  GetClose           (const Index: Integer): Double;                        override;

    procedure SetX               (const Index: Integer; const Value: Double);           override;
    procedure SetY               (const Index: Integer; const Value: Double);           override;
    procedure SetNull            (const Index: Integer; const Value: Boolean);          override;
    procedure SetEmpty           (const Index: Integer; const Value: Boolean);          override;

    procedure SetHigh            (const Index: Integer; const Value: Double);           override;
    procedure SetLow             (const Index: Integer; const Value: Double);           override;
    procedure SetOpen            (const Index: Integer; const Value: Double);           override;
    procedure SetClose           (const Index: Integer; const Value: Double);           override;

    function  GetTraceLineColor  (const Index: Integer): TColor;                        override;
    function  GetTraceLineWidth  (const Index: Integer): Integer;                       override;
    function  GetTraceLineStyle  (const Index: Integer): TiPlotLineStyle;               override;
    function  GetMarkerVisible   (const Index: Integer): Boolean;                       override;
    function  GetMarkerSize      (const Index: Integer): Integer;                       override;
    function  GetMarkerStyle     (const Index: Integer): TiPlotMarkerStyle;             override;
    function  GetMarkerPenColor  (const Index: Integer): TColor;                        override;
    function  GetMarkerPenWidth  (const Index: Integer): Integer;                       override;
    function  GetMarkerPenStyle  (const Index: Integer): TPenStyle;                     override;
    function  GetMarkerBrushColor(const Index: Integer): TColor;                        override;
    function  GetMarkerBrushStyle(const Index: Integer): TBrushStyle;                   override;
    function  GetMarkerCharacter (const Index: Integer): Char;                          override;
    function  GetBarVisible      (const Index: Integer): Boolean;                       override;
    function  GetBarReference    (const Index: Integer): Double;                        override;
    function  GetBarWidth        (const Index: Integer): Double;                        override;
    function  GetBarPenColor     (const Index: Integer): TColor;                        override;
    function  GetBarPenWidth     (const Index: Integer): Integer;                       override;
    function  GetBarPenStyle     (const Index: Integer): TPenStyle;                     override;
    function  GetBarBrushColor   (const Index: Integer): TColor;                        override;
    function  GetBarBrushStyle   (const Index: Integer): TBrushStyle;                   override;

    procedure SetTraceLineColor  (const Index: Integer; const Value: TColor);           override;
    procedure SetTraceLineWidth  (const Index: Integer; const Value: Integer);          override;
    procedure SetTraceLineStyle  (const Index: Integer; const Value: TiPlotLineStyle);  override;
    procedure SetMarkerVisible   (const Index: Integer; const Value: Boolean);          override;
    procedure SetMarkerSize      (const Index: Integer; const Value: Integer);          override;
    procedure SetMarkerStyle     (const Index: Integer; const Value: TiPlotMarkerStyle);override;
    procedure SetMarkerPenColor  (const Index: Integer; const Value: TColor);           override;
    procedure SetMarkerPenWidth  (const Index: Integer; const Value: Integer);          override;
    procedure SetMarkerPenStyle  (const Index: Integer; const Value: TPenStyle);        override;
    procedure SetMarkerBrushColor(const Index: Integer; const Value: TColor);           override;
    procedure SetMarkerBrushStyle(const Index: Integer; const Value: TBrushStyle);      override;
    procedure SetMarkerCharacter (const Index: Integer; const Value: Char);             override;
    procedure SetBarVisible      (const Index: Integer; const Value: Boolean);          override;
    procedure SetBarReference    (const Index: Integer; const Value: Double);           override;
    procedure SetBarWidth        (const Index: Integer; const Value: Double);           override;
    procedure SetBarPenColor     (const Index: Integer; const Value: TColor);           override;
    procedure SetBarPenWidth     (const Index: Integer; const Value: Integer);          override;
    procedure SetBarPenStyle     (const Index: Integer; const Value: TPenStyle);        override;
    procedure SetBarBrushColor   (const Index: Integer; const Value: TColor);           override;
    procedure SetBarBrushStyle   (const Index: Integer; const Value: TBrushStyle);      override;

    procedure FreeMemory;                                                               override;
  public
    constructor Create;                                                                 override;

    function  Add(const X, Y: Double): Integer;                                         override;
    procedure SetCapacity(const NewCapacity: Integer);                                  override;
    procedure DeletePoints(const Size : Integer);                                       override;

    procedure GetXYEmptyNull(const Index: Integer; var X, Y: Double; var Empty, Null: Boolean); override;
  end;

implementation
//****************************************************************************************************************************************************
constructor TiPlotDataFullList.Create;
begin
  inherited Create;
  SetDataPointSize(SizeOf(TiPlotDataFull));
end;
//****************************************************************************************************************************************************
function TiPlotDataFullList.Add(const X, Y: Double): Integer;
var
  ActualIndex : Integer;
  Item        : TiPlotDataFull;
begin
  Item.X                := X;
  Item.Y                := Y;
  Item.Null             := False;
  Item.Empty            := False;

⌨️ 快捷键说明

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