home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1996 August / VPR9608A.BIN / del20try / install / data.z / STDCTRLS.INT < prev    next >
Text File  |  1996-05-08  |  19KB  |  629 lines

  1.  
  2. {*******************************************************}
  3. {                                                       }
  4. {       Delphi Visual Component Library                 }
  5. {                                                       }
  6. {       Copyright (c) 1995,96 Borland International     }
  7. {                                                       }
  8. {*******************************************************}
  9.  
  10. unit StdCtrls;
  11.  
  12. {$R-}
  13.  
  14. interface
  15.  
  16. uses Messages, Windows, SysUtils, Classes, Controls, Forms, Menus, Graphics;
  17.  
  18. type
  19.   TCustomGroupBox = class(TCustomControl)
  20.   protected
  21.     procedure AlignControls(AControl: TControl; var Rect: TRect); override;
  22.     procedure Paint; override;
  23.   public
  24.     constructor Create(AOwner: TComponent); override;
  25.   end;
  26.  
  27.   TGroupBox = class(TCustomGroupBox)
  28.   published
  29.     property Align;
  30.     property Caption;
  31.     property Color;
  32.     property Ctl3D;
  33.     property DragCursor;
  34.     property DragMode;
  35.     property Enabled;
  36.     property Font;
  37.     property ParentColor;
  38.     property ParentCtl3D;
  39.     property ParentFont;
  40.     property ParentShowHint;
  41.     property PopupMenu;
  42.     property ShowHint;
  43.     property TabOrder;
  44.     property TabStop;
  45.     property Visible;
  46.     property OnClick;
  47.     property OnDblClick;
  48.     property OnDragDrop;
  49.     property OnDragOver;
  50.     property OnEndDrag;
  51.     property OnEnter;
  52.     property OnExit;
  53.     property OnMouseDown;
  54.     property OnMouseMove;
  55.     property OnMouseUp;
  56.     property OnStartDrag;
  57.   end;
  58.  
  59.   TCustomLabel = class(TGraphicControl)
  60.   protected
  61.     function GetLabelText: string; virtual;
  62.     procedure Notification(AComponent: TComponent;
  63.       Operation: TOperation); override;
  64.     procedure Paint; override;
  65.     procedure SetAutoSize(Value: Boolean); virtual;
  66.     property Alignment: TAlignment default taLeftJustify;
  67.     property AutoSize: Boolean default True;
  68.     property FocusControl: TWinControl;
  69.     property ShowAccelChar: Boolean default True;
  70.     property Transparent: Boolean default False;
  71.     property WordWrap: Boolean default False;
  72.   public
  73.     constructor Create(AOwner: TComponent); override;
  74.     property Canvas;
  75.   end;
  76.  
  77.   TLabel = class(TCustomLabel)
  78.   published
  79.     property Align;
  80.     property Alignment;
  81.     property AutoSize;
  82.     property Caption;
  83.     property Color;
  84.     property DragCursor;
  85.     property DragMode;
  86.     property Enabled;
  87.     property FocusControl;
  88.     property Font;
  89.     property ParentColor;
  90.     property ParentFont;
  91.     property ParentShowHint;
  92.     property PopupMenu;
  93.     property ShowAccelChar;
  94.     property ShowHint;
  95.     property Transparent;
  96.     property Visible;
  97.     property WordWrap;
  98.     property OnClick;
  99.     property OnDblClick;
  100.     property OnDragDrop;
  101.     property OnDragOver;
  102.     property OnEndDrag;
  103.     property OnMouseDown;
  104.     property OnMouseMove;
  105.     property OnMouseUp;
  106.     property OnStartDrag;
  107.   end;
  108.  
  109.   TEditCharCase = (ecNormal, ecUpperCase, ecLowerCase);
  110.  
  111.   TCustomEdit = class(TWinControl)
  112.   protected
  113.     procedure Change; dynamic;
  114.     procedure CreateParams(var Params: TCreateParams); override;
  115.     procedure CreateWnd; override;
  116.     procedure DestroyWnd; override;
  117.     property AutoSelect: Boolean default True;
  118.     property AutoSize: Boolean default True;
  119.     property BorderStyle: TBorderStyle default bsSingle;
  120.     property CharCase: TEditCharCase default ecNormal;
  121.     property HideSelection: Boolean default True;
  122.     property MaxLength: Integer default 0;
  123.     property OEMConvert: Boolean default False;
  124.     property PasswordChar: Char default #0;
  125.     property ParentColor default False;
  126.     property ReadOnly: Boolean default False;
  127.     property OnChange: TNotifyEvent;
  128.   public
  129.     constructor Create(AOwner: TComponent); override;
  130.     procedure Clear;
  131.     procedure ClearSelection;
  132.     procedure CopyToClipboard;
  133.     procedure CutToClipboard;
  134.     procedure PasteFromClipboard;
  135.     function GetSelTextBuf(Buffer: PChar; BufSize: Integer): Integer;
  136.     procedure SelectAll;
  137.     procedure SetSelTextBuf(Buffer: PChar);
  138.     property Modified: Boolean;
  139.     property SelLength: Integer;
  140.     property SelStart: Integer;
  141.     property SelText: string;
  142.     property Text;
  143.   published
  144.     property TabStop default True;
  145.   end;
  146.  
  147.   TEdit = class(TCustomEdit)
  148.   published
  149.     property AutoSelect;
  150.     property AutoSize;
  151.     property BorderStyle;
  152.     property CharCase;
  153.     property Color;
  154.     property Ctl3D;
  155.     property DragCursor;
  156.     property DragMode;
  157.     property Enabled;
  158.     property Font;
  159.     property HideSelection;
  160.     property MaxLength;
  161.     property OEMConvert;
  162.     property ParentColor;
  163.     property ParentCtl3D;
  164.     property ParentFont;
  165.     property ParentShowHint;
  166.     property PasswordChar;
  167.     property PopupMenu;
  168.     property ReadOnly;
  169.     property ShowHint;
  170.     property TabOrder;
  171.     property TabStop;
  172.     property Text;
  173.     property Visible;
  174.     property OnChange;
  175.     property OnClick;
  176.     property OnDblClick;
  177.     property OnDragDrop;
  178.     property OnDragOver;
  179.     property OnEndDrag;
  180.     property OnEnter;
  181.     property OnExit;
  182.     property OnKeyDown;
  183.     property OnKeyPress;
  184.     property OnKeyUp;
  185.     property OnMouseDown;
  186.     property OnMouseMove;
  187.     property OnMouseUp;
  188.     property OnStartDrag;
  189.   end;
  190.  
  191.   TScrollStyle = (ssNone, ssHorizontal, ssVertical, ssBoth);
  192.  
  193.   TCustomMemo = class(TCustomEdit)
  194.   protected
  195.     procedure CreateParams(var Params: TCreateParams); override;
  196.     procedure CreateWindowHandle(const Params: TCreateParams); override;
  197.     procedure KeyPress(var Key: Char); override;
  198.     procedure Loaded; override;
  199.     procedure SetAlignment(Value: TAlignment);
  200.     procedure SetLines(Value: TStrings);
  201.     procedure SetScrollBars(Value: TScrollStyle);
  202.     procedure SetWordWrap(Value: Boolean);
  203.     property Alignment: TAlignment default taLeftJustify;
  204.     property ScrollBars: TScrollStyle default ssNone;
  205.     property WantReturns: Boolean default True;
  206.     property WantTabs: Boolean default False;
  207.     property WordWrap: Boolean default True;
  208.   public
  209.     constructor Create(AOwner: TComponent); override;
  210.     destructor Destroy; override;
  211.     property Lines: TStrings;
  212.   end;
  213.  
  214.   TMemo = class(TCustomMemo)
  215.   published
  216.     property Align;
  217.     property Alignment;
  218.     property BorderStyle;
  219.     property Color;
  220.     property Ctl3D;
  221.     property DragCursor;
  222.     property DragMode;
  223.     property Enabled;
  224.     property Font;
  225.     property HideSelection;
  226.     property Lines;
  227.     property MaxLength;
  228.     property OEMConvert;
  229.     property ParentColor;
  230.     property ParentCtl3D;
  231.     property ParentFont;
  232.     property ParentShowHint;
  233.     property PopupMenu;
  234.     property ReadOnly;
  235.     property ScrollBars;
  236.     property ShowHint;
  237.     property TabOrder;
  238.     property TabStop;
  239.     property Visible;
  240.     property WantReturns;
  241.     property WantTabs;
  242.     property WordWrap;
  243.     property OnChange;
  244.     property OnClick;
  245.     property OnDblClick;
  246.     property OnDragDrop;
  247.     property OnDragOver;
  248.     property OnEndDrag;
  249.     property OnEnter;
  250.     property OnExit;
  251.     property OnKeyDown;
  252.     property OnKeyPress;
  253.     property OnKeyUp;
  254.     property OnMouseDown;
  255.     property OnMouseMove;
  256.     property OnMouseUp;
  257.     property OnStartDrag;
  258.   end;
  259.  
  260.   TComboBoxStyle = (csDropDown, csSimple, csDropDownList, csOwnerDrawFixed,
  261.     csOwnerDrawVariable);
  262.   TOwnerDrawState = set of (odSelected, odGrayed, odDisabled, odChecked,
  263.     odFocused);
  264.  
  265.   TDrawItemEvent = procedure(Control: TWinControl; Index: Integer;
  266.     Rect: TRect; State: TOwnerDrawState) of object;
  267.  
  268.   TMeasureItemEvent = procedure(Control: TWinControl; Index: Integer;
  269.     var Height: Integer) of object;
  270.  
  271.   TCustomComboBox = class(TWinControl)
  272.   protected
  273.     procedure ComboWndProc(var Message: TMessage; ComboWnd: HWnd;
  274.       ComboProc: Pointer); virtual;
  275.     procedure WndProc(var Message: TMessage); override;
  276.     procedure CreateParams(var Params: TCreateParams); override;
  277.     procedure CreateWnd; override;
  278.     procedure DestroyWnd; override;
  279.     procedure DrawItem(Index: Integer; Rect: TRect;
  280.       State: TOwnerDrawState); virtual;
  281.     procedure MeasureItem(Index: Integer; var Height: Integer); virtual;
  282.     procedure Change; dynamic;
  283.     procedure DropDown; dynamic;
  284.     procedure SetStyle(Value: TComboBoxStyle); virtual;
  285.     property DropDownCount: Integer default 8;
  286.     property EditHandle: HWnd;
  287.     property ItemHeight: Integer;
  288.     property ListHandle: HWnd;
  289.     property MaxLength: Integer default 0;
  290.     property ParentColor default False;
  291.     property Sorted: Boolean default False;
  292.     property Style: TComboBoxStyle default csDropDown;
  293.     property OnChange: TNotifyEvent;
  294.     property OnDropDown: TNotifyEvent;
  295.     property OnDrawItem: TDrawItemEvent;
  296.     property OnMeasureItem: TMeasureItemEvent;
  297.   public
  298.     constructor Create(AOwner: TComponent); override;
  299.     destructor Destroy; override;
  300.     procedure Clear;
  301.     procedure SelectAll;
  302.     property Canvas: TCanvas;
  303.     property DroppedDown: Boolean;
  304.     property Items: TStrings;
  305.     property ItemIndex: Integer;
  306.     property SelLength: Integer;
  307.     property SelStart: Integer;
  308.     property SelText: string;
  309.   published
  310.     property TabStop default True;
  311.   end;
  312.  
  313.   TComboBox = class(TCustomComboBox)
  314.   published
  315.     property Style; {Must be published before Items}
  316.     property Color;
  317.     property Ctl3D;
  318.     property DragMode;
  319.     property DragCursor;
  320.     property DropDownCount;
  321.     property Enabled;
  322.     property Font;
  323.     property ItemHeight;
  324.     property Items;
  325.     property MaxLength;
  326.     property ParentColor;
  327.     property ParentCtl3D;
  328.     property ParentFont;
  329.     property ParentShowHint;
  330.     property PopupMenu;
  331.     property ShowHint;
  332.     property Sorted;
  333.     property TabOrder;
  334.     property TabStop;
  335.     property Text;
  336.     property Visible;
  337.     property OnChange;
  338.     property OnClick;
  339.     property OnDblClick;
  340.     property OnDragDrop;
  341.     property OnDragOver;
  342.     property OnDrawItem;
  343.     property OnDropDown;
  344.     property OnEndDrag;
  345.     property OnEnter;
  346.     property OnExit;
  347.     property OnKeyDown;
  348.     property OnKeyPress;
  349.     property OnKeyUp;
  350.     property OnMeasureItem;
  351.     property OnStartDrag;
  352.   end;
  353.  
  354.   TButtonControl = class(TWinControl)
  355.   protected
  356.     procedure WndProc(var Message: TMessage); override;
  357.   end;
  358.  
  359.   TButton = class(TButtonControl)
  360.   protected
  361.     procedure CreateParams(var Params: TCreateParams); override;
  362.     procedure CreateWnd; override;
  363.     procedure SetButtonStyle(ADefault: Boolean); virtual;
  364.   public
  365.     constructor Create(AOwner: TComponent); override;
  366.     procedure Click; override;
  367.   published
  368.     property Cancel: Boolean default False;
  369.     property Caption;
  370.     property Default: Boolean default False;
  371.     property DragCursor;
  372.     property DragMode;
  373.     property Enabled;
  374.     property Font;
  375.     property ModalResult: TModalResult default 0;
  376.     property ParentFont;
  377.     property ParentShowHint;
  378.     property PopupMenu;
  379.     property ShowHint;
  380.     property TabOrder;
  381.     property TabStop default True;
  382.     property Visible;
  383.     property OnClick;
  384.     property OnDragDrop;
  385.     property OnDragOver;
  386.     property OnEndDrag;
  387.     property OnEnter;
  388.     property OnExit;
  389.     property OnKeyDown;
  390.     property OnKeyPress;
  391.     property OnKeyUp;
  392.     property OnMouseDown;
  393.     property OnMouseMove;
  394.     property OnMouseUp;
  395.     property OnStartDrag;
  396.   end;
  397.  
  398.   TCheckBoxState = (cbUnchecked, cbChecked, cbGrayed);
  399.  
  400.   TCustomCheckBox = class(TButtonControl)
  401.   protected
  402.     procedure Toggle; virtual;
  403.     procedure CreateParams(var Params: TCreateParams); override;
  404.     procedure CreateWindowHandle(const Params: TCreateParams); override;
  405.     procedure CreateWnd; override;
  406.     property Alignment: TLeftRight default taRightJustify;
  407.     property AllowGrayed: Boolean default False;
  408.     property Checked: Boolean;
  409.     property State: TCheckBoxState default cbUnchecked;
  410.   public
  411.     constructor Create(AOwner: TComponent); override;
  412.   published
  413.     property TabStop default True;
  414.   end;
  415.  
  416.   TCheckBox = class(TCustomCheckBox)
  417.   published
  418.     property Alignment;
  419.     property AllowGrayed;
  420.     property Caption;
  421.     property Checked;
  422.     property Color;
  423.     property Ctl3D;
  424.     property DragCursor;
  425.     property DragMode;
  426.     property Enabled;
  427.     property Font;
  428.     property ParentColor;
  429.     property ParentCtl3D;
  430.     property ParentFont;
  431.     property ParentShowHint;
  432.     property PopupMenu;
  433.     property ShowHint;
  434.     property State;
  435.     property TabOrder;
  436.     property TabStop;
  437.     property Visible;
  438.     property OnClick;
  439.     property OnDragDrop;
  440.     property OnDragOver;
  441.     property OnEndDrag;
  442.     property OnEnter;
  443.     property OnExit;
  444.     property OnKeyDown;
  445.     property OnKeyPress;
  446.     property OnKeyUp;
  447.     property OnMouseDown;
  448.     property OnMouseMove;
  449.     property OnMouseUp;
  450.     property OnStartDrag;
  451.   end;
  452.  
  453.   TRadioButton = class(TButtonControl)
  454.   protected
  455.     procedure SetChecked(Value: Boolean);
  456.     procedure CreateParams(var Params: TCreateParams); override;
  457.     procedure CreateWindowHandle(const Params: TCreateParams); override;
  458.     procedure CreateWnd; override;
  459.   public
  460.     constructor Create(AOwner: TComponent); override;
  461.   published
  462.     property Alignment: TLeftRight default taRightJustify;
  463.     property Caption;
  464.     property Checked: Boolean default False;
  465.     property Color;
  466.     property Ctl3D;
  467.     property DragCursor;
  468.     property DragMode;
  469.     property Enabled;
  470.     property Font;
  471.     property ParentColor;
  472.     property ParentCtl3D;
  473.     property ParentFont;
  474.     property ParentShowHint;
  475.     property PopupMenu;
  476.     property ShowHint;
  477.     property TabOrder;
  478.     property TabStop;
  479.     property Visible;
  480.     property OnClick;
  481.     property OnDblClick;
  482.     property OnDragDrop;
  483.     property OnDragOver;
  484.     property OnEndDrag;
  485.     property OnEnter;
  486.     property OnExit;
  487.     property OnKeyDown;
  488.     property OnKeyPress;
  489.     property OnKeyUp;
  490.     property OnMouseDown;
  491.     property OnMouseMove;
  492.     property OnMouseUp;
  493.     property OnStartDrag;
  494.   end;
  495.  
  496.   TListBoxStyle = (lbStandard, lbOwnerDrawFixed, lbOwnerDrawVariable);
  497.  
  498.   TCustomListBox = class(TWinControl)
  499.   protected
  500.     procedure CreateParams(var Params: TCreateParams); override;
  501.     procedure CreateWnd; override;
  502.     procedure DestroyWnd; override;
  503.     procedure WndProc(var Message: TMessage); override;
  504.     procedure DragCanceled; override;
  505.     procedure DrawItem(Index: Integer; Rect: TRect;
  506.       State: TOwnerDrawState); virtual;
  507.     procedure MeasureItem(Index: Integer; var Height: Integer); virtual;
  508.     property BorderStyle: TBorderStyle default bsSingle;
  509.     property Columns: Integer default 0;
  510.     property ExtendedSelect: Boolean default True;
  511.     property IntegralHeight: Boolean default False;
  512.     property ItemHeight: Integer;
  513.     property MultiSelect: Boolean default False;
  514.     property ParentColor default False;
  515.     property Sorted: Boolean default False;
  516.     property Style: TListBoxStyle default lbStandard;
  517.     property TabWidth: Integer default 0;
  518.     property OnDrawItem: TDrawItemEvent;
  519.     property OnMeasureItem: TMeasureItemEvent;
  520.   public
  521.     constructor Create(AOwner: TComponent); override;
  522.     destructor Destroy; override;
  523.     procedure Clear;
  524.     function ItemAtPos(Pos: TPoint; Existing: Boolean): Integer;
  525.     function ItemRect(Index: Integer): TRect;
  526.     property Canvas: TCanvas;
  527.     property Items: TStrings;
  528.     property ItemIndex: Integer;
  529.     property SelCount: Integer;
  530.     property Selected[Index: Integer]: Boolean;
  531.     property TopIndex: Integer;
  532.   published
  533.     property TabStop default True;
  534.   end;
  535.  
  536.   TListBox = class(TCustomListBox)
  537.   published
  538.     property Align;
  539.     property BorderStyle;
  540.     property Color;
  541.     property Columns;
  542.     property Ctl3D;
  543.     property DragCursor;
  544.     property DragMode;
  545.     property Enabled;
  546.     property ExtendedSelect;
  547.     property Font;
  548.     property IntegralHeight;
  549.     property ItemHeight;
  550.     property Items;
  551.     property MultiSelect;
  552.     property ParentColor;
  553.     property ParentCtl3D;
  554.     property ParentFont;
  555.     property ParentShowHint;
  556.     property PopupMenu;
  557.     property ShowHint;
  558.     property Sorted;
  559.     property Style;
  560.     property TabOrder;
  561.     property TabStop;
  562.     property TabWidth;
  563.     property Visible;
  564.     property OnClick;
  565.     property OnDblClick;
  566.     property OnDragDrop;
  567.     property OnDragOver;
  568.     property OnDrawItem;
  569.     property OnEndDrag;
  570.     property OnEnter;
  571.     property OnExit;
  572.     property OnKeyDown;
  573.     property OnKeyPress;
  574.     property OnKeyUp;
  575.     property OnMeasureItem;
  576.     property OnMouseDown;
  577.     property OnMouseMove;
  578.     property OnMouseUp;
  579.     property OnStartDrag;
  580.   end;
  581.  
  582.   TScrollCode = (scLineUp, scLineDown, scPageUp, scPageDown, scPosition,
  583.     scTrack, scTop, scBottom, scEndScroll);
  584.  
  585.   TScrollEvent = procedure(Sender: TObject; ScrollCode: TScrollCode;
  586.     var ScrollPos: Integer) of object;
  587.  
  588.   TScrollBar = class(TWinControl)
  589.   protected
  590.     procedure CreateParams(var Params: TCreateParams); override;
  591.     procedure CreateWnd; override;
  592.     procedure Change; dynamic;
  593.     procedure Scroll(ScrollCode: TScrollCode; var ScrollPos: Integer); dynamic;
  594.   public
  595.     constructor Create(AOwner: TComponent); override;
  596.     procedure SetParams(APosition, AMin, AMax: Integer);
  597.   published
  598.     property Ctl3D;
  599.     property DragCursor;
  600.     property DragMode;
  601.     property Enabled;
  602.     property Kind: TScrollBarKind default sbHorizontal;
  603.     property LargeChange: TScrollBarInc default 1;
  604.     property Max: Integer default 100;
  605.     property Min: Integer default 0;
  606.     property ParentCtl3D;
  607.     property ParentShowHint;
  608.     property PopupMenu;
  609.     property Position: Integer default 0;
  610.     property ShowHint;
  611.     property SmallChange: TScrollBarInc default 1;
  612.     property TabOrder;
  613.     property TabStop default True;
  614.     property Visible;
  615.     property OnChange: TNotifyEvent;
  616.     property OnDragDrop;
  617.     property OnDragOver;
  618.     property OnEndDrag;
  619.     property OnEnter;
  620.     property OnExit;
  621.     property OnKeyDown;
  622.     property OnKeyPress;
  623.     property OnKeyUp;
  624.     property OnScroll: TScrollEvent;
  625.     property OnStartDrag;
  626.   end;
  627.  
  628. implementation
  629.