source: branches/pre_reorg/Components/IconImageUnit.PAS

Last change on this file was 15, checked in by RBRi, 19 years ago

+ components stuff

  • Property svn:eol-style set to native
File size: 1.2 KB
Line 
1Unit IconImageUnit;
2
3Interface
4
5Uses
6 Classes, Forms, Graphics;
7
8{Declare new class}
9Type
10 TIconImage=Class(TControl)
11 Protected
12 FIcon: TIcon;
13 Procedure SetupComponent; Override;
14 Procedure SetIcon( NewIcon: TIcon );
15 Procedure Redraw( const rec: TRect ); Override;
16 Public
17 Destructor Destroy; Override;
18 Published
19 property Icon: TIcon read FIcon write SetIcon;
20 End;
21
22{Define components to export}
23{You may define a page of the component palette and a component bitmap file}
24Exports
25 TIconImage,'User','';
26
27Implementation
28
29Uses
30 PmWin;
31
32Procedure TIconImage.SetupComponent;
33Begin
34 Inherited SetupComponent;
35 FIcon := TIcon.Create;
36 Width := 32;
37 Height := 32;
38 Name := 'IconImage';
39 ParentColor := True;
40 Exclude( ComponentState, csAcceptsControls );
41End;
42
43Destructor TIconImage.Destroy;
44Begin
45 Inherited Destroy;
46 FIcon.Destroy;
47End;
48
49Procedure TIconImage.SetIcon( NewIcon: TIcon );
50Begin
51 FIcon.Assign( NewIcon );
52 Width := FIcon.Width;
53 Height := FIcon.Height;
54End;
55
56Procedure TIconImage.Redraw( const rec: TRect );
57Begin
58 Canvas.ClipRect := rec;
59 // clear background rectangle
60 Canvas.FillRect( rec, Color );
61
62 Canvas.Draw( 0, 0, FIcon );
63End;
64
65Initialization
66 {Register classes}
67 RegisterClasses([TIconImage]);
68End.
69
Note: See TracBrowser for help on using the repository browser.