Streaming additions by MAttias

Shane

git-svn-id: trunk@114 -
This commit is contained in:
lazarus 2001-01-12 18:27:32 +00:00
parent feb921f5b1
commit 6d9153fbf6
3 changed files with 46 additions and 12 deletions

View File

@ -62,17 +62,17 @@ type
protected
procedure AttachSignals; override;
procedure ReadState(Reader: TAbstractReader); override;
procedure Paint;
procedure Paint; override;
public
procedure AddControl; override;
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
published
property Caption;
property Height;
//property Height;
// property TabOrder; This property needs to be created in TWinControl
property Visible;
property Width;
//property Width;
end;
TCustomNotebook = class;
@ -96,6 +96,8 @@ type
procedure Clear; override;
procedure Delete(Index: Integer); override;
procedure Insert(Index: Integer; const S: String); override;
procedure InsertPage(Index:integer; APage: TPage);
procedure Move(CurIndex, NewIndex: Integer); override;
end;
@ -130,9 +132,9 @@ type
procedure CreateWnd; override;
procedure Change; virtual;
function GetChildOwner: TComponent; override;
procedure GetChildren(Proc: TGetChildProc; Root: TComponent); // Add "override;" if implemented in TCustomControl
procedure GetChildren(Proc: TGetChildProc; Root: TComponent); override;
procedure ReadState(Reader: TAbstractReader); override;
procedure ShowControl(AControl: TControl); // Add "override;" if implemented in TCustomControl
procedure ShowControl(AControl: TControl); override;
property ActivePage: String read GetActivePage write SetActivePage;
property PageIndex: Integer read GetPageIndex write SetPageIndex default 0;
@ -160,10 +162,10 @@ type
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
property Page;
property Pages;
published
property ActivePage;
property PageIndex;
property Pages;
property PageList;
property OnPageChanged;
end;
@ -324,6 +326,10 @@ end.
{
$Log$
Revision 1.7 2001/01/12 18:27:31 lazarus
Streaming additions by MAttias
Shane
Revision 1.6 2001/01/09 21:06:06 lazarus
Started taking KeyDown messages in TDesigner
Shane

View File

@ -45,6 +45,8 @@ var
Msg: TLMNotebookEvent;
begin
TPage(fPageList[Index]).Caption := S;
TPage(fPageList[Index]).Name := S;
if FNoteBook.HandleAllocated
then begin
@ -114,16 +116,28 @@ begin
tmpPage := TPage.Create(fNotebook);
with tmpPage do
begin
Name := S;
Parent := fNotebook;
Caption := S;
Visible := true;
end;
fPageList.Insert(Index, tmpPage);
InsertPage(Index,tmpPage);
end;
{------------------------------------------------------------------------------
TNBPages InsertPage
------------------------------------------------------------------------------}
procedure TNBPages.InsertPage(Index:integer; APage: TPage);
var
Msg: TLMNotebookEvent;
begin
fPageList.Insert(Index,APage);
if FNoteBook.HandleAllocated
then begin
Msg.Parent := TControl(fNotebook);
Msg.Child := tmpPage;
Msg.Child := APage;
Msg.fCompStyle := fNotebook.fCompStyle;
Msg.Page := Index;
@ -196,6 +210,8 @@ begin
Assert(False, 'Trace:[TCustomNotebook.CreateWnd] add pages');
for n := 0 to FPageList.Count -1 do
begin
// this is workaround til visible=true is default in TControl
TControl(FPageList[n]).Visible:=true;
Msg.Parent := Self;
Msg.Child := TControl(FPageList[n]);
Msg.fCompStyle := FCompStyle;
@ -362,9 +378,6 @@ procedure TCustomNotebook.GetChildren(Proc: TGetChildProc; Root: TComponent);
var
i: LongInt;
begin
{ Need to find out what the purpose of the Root param is in Delphi and add
that to the functionality. May either be the parent component to start with
or it may be the type of component to return (all TButtons). }
for i := 0 to fPageList.Count - 1 do
begin
Proc(TControl(fPageList[i]));
@ -376,6 +389,7 @@ end;
------------------------------------------------------------------------------}
procedure TCustomNotebook.ReadState(Reader: TAbstractReader);
begin
fAccess.Clear;
inherited ReadState(Reader);
end;
@ -429,6 +443,10 @@ end;
{ =============================================================================
$Log$
Revision 1.3 2001/01/12 18:27:32 lazarus
Streaming additions by MAttias
Shane
Revision 1.2 2001/01/04 20:33:53 lazarus
Moved lresources.
Moved CreateLFM to Main.pp

View File

@ -50,6 +50,12 @@ end;
procedure TPage.ReadState(Reader: TAbstractReader);
begin
inherited ReadState(Reader);
if Reader.Parent is TNoteBook then begin
with TNBPages(TNoteBook(Reader.Parent).fAccess) do
InsertPage(Count,Self);
end;
end;
{------------------------------------------------------------------------------
@ -70,6 +76,10 @@ end;
{
$Log$
Revision 1.2 2001/01/12 18:27:32 lazarus
Streaming additions by MAttias
Shane
Revision 1.1 2000/07/13 10:28:27 michael
+ Initial import