home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1997 May / Pcwk0597.iso / borland / cb / setup / cbuilder / data.z / STDCTRLS.INT < prev    next >
Text File  |  1997-02-28  |  19KB  |  637 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 ImeMode;
  161.     property ImeName;
  162.     property MaxLength;
  163.     property OEMConvert;
  164.     property ParentColor;
  165.     property ParentCtl3D;
  166.     property ParentFont;
  167.     property ParentShowHint;
  168.     property PasswordChar;
  169.     property PopupMenu;
  170.     property ReadOnly;
  171.     property ShowHint;
  172.     property TabOrder;
  173.     property TabStop;
  174.     property Text;
  175.     property Visible;
  176.     property OnChange;
  177.     property OnClick;
  178.     property OnDblClick;
  179.     property OnDragDrop;
  180.     property OnDragOver;
  181.     property OnEndDrag;
  182.     property OnEnter;
  183.     property OnExit;
  184.     property OnKeyDown;
  185.     property OnKeyPress;
  186.     property OnKeyUp;
  187.     property OnMouseDown;
  188.     property OnMouseMove;
  189.     property OnMouseUp;
  190.     property OnStartDrag;
  191.   end;
  192.  
  193.   TScrollStyle = (ssNone, ssHorizontal, ssVertical, ssBoth);
  194.  
  195.   TCustomMemo = class(TCustomEdit)
  196.   protected
  197.     procedure CreateParams(var Params: TCreateParams); override;
  198.     procedure CreateWindowHandle(const Params: TCreateParams); override;
  199.     procedure KeyPress(var Key: Char); override;
  200.     procedure Loaded; override;
  201.     procedure SetAlignment(Value: TAlignment);
  202.     procedure SetLines(Value: TStrings);
  203.     procedure SetScrollBars(Value: TScrollStyle);
  204.     procedure SetWordWrap(Value: Boolean);
  205.     property Alignment: TAlignment default taLeftJustify;
  206.     property ScrollBars: TScrollStyle default ssNone;
  207.     property WantReturns: Boolean default True;
  208.     property WantTabs: Boolean default False;
  209.     property WordWrap: Boolean default True;
  210.   public
  211.     constructor Create(AOwner: TComponent); override;
  212.     destructor Destroy; override;
  213.     property Lines: TStrings;
  214.   end;
  215.  
  216.   TMemo = class(TCustomMemo)
  217.   published
  218.     property Align;
  219.     property Alignment;
  220.     property BorderStyle;
  221.     property Color;
  222.     property Ctl3D;
  223.     property DragCursor;
  224.     property DragMode;
  225.     property Enabled;
  226.     property Font;
  227.     property HideSelection;
  228.     property ImeMode;
  229.     property ImeName;
  230.     property Lines;
  231.     property MaxLength;
  232.     property OEMConvert;
  233.     property ParentColor;
  234.     property ParentCtl3D;
  235.     property ParentFont;
  236.     property ParentShowHint;
  237.     property PopupMenu;
  238.     property ReadOnly;
  239.     property ScrollBars;
  240.     property ShowHint;
  241.     property TabOrder;
  242.     property TabStop;
  243.     property Visible;
  244.     property WantReturns;
  245.     property WantTabs;
  246.     property WordWrap;
  247.     property OnChange;
  248.     property OnClick;
  249.     property OnDblClick;
  250.     property OnDragDrop;
  251.     property OnDragOver;
  252.     property OnEndDrag;
  253.     property OnEnter;
  254.     property OnExit;
  255.     property OnKeyDown;
  256.     property OnKeyPress;
  257.     property OnKeyUp;
  258.     property OnMouseDown;
  259.     property OnMouseMove;
  260.     property OnMouseUp;
  261.     property OnStartDrag;
  262.   end;
  263.  
  264.   TComboBoxStyle = (csDropDown, csSimple, csDropDownList, csOwnerDrawFixed,
  265.     csOwnerDrawVariable);
  266.   TOwnerDrawState = set of (odSelected, odGrayed, odDisabled, odChecked,
  267.     odFocused);
  268.  
  269.   TDrawItemEvent = procedure(Control: TWinControl; Index: Integer;
  270.     Rect: TRect; State: TOwnerDrawState) of object;
  271.  
  272.   TMeasureItemEvent = procedure(Control: TWinControl; Index: Integer;
  273.     var Height: Integer) of object;
  274.  
  275.   TCustomComboBox = class(TWinControl)
  276.   protected
  277.     procedure ComboWndProc(var Message: TMessage; ComboWnd: HWnd;
  278.       ComboProc: Pointer); virtual;
  279.     procedure WndProc(var Message: TMessage); override;
  280.     procedure CreateParams(var Params: TCreateParams); override;
  281.     procedure CreateWnd; override;
  282.     procedure DestroyWnd; override;
  283.     procedure DrawItem(Index: Integer; Rect: TRect;
  284.       State: TOwnerDrawState); virtual;
  285.     procedure MeasureItem(Index: Integer; var Height: Integer); virtual;
  286.     procedure Change; dynamic;
  287.     procedure DropDown; dynamic;
  288.     procedure SetStyle(Value: TComboBoxStyle); virtual;
  289.     property DropDownCount: Integer default 8;
  290.     property EditHandle: HWnd;
  291.     property ItemHeight: Integer;
  292.     property ListHandle: HWnd;
  293.     property MaxLength: Integer default 0;
  294.     property ParentColor default False;
  295.     property Sorted: Boolean default False;
  296.     property Style: TComboBoxStyle default csDropDown;
  297.     property OnChange: TNotifyEvent;
  298.     property OnDropDown: TNotifyEvent;
  299.     property OnDrawItem: TDrawItemEvent;
  300.     property OnMeasureItem: TMeasureItemEvent;
  301.   public
  302.     constructor Create(AOwner: TComponent); override;
  303.     destructor Destroy; override;
  304.     procedure Clear;
  305.     procedure SelectAll;
  306.     property Canvas: TCanvas;
  307.     property DroppedDown: Boolean;
  308.     property Items: TStrings;
  309.     property ItemIndex: Integer;
  310.     property SelLength: Integer;
  311.     property SelStart: Integer;
  312.     property SelText: string;
  313.   published
  314.     property TabStop default True;
  315.   end;
  316.  
  317.   TComboBox = class(TCustomComboBox)
  318.   published
  319.     property Style; {Must be published before Items}
  320.     property Color;
  321.     property Ctl3D;
  322.     property DragMode;
  323.     property DragCursor;
  324.     property DropDownCount;
  325.     property Enabled;
  326.     property Font;
  327.     property ImeMode;
  328.     property ImeName;
  329.     property ItemHeight;
  330.     property Items;
  331.     property MaxLength;
  332.     property ParentColor;
  333.     property ParentCtl3D;
  334.     property ParentFont;
  335.     property ParentShowHint;
  336.     property PopupMenu;
  337.     property ShowHint;
  338.     property Sorted;
  339.     property TabOrder;
  340.     property TabStop;
  341.     property Text;
  342.     property Visible;
  343.     property OnChange;
  344.     property OnClick;
  345.     property OnDblClick;
  346.     property OnDragDrop;
  347.     property OnDragOver;
  348.     property OnDrawItem;
  349.     property OnDropDown;
  350.     property OnEndDrag;
  351.     property OnEnter;
  352.     property OnExit;
  353.     property OnKeyDown;
  354.     property OnKeyPress;
  355.     property OnKeyUp;
  356.     property OnMeasureItem;
  357.     property OnStartDrag;
  358.   end;
  359.  
  360.   TButtonControl = class(TWinControl)
  361.   protected
  362.     procedure WndProc(var Message: TMessage); override;
  363.   end;
  364.  
  365.   TButton = class(TButtonControl)
  366.   protected
  367.     procedure CreateParams(var Params: TCreateParams); override;
  368.     procedure CreateWnd; override;
  369.     procedure SetButtonStyle(ADefault: Boolean); virtual;
  370.   public
  371.     constructor Create(AOwner: TComponent); override;
  372.     procedure Click; override;
  373.   published
  374.     property Cancel: Boolean default False;
  375.     property Caption;
  376.     property Default: Boolean default False;
  377.     property DragCursor;
  378.     property DragMode;
  379.     property Enabled;
  380.     property Font;
  381.     property ModalResult: TModalResult default 0;
  382.     property ParentFont;
  383.     property ParentShowHint;
  384.     property PopupMenu;
  385.     property ShowHint;
  386.     property TabOrder;
  387.     property TabStop default True;
  388.     property Visible;
  389.     property OnClick;
  390.     property OnDragDrop;
  391.     property OnDragOver;
  392.     property OnEndDrag;
  393.     property OnEnter;
  394.     property OnExit;
  395.     property OnKeyDown;
  396.     property OnKeyPress;
  397.     property OnKeyUp;
  398.     property OnMouseDown;
  399.     property OnMouseMove;
  400.     property OnMouseUp;
  401.     property OnStartDrag;
  402.   end;
  403.  
  404.   TCheckBoxState = (cbUnchecked, cbChecked, cbGrayed);
  405.  
  406.   TCustomCheckBox = class(TButtonControl)
  407.   protected
  408.     procedure Toggle; virtual;
  409.     procedure CreateParams(var Params: TCreateParams); override;
  410.     procedure CreateWindowHandle(const Params: TCreateParams); override;
  411.     procedure CreateWnd; override;
  412.     property Alignment: TLeftRight default taRightJustify;
  413.     property AllowGrayed: Boolean default False;
  414.     property Checked: Boolean;
  415.     property State: TCheckBoxState default cbUnchecked;
  416.   public
  417.     constructor Create(AOwner: TComponent); override;
  418.   published
  419.     property TabStop default True;
  420.   end;
  421.  
  422.   TCheckBox = class(TCustomCheckBox)
  423.   published
  424.     property Alignment;
  425.     property AllowGrayed;
  426.     property Caption;
  427.     property Checked;
  428.     property Color;
  429.     property Ctl3D;
  430.     property DragCursor;
  431.     property DragMode;
  432.     property Enabled;
  433.     property Font;
  434.     property ParentColor;
  435.     property ParentCtl3D;
  436.     property ParentFont;
  437.     property ParentShowHint;
  438.     property PopupMenu;
  439.     property ShowHint;
  440.     property State;
  441.     property TabOrder;
  442.     property TabStop;
  443.     property Visible;
  444.     property OnClick;
  445.     property OnDragDrop;
  446.     property OnDragOver;
  447.     property OnEndDrag;
  448.     property OnEnter;
  449.     property OnExit;
  450.     property OnKeyDown;
  451.     property OnKeyPress;
  452.     property OnKeyUp;
  453.     property OnMouseDown;
  454.     property OnMouseMove;
  455.     property OnMouseUp;
  456.     property OnStartDrag;
  457.   end;
  458.  
  459.   TRadioButton = class(TButtonControl)
  460.   protected
  461.     procedure SetChecked(Value: Boolean);
  462.     procedure CreateParams(var Params: TCreateParams); override;
  463.     procedure CreateWindowHandle(const Params: TCreateParams); override;
  464.     procedure CreateWnd; override;
  465.   public
  466.     constructor Create(AOwner: TComponent); override;
  467.   published
  468.     property Alignment: TLeftRight default taRightJustify;
  469.     property Caption;
  470.     property Checked: Boolean default False;
  471.     property Color;
  472.     property Ctl3D;
  473.     property DragCursor;
  474.     property DragMode;
  475.     property Enabled;
  476.     property Font;
  477.     property ParentColor;
  478.     property ParentCtl3D;
  479.     property ParentFont;
  480.     property ParentShowHint;
  481.     property PopupMenu;
  482.     property ShowHint;
  483.     property TabOrder;
  484.     property TabStop;
  485.     property Visible;
  486.     property OnClick;
  487.     property OnDblClick;
  488.     property OnDragDrop;
  489.     property OnDragOver;
  490.     property OnEndDrag;
  491.     property OnEnter;
  492.     property OnExit;
  493.     property OnKeyDown;
  494.     property OnKeyPress;
  495.     property OnKeyUp;
  496.     property OnMouseDown;
  497.     property OnMouseMove;
  498.     property OnMouseUp;
  499.     property OnStartDrag;
  500.   end;
  501.  
  502.   TListBoxStyle = (lbStandard, lbOwnerDrawFixed, lbOwnerDrawVariable);
  503.  
  504.   TCustomListBox = class(TWinControl)
  505.   protected
  506.     procedure CreateParams(var Params: TCreateParams); override;
  507.     procedure CreateWnd; override;
  508.     procedure DestroyWnd; override;
  509.     procedure WndProc(var Message: TMessage); override;
  510.     procedure DragCanceled; override;
  511.     procedure DrawItem(Index: Integer; Rect: TRect;
  512.       State: TOwnerDrawState); virtual;
  513.     procedure MeasureItem(Index: Integer; var Height: Integer); virtual;
  514.     property BorderStyle: TBorderStyle default bsSingle;
  515.     property Columns: Integer default 0;
  516.     property ExtendedSelect: Boolean default True;
  517.     property IntegralHeight: Boolean default False;
  518.     property ItemHeight: Integer;
  519.     property MultiSelect: Boolean default False;
  520.     property ParentColor default False;
  521.     property Sorted: Boolean default False;
  522.     property Style: TListBoxStyle default lbStandard;
  523.     property TabWidth: Integer default 0;
  524.     property OnDrawItem: TDrawItemEvent;
  525.     property OnMeasureItem: TMeasureItemEvent;
  526.   public
  527.     constructor Create(AOwner: TComponent); override;
  528.     destructor Destroy; override;
  529.     procedure Clear;
  530.     function ItemAtPos(Pos: TPoint; Existing: Boolean): Integer;
  531.     function ItemRect(Index: Integer): TRect;
  532.     property Canvas: TCanvas;
  533.     property Items: TStrings;
  534.     property ItemIndex: Integer;
  535.     property SelCount: Integer;
  536.     property Selected[Index: Integer]: Boolean;
  537.     property TopIndex: Integer;
  538.   published
  539.     property TabStop default True;
  540.   end;
  541.  
  542.   TListBox = class(TCustomListBox)
  543.   published
  544.     property Align;
  545.     property BorderStyle;
  546.     property Color;
  547.     property Columns;
  548.     property Ctl3D;
  549.     property DragCursor;
  550.     property DragMode;
  551.     property Enabled;
  552.     property ExtendedSelect;
  553.     property Font;
  554.     property ImeMode;
  555.     property ImeName;
  556.     property IntegralHeight;
  557.     property ItemHeight;
  558.     property Items;
  559.     property MultiSelect;
  560.     property ParentColor;
  561.     property ParentCtl3D;
  562.     property ParentFont;
  563.     property ParentShowHint;
  564.     property PopupMenu;
  565.     property ShowHint;
  566.     property Sorted;
  567.     property Style;
  568.     property TabOrder;
  569.     property TabStop;
  570.     property TabWidth;
  571.     property Visible;
  572.     property OnClick;
  573.     property OnDblClick;
  574.     property OnDragDrop;
  575.     property OnDragOver;
  576.     property OnDrawItem;
  577.     property OnEndDrag;
  578.     property OnEnter;
  579.     property OnExit;
  580.     property OnKeyDown;
  581.     property OnKeyPress;
  582.     property OnKeyUp;
  583.     property OnMeasureItem;
  584.     property OnMouseDown;
  585.     property OnMouseMove;
  586.     property OnMouseUp;
  587.     property OnStartDrag;
  588.   end;
  589.  
  590.   TScrollCode = (scLineUp, scLineDown, scPageUp, scPageDown, scPosition,
  591.     scTrack, scTop, scBottom, scEndScroll);
  592.  
  593.   TScrollEvent = procedure(Sender: TObject; ScrollCode: TScrollCode;
  594.     var ScrollPos: Integer) of object;
  595.  
  596.   TScrollBar = class(TWinControl)
  597.   protected
  598.     procedure CreateParams(var Params: TCreateParams); override;
  599.     procedure CreateWnd; override;
  600.     procedure Change; dynamic;
  601.     procedure Scroll(ScrollCode: TScrollCode; var ScrollPos: Integer); dynamic;
  602.   public
  603.     constructor Create(AOwner: TComponent); override;
  604.     procedure SetParams(APosition, AMin, AMax: Integer);
  605.   published
  606.     property Ctl3D;
  607.     property DragCursor;
  608.     property DragMode;
  609.     property Enabled;
  610.     property Kind: TScrollBarKind default sbHorizontal;
  611.     property LargeChange: TScrollBarInc default 1;
  612.     property Max: Integer default 100;
  613.     property Min: Integer default 0;
  614.     property ParentCtl3D;
  615.     property ParentShowHint;
  616.     property PopupMenu;
  617.     property Position: Integer default 0;
  618.     property ShowHint;
  619.     property SmallChange: TScrollBarInc default 1;
  620.     property TabOrder;
  621.     property TabStop default True;
  622.     property Visible;
  623.     property OnChange: TNotifyEvent;
  624.     property OnDragDrop;
  625.     property OnDragOver;
  626.     property OnEndDrag;
  627.     property OnEnter;
  628.     property OnExit;
  629.     property OnKeyDown;
  630.     property OnKeyPress;
  631.     property OnKeyUp;
  632.     property OnScroll: TScrollEvent;
  633.     property OnStartDrag;
  634.   end;
  635.  
  636. implementation
  637.