亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? teengine.pas

?? complete source code for teechart 7
?? PAS
?? 第 1 頁 / 共 5 頁
字號(hào):
{********************************************}
{  TeeChart Pro Charting Library             }
{  For Borland Delphi, C++ Builder & Kylix   }
{  Copyright (c) 1995-2004 by David Berneda  }
{  All Rights Reserved                       }
{********************************************}
unit TeEngine;
{$I TeeDefs.inc}

interface

uses {$IFNDEF LINUX}
     Windows,
     {$ENDIF}
     SysUtils, Classes, Messages,
     {$IFDEF CLX}
     QGraphics, QControls, QDialogs, Types,
     {$ELSE}
     Graphics, Controls,
     {$ENDIF}

     {$IFDEF TEETRIAL}
     TeeAbout,
     {$ENDIF}

     {$IFDEF CLR}
     System.ComponentModel,
     {$ENDIF}

     TeeProcs, TeCanvas;

Const ChartMarkColor   = clInfoBk (* $80FFFF *);  { default Series Mark back color }
      MinAxisIncrement :Double = 0.000000000001;  { <-- "double" for BCB }
      MinAxisRange     :Double = 0.0000000001;    { <-- "double" for BCB }
      TeeAllValues     = -1;

      {$IFDEF D6}
      clTeeColor       =TColor(clDefault);
      {$ELSE}
      clTeeColor       =TColor($20000000);
      {$ENDIF}

      ChartSamplesMax   = 1000;
      TeeAutoZOrder     = -1;
      TeeAutoDepth      = -1;
      TeeNoPointClicked = -1;
      TeeDef3DPercent   = 15;

      TeeColumnSeparator: {$IFDEF CLR}Char{$ELSE}AnsiChar{$ENDIF} = #6;  // To separate columns in Legend
      TeeLineSeparator  : {$IFDEF CLR}Char{$ELSE}AnsiChar{$ENDIF} = #13; // To separate lines of text

      // Index of first custom axis (0 to 5 are pre-created axes: Left,Top,
      // Right,Bottom,Depth and DepthTop.
      TeeInitialCustomAxis = 6;

var   TeeCheckMarkArrowColor : Boolean=False; // when True, the Marks arrow pen
                                              // color is changed if the point has
                                              // the same color.

      TeeRandomAtRunTime     : Boolean=False; // adds random values at run-time too

      clTeeGallery1:Integer = 0; // index of ColorPalette[] global variable
      clTeeGallery2:Integer = 3; // index of ColorPalette[] global variable

type
  TCustomAxisPanel=class;

  {$IFDEF CLR}
  [ToolBoxItem(False)]
  {$ENDIF}
  TCustomChartElement=class(TComponent)
  private
    FActive : Boolean;
    FBrush  : TChartBrush;
    FParent : TCustomAxisPanel;
    FPen    : TChartPen;
  protected
    InternalUse : Boolean;  // 7.0

    Procedure CanvasChanged(Sender:TObject); virtual;
    Function CreateChartPen:TChartPen;
    class Function GetEditorClass:String; virtual;
    Procedure SetActive(Value:Boolean); virtual;
    Procedure SetBooleanProperty(Var Variable:Boolean; Value:Boolean);
    procedure SetBrush(const Value: TChartBrush);
    Procedure SetColorProperty(Var Variable:TColor; Value:TColor);
    Procedure SetDoubleProperty(Var Variable:Double; Const Value:Double);
    Procedure SetIntegerProperty(Var Variable:Integer; Value:Integer);
    Procedure SetParentChart(Const Value:TCustomAxisPanel); virtual;
    {$IFNDEF CLR}
    procedure SetParentComponent(AParent: TComponent); override;
    {$ENDIF}
    procedure SetPen(const Value: TChartPen); virtual;
    Procedure SetStringProperty(Var Variable:String; Const Value:String);
  public
    Constructor Create(AOwner: TComponent); override;
    Destructor Destroy; override;

    procedure Assign(Source:TPersistent); override;
    Function GetParentComponent: TComponent; override;
    Function HasParent:Boolean; override;
    {$IFDEF CLR}
    procedure SetParentComponent(AParent: TComponent); override;
    {$ENDIF}
    Procedure Repaint;

    property Active:Boolean read FActive write SetActive default True;
    property Brush:TChartBrush read FBrush write SetBrush;
    property ParentChart:TCustomAxisPanel read FParent write SetParentChart stored False;
    property Pen:TChartPen read FPen write SetPen;

    // Alias for Active property.
    property Visible:Boolean read FActive write SetActive default True;
  end;

  TCustomChartSeries=class;

  TChartSeries=class;

  {$IFDEF TEEVALUESINGLE}
  TChartValue=Single;
  {$ELSE}
  {$IFDEF TEEVALUEDOUBLE}
  TChartValue=Double;
  {$ELSE}
  {$IFDEF TEEVALUEEXTENDED}
  TChartValue=Extended;
  {$ELSE}
  TChartValue=Double;  { <-- default }
  {$ENDIF}
  {$ENDIF}
  {$ENDIF}

  {$IFDEF TEEARRAY}
  TChartValues=Array of TChartValue;
  {$ELSE}
  PChartValue=^TChartValue;
  {$ENDIF}

  TChartListOrder=(loNone,loAscending,loDescending);

  // CLR: cannot be sealed due to cast tricks
  TChartValueList=class(TPersistent)
  private
    FDateTime    : Boolean;
    {$IFNDEF TEEARRAY}
    FList        : TList;
    {$ENDIF}
    FMaxValue    : TChartValue;
    FMinValue    : TChartValue;
    {$IFDEF TEEMULTIPLIER}
    FMultiplier  : Double;  { obsolete }
    {$ENDIF}
    FName        : String;
    FOrder       : TChartListOrder;
    FOwner       : TChartSeries;
    FTempValue   : TChartValue;
    FTotal       : Double;
    FTotalABS    : Double;
    FValueSource : String;

    { internal }
    IDefDateTime : Boolean;

    {$IFOPT C+}
    FCount       : Integer;
    function GetCount:Integer;
    procedure SetCount(const Value:Integer);
    {$ENDIF}

    Function CompareValueIndex(a,b:Integer):Integer;
    Function GetMaxValue:TChartValue;
    Function GetMinValue:TChartValue;
    Function GetTotal:Double;
    Function GetTotalABS:Double;
    function IsDateStored: Boolean;
    procedure SetDateTime(Const Value:Boolean);
    {$IFDEF TEEMULTIPLIER}
    Function IsMultiStored:Boolean;
    Procedure SetMultiplier(Const Value:Double); { obsolete }
    {$ELSE}
    procedure ReadMultiplier(Reader: TReader);
    {$ENDIF}
    Procedure SetValueSource(Const Value:String);
  protected
    IData       : TObject;

    Function AddChartValue:Integer; overload;
    Function AddChartValue(Const AValue:TChartValue):Integer; overload; virtual;
    Procedure ClearValues; virtual;

    {$IFNDEF TEEMULTIPLIER}
    procedure DefineProperties(Filer: TFiler); override;
    {$ENDIF}

    Function GetValue(ValueIndex:Integer):TChartValue;
    Procedure InitDateTime(Value:Boolean);
    Procedure InsertChartValue(ValueIndex:Integer; Const AValue:TChartValue); virtual;
    Procedure RecalcStats; overload;
    procedure RecalcStats(StartIndex:Integer); overload;
    Procedure SetValue(ValueIndex:Integer; Const AValue:TChartValue);
  public
    {$IFDEF TEEARRAY}
    Value    : TChartValues;

    {$IFOPT C-}  // When not using runtime assertions
    Count    : Integer;
    {$ENDIF}

    {$ENDIF}

    Modified : Boolean;

    Constructor Create(AOwner:TChartSeries; Const AName:String); virtual;
    Destructor Destroy; override;

    Procedure Assign(Source:TPersistent); override;

    {$IFNDEF TEEARRAY}
    Function Count:Integer; virtual;
    {$ELSE}
    {$IFOPT C+}
    property Count:Integer read GetCount write SetCount;
    {$ENDIF}
    {$ENDIF}

    Procedure Delete(ValueIndex:Integer); overload; virtual;
    Procedure Delete(Start,Quantity:Integer); overload;
    {$IFDEF TEEARRAY}
    Procedure Exchange(Index1,Index2:Integer);
    {$ENDIF}
    Procedure FillSequence;
    Function First:TChartValue;
    Function Last:TChartValue;
    Function Locate(Const AValue:TChartValue):Integer; overload;
    Function Locate(Const AValue:TChartValue; FirstIndex,LastIndex:Integer):Integer; overload;  // 7.0
    Function Range:TChartValue;
    Procedure Scroll; dynamic;
    Procedure Sort;

    property MaxValue:TChartValue read GetMaxValue;
    property MinValue:TChartValue read GetMinValue;
    property Owner:TChartSeries read FOwner;
    property TempValue:TChartValue read FTempValue write FTempValue;
    Function ToString(Index:Integer):String; {$IFDEF CLR}reintroduce;{$ENDIF}
    property Total:Double read GetTotal;
    property TotalABS:Double read GetTotalABS write FTotalABS;
    {$IFDEF TEEARRAY}
    property Items[Index:Integer]:TChartValue read GetValue write SetValue; default;
    {$ELSE}
    property Value[Index:Integer]:TChartValue read GetValue write SetValue; default;
    {$ENDIF}
  published
    property DateTime:Boolean read FDateTime write SetDateTime stored IsDateStored;
    property Name:String read FName write FName;
    {$IFDEF TEEMULTIPLIER}
    property Multiplier:Double read FMultiplier write SetMultiplier stored IsMultiStored; { obsolete }
    {$ENDIF}
    property Order:TChartListOrder read FOrder write FOrder;
    property ValueSource:String read FValueSource write SetValueSource;
  end;

  TChartAxisTitle=class {$IFDEF CLR}sealed{$ENDIF} (TTeeCustomShape)
  private
    FAngle        : Integer;
    FCaption      : String;

    IDefaultAngle : Integer;
    Function IsAngleStored:Boolean;
    Procedure SetAngle(const Value:Integer);
    Procedure SetCaption(Const Value:String);
  public
    Procedure Assign(Source:TPersistent); override;
  published
    property Angle:Integer read FAngle write SetAngle stored IsAngleStored;
    property Caption:String read FCaption write SetCaption;
    property Font;
    property Visible default True;
  end;

  AxisException=class {$IFDEF CLR}sealed{$ENDIF} (Exception);

  TAxisLabelStyle=(talAuto,talNone,talValue,talMark,talText);
  TAxisLabelAlign=(alDefault,alOpposite);

  TAxisCalcPos=function(const Value:TChartValue):Integer of object;

  TCustomSeriesList=class;

  TAxisGridPen=class {$IFDEF CLR}sealed{$ENDIF} (TDottedGrayPen)
  private
    FZ : Double;
    IDefaultZ : Double;
    FCentered: Boolean;
    function IsZStored:Boolean;
    procedure SetZ(const Value:Double);
    procedure SetCentered(const Value: Boolean);
  public
    // (pending to move Centered to "published" after removing Axis.GridCentered)
    property Centered:Boolean read FCentered write SetCentered default False;
  published
    property ZPosition:Double read FZ write SetZ stored IsZStored;
  end;

  TAxisTicks=Array of Integer;

//  TAxisTickValues=TChartValues;

  TChartAxis=class;

  TAxisItems=class;

  TAxisItem=class {$IFDEF CLR}sealed{$ENDIF} (TTeeCustomShape)
  private
    FValue : Double;
    FText  : String;

    IAxisItems : TAxisItems;
    procedure SetText(const Value: String);
    procedure SetValue(const Value: Double);
  public
    procedure Repaint;
  published
    property Bevel;
    property BevelWidth;
    property Color;
    property Font;
    property Gradient;
    property Shadow;
    property ShapeStyle;
    property Text:String read FText write SetText;
    property Transparency;
    property Transparent default True;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美视频一区在线| 国产乱色国产精品免费视频| 91麻豆swag| 国产精品久久久久久久第一福利 | 久久机这里只有精品| 日韩欧美亚洲另类制服综合在线| 久久99久久久欧美国产| 精品日产卡一卡二卡麻豆| 国产一区在线精品| 国产精品的网站| 欧美在线一区二区| 久久国产精品区| 久久久久97国产精华液好用吗| 高清shemale亚洲人妖| 成人欧美一区二区三区在线播放| 欧美影片第一页| 久久精品国产一区二区| 国产日韩精品久久久| 日本高清成人免费播放| 奇米影视在线99精品| 久久亚洲春色中文字幕久久久| 成人精品免费视频| 午夜av电影一区| 久久先锋影音av| 色噜噜夜夜夜综合网| 蜜臀av一区二区在线观看| 国产网站一区二区三区| 91视频精品在这里| 久久成人久久爱| 一区免费观看视频| 日韩女同互慰一区二区| 91精品欧美久久久久久动漫 | 亚洲男人的天堂一区二区| 在线成人小视频| www.av精品| 蜜臀av一区二区在线观看| 国产精品传媒视频| 日韩一级视频免费观看在线| 91丝袜高跟美女视频| 激情综合网天天干| 亚洲一区中文日韩| 中文字幕欧美激情一区| 欧美一区二区在线视频| 不卡在线视频中文字幕| 久久99国产精品成人| 亚洲妇女屁股眼交7| 国产精品久久久久久久浪潮网站| 在线不卡的av| 欧美亚一区二区| jlzzjlzz亚洲女人18| 狠狠网亚洲精品| 五月天一区二区| 亚洲柠檬福利资源导航| 国产视频一区在线播放| 日韩欧美国产小视频| 欧美日韩1区2区| 色欧美片视频在线观看在线视频| 国产黑丝在线一区二区三区| 日精品一区二区| 亚洲影院理伦片| 亚洲视频综合在线| 国产精品看片你懂得| 久久久99精品久久| 欧美videos大乳护士334| 69久久夜色精品国产69蝌蚪网| 91女神在线视频| 99视频国产精品| 成人午夜又粗又硬又大| 丁香婷婷综合五月| 国产成人av在线影院| 国产一区二区电影| 国产一区二区按摩在线观看| 久久成人综合网| 国内精品久久久久影院色 | 亚洲欧洲另类国产综合| 国产欧美日韩视频一区二区| 亚洲精品一区二区三区香蕉| 日韩三级.com| 日韩美女一区二区三区| 欧美不卡123| 久久一夜天堂av一区二区三区| 精品久久久三级丝袜| 久久综合久久综合久久综合| 亚洲一区精品在线| 亚洲成人免费在线| 亚洲成av人片www| 日韩电影在线一区二区三区| 日韩成人精品在线| 久久不见久久见中文字幕免费| 蜜臀av一区二区在线免费观看 | 国产亚洲欧美一级| 日本一区二区三区视频视频| 中文乱码免费一区二区| 国产精品对白交换视频 | 久久精品国产99久久6| 久久国产精品72免费观看| 狠狠狠色丁香婷婷综合激情| 国产成人av一区二区| 不卡的av电影在线观看| 色哟哟一区二区在线观看| 欧美日韩亚洲另类| 欧美电视剧免费观看| 欧美激情一区二区| 亚洲一区中文日韩| 另类小说图片综合网| 成人动漫中文字幕| 欧美视频一区在线| 久久久久久久综合| 亚洲免费观看高清完整版在线观看熊| 亚洲一卡二卡三卡四卡| 另类小说图片综合网| 99久久综合国产精品| 欧美亚洲综合久久| 久久中文娱乐网| 一区二区三区中文在线| 日本aⅴ亚洲精品中文乱码| 国产一二精品视频| 欧美亚洲国产一区在线观看网站 | 丝袜美腿亚洲综合| 日韩视频免费观看高清完整版在线观看 | 色老综合老女人久久久| 7777精品伊人久久久大香线蕉的 | 成人爱爱电影网址| 欧美久久免费观看| 国产精品你懂的| 亚洲高清一区二区三区| 国产风韵犹存在线视精品| 在线影院国内精品| 欧美国产成人精品| 青娱乐精品在线视频| 99久久精品国产导航| 欧美电影免费提供在线观看| 国产精品成人一区二区三区夜夜夜 | 一区二区欧美在线观看| 韩国三级电影一区二区| 欧美无砖专区一中文字| 国产人成亚洲第一网站在线播放 | 日韩国产欧美在线视频| av亚洲精华国产精华精| 日韩精品一区二| 午夜精品视频在线观看| 成人动漫av在线| 2023国产精品| 日本vs亚洲vs韩国一区三区| 日本韩国欧美在线| 国产精品国产三级国产有无不卡| 久久国产免费看| 91精品国产一区二区| 一区二区成人在线观看| 成人v精品蜜桃久久一区| 久久久久综合网| 免费国产亚洲视频| 欧美日韩一级大片网址| 一区二区高清视频在线观看| 99免费精品在线| 久久亚洲二区三区| 精品一区二区三区在线播放| 制服丝袜中文字幕亚洲| 亚洲v日本v欧美v久久精品| 色拍拍在线精品视频8848| 中文字幕一区在线观看视频| 国产成人a级片| 欧美激情一区二区三区全黄| 国产超碰在线一区| 国产欧美日韩视频一区二区| 狠狠色丁香久久婷婷综| 精品久久久久久久一区二区蜜臀| 蜜臀久久久99精品久久久久久| 欧美日韩黄视频| 日日噜噜夜夜狠狠视频欧美人 | 爽爽淫人综合网网站| 欧美日韩成人综合天天影院| 亚洲一区在线视频观看| 欧美日韩另类一区| 日韩专区在线视频| 欧美电视剧在线看免费| 国内精品久久久久影院一蜜桃| 久久精品日产第一区二区三区高清版 | 欧美日韩国产首页在线观看| 亚洲图片欧美色图| 欧美日韩一区在线| 日韩国产在线观看一区| 日韩精品在线看片z| 国产成人免费视频一区| 国产精品视频在线看| 91黄色免费观看| 图片区日韩欧美亚洲| 日韩一级免费一区| 国产成人在线视频免费播放| 中文字幕一区二区三区四区不卡| 99久久久国产精品| 成人在线视频一区| 亚洲免费电影在线| 91精品国产91综合久久蜜臀| 狠狠网亚洲精品| 亚洲同性同志一二三专区| 欧美亚洲动漫精品| 国产一区二区中文字幕| 日韩一区中文字幕| 欧美一区二区三区四区五区|