OSDN Git Service

ブラウザのページUp/Downアクションの追加
[gikonavigoeson/gikonavi.git] / Component / GikoListView.pas
1 unit GikoListView;
2
3 interface
4
5 uses
6         Windows, Messages, SysUtils, Classes, Controls, ComCtrls, CommCtrl;
7
8 type
9         TColumnInfoEvent = procedure(Sender: TObject; var Column: PLVColumn) of object;
10
11         TGikoListView = class(TListView)
12         private
13                 { Private \90é\8c¾ }
14                 FColumnInfoEvent: TColumnInfoEvent;
15                 procedure LVMSetColumn(var Message: TMessage); message LVM_SETCOLUMN;
16                 procedure LVMInsertColumn(var Message: TMessage); message LVM_INSERTCOLUMN;
17         protected
18                 { Protected \90é\8c¾ }
19         public
20                 { Public \90é\8c¾ }
21         published
22                 { Published \90é\8c¾ }
23                 property OnColumnInfo: TColumnInfoEvent read FColumnInfoEvent write FColumnInfoEvent;
24         end;
25
26 procedure Register;
27
28 implementation
29
30 procedure Register;
31 begin
32         RegisterComponents('gikoNavi', [TGikoListView]);
33 end;
34
35
36 procedure TGikoListView.LVMSetColumn(var Message: TMessage);
37 begin
38         if Assigned(FColumnInfoEvent) then
39                 FColumnInfoEvent(Self, PLVColumn(Message.LParam));
40         inherited;
41 end;
42
43 procedure TGikoListView.LVMInsertColumn(var Message: TMessage);
44 begin
45         if Assigned(FColumnInfoEvent) then
46                 FColumnInfoEvent(Self, PLVColumn(Message.LParam));
47         inherited;
48 end;
49
50 end.