Code cleanup and JITFOrms bug fix.

Shane

git-svn-id: trunk@168 -
This commit is contained in:
lazarus 2001-02-04 04:18:12 +00:00
parent e07823a099
commit 6ecb60e9b4
11 changed files with 116 additions and 132 deletions

View File

@ -97,9 +97,6 @@ var
GridPoints : TGridPoint; GridPoints : TGridPoint;
constructor TDesigner.Create(CustomForm : TCustomForm); constructor TDesigner.Create(CustomForm : TCustomForm);
var
nmUnit : String;
I : Integer;
begin begin
inherited Create; inherited Create;
FCustomForm := CustomForm; FCustomForm := CustomForm;
@ -160,8 +157,6 @@ end;
procedure TDesigner.MouseDownOnControl(Sender : TControl; Message : TLMessage); procedure TDesigner.MouseDownOnControl(Sender : TControl; Message : TLMessage);
var
SHift : TShiftState;
Begin Begin
// if assigned(MouseDownControl) and (MOuseDownControl <> Sender) then Exit; // if assigned(MouseDownControl) and (MOuseDownControl <> Sender) then Exit;
Writeln('Left is '+Inttostr(TCOntrol(Sender).left)); Writeln('Left is '+Inttostr(TCOntrol(Sender).left));
@ -189,7 +184,6 @@ Begin
LastMouseMovePos:=MouseDownPos; LastMouseMovePos:=MouseDownPos;
end; end;
Shift := [];
if (TLMMouse(Message).keys and MK_Shift) = MK_Shift then if (TLMMouse(Message).keys and MK_Shift) = MK_Shift then
Writeln('Shift down') Writeln('Shift down')
else else
@ -223,7 +217,6 @@ var
CaptureGrabber:TGrabber; CaptureGrabber:TGrabber;
Button : TMouseButton; Button : TMouseButton;
Shift : TShiftState; Shift : TShiftState;
X,Y : Integer;
Begin Begin
@ -245,27 +238,12 @@ Begin
shift := shift +[ssCTRL]; shift := shift +[ssCTRL];
X := TLMMOuse(Message).pos.X;
Y := TLMMOuse(Message).pos.Y;
CaptureGrabber:=GetCaptureGrabber; CaptureGrabber:=GetCaptureGrabber;
if CaptureGrabber<>nil then begin if CaptureGrabber<>nil then begin
CaptureGrabber.CaptureMouseUp(TControl(Sender),Button,Shift,TLMMouse(Message).pos.X,TLMMouse(Message).pos.Y); CaptureGrabber.CaptureMouseUp(TControl(Sender),Button,Shift,TLMMouse(Message).pos.X,TLMMouse(Message).pos.Y);
exit; exit;
end; end;
{ if ((not (Sender is TCustomForm))
or (( X < TControl(sender).left) or ( X > (TControl(sender).left+TControl(sender).Width)))
or (( Y < TControl(sender).Top) or ( Y > (TControl(sender).Top+TControl(sender).Height)))) then begin
inc(X,TControl(Sender).Left);
inc(Y,TControl(Sender).Top);
end;
}
// ControlSelection.MoveSelection(X-LastMouseMovePos.X, Y-LastMouseMovePos.Y);
//do something like ControlSelection.Sizecontent but move x and y from where
// the grabber started to where it finished.
// ControlSelection.MoveContent(X-MouseDownPos.X,Y-MouseDownPos.Y);
MouseUpPos.X := TLMMouse(Message).pos.X; MouseUpPos.X := TLMMouse(Message).pos.X;
MouseUpPos.Y := TLMMouse(Message).pos.Y; MouseUpPos.Y := TLMMouse(Message).pos.Y;
if not (Sender is TCustomForm) then begin if not (Sender is TCustomForm) then begin
@ -275,8 +253,7 @@ Begin
if FMainIDE.SelectedComponent = nil then if FMainIDE.SelectedComponent = nil then
Begin //mouse pointer button pressed. Begin //mouse pointer button pressed.
{ if Sender is TCustomForm then
SelectOnlyThisComponent(TComponent(Sender));}
end end
else else
Begin //add a new control Begin //add a new control
@ -330,7 +307,6 @@ const
mk_mbutton = $10; mk_mbutton = $10;
var var
CaptureGrabber : TGrabber; CaptureGrabber : TGrabber;
Button : TMouseButton;
Shift : TShiftState; Shift : TShiftState;
X,Y : Integer; X,Y : Integer;
Begin Begin
@ -351,11 +327,6 @@ Begin
end; end;
if Assigned(MouseDownControl) then Writeln('MouseDownControl is '+TCOntrol(MouseDownControl).Name); if Assigned(MouseDownControl) then Writeln('MouseDownControl is '+TCOntrol(MouseDownControl).Name);
if (TLMMouse(Message).keys and MK_LButton) = MK_LButton then
Button := mbLEft
else
if (TLMMouse(Message).keys and MK_LButton) = MK_RButton then
Button := mbRight;
Shift := []; Shift := [];
if (TLMMouse(Message).keys and MK_Shift) = MK_Shift then if (TLMMouse(Message).keys and MK_Shift) = MK_Shift then
shift := [ssShift]; shift := [ssShift];
@ -475,8 +446,6 @@ end;
{-----------------------------------------K E Y U P --------------------------------} {-----------------------------------------K E Y U P --------------------------------}
Procedure TDesigner.KeyUp(Sender : TControl; Message:TLMKEY); Procedure TDesigner.KeyUp(Sender : TControl; Message:TLMKEY);
var
I : Integer;
Begin Begin
Writeln('KEYUp'); Writeln('KEYUp');
with MEssage do with MEssage do
@ -586,7 +555,7 @@ end;
function TDesigner.GetIsControl: Boolean; function TDesigner.GetIsControl: Boolean;
Begin Begin
Result := True;
end; end;
procedure TDesigner.SetIsControl(Value: Boolean); procedure TDesigner.SetIsControl(Value: Boolean);

View File

@ -186,6 +186,7 @@ begin
repeat repeat
FormName:='Form'+IntToStr(a); FormName:='Form'+IntToStr(a);
FormClassName:='TForm'+IntToStr(a); FormClassName:='TForm'+IntToStr(a);
inc(a);
until (FindFormByName(FormName)<0) and (FindFormByClassName(FormClassName)<0); until (FindFormByName(FormName)<0) and (FindFormByClassName(FormClassName)<0);
end; end;
@ -204,7 +205,10 @@ writeln('[TJITForms.DoCreateJITForm] Initializing new instance ...');
TComponent(FCurReadForm):=Instance; TComponent(FCurReadForm):=Instance;
try try
Instance.Create(Application); Instance.Create(Application);
Writeln('----------------------------------');
Writeln('New form name is '+NewFormName); Writeln('New form name is '+NewFormName);
Writeln('----------------------------------');
Writeln('----------------------------------');
if NewFormName<>'' then if NewFormName<>'' then
Instance.Name:=NewFormName; Instance.Name:=NewFormName;
DoRenameClass(FCurReadClass,NewClassName); DoRenameClass(FCurReadClass,NewClassName);
@ -220,7 +224,9 @@ end;
function TJITForms.AddNewJITForm:integer; function TJITForms.AddNewJITForm:integer;
var NewFormName,NewClassName:shortstring; var NewFormName,NewClassName:shortstring;
begin begin
Writeln('[TJITForms] AddNewJITForm');
GetUnusedNames(NewFormName,NewClassName); GetUnusedNames(NewFormName,NewClassName);
Writeln('Newformname is '+NewFormname);
Result:=DoCreateJITForm(NewFormName,NewClassName); Result:=DoCreateJITForm(NewFormName,NewClassName);
end; end;

View File

@ -521,9 +521,11 @@ end;
procedure TCompilerOptions.SaveTheCompilerOptions; procedure TCompilerOptions.SaveTheCompilerOptions;
begin begin
{ Save the compiler options to the XML file } { Save the compiler options to the XML file }
Writeln('SaveTHECompilerOptions');
{ Parsing } { Parsing }
Writeln('First one');
XMLConfigFile.SetValue('CompilerOptions/Parsing/Style/Value', Style); XMLConfigFile.SetValue('CompilerOptions/Parsing/Style/Value', Style);
Writeln('After FIRST one');
XMLConfigFile.SetValue('CompilerOptions/Parsing/SymantecChecking/D2Extensions/Value', D2Extensions); XMLConfigFile.SetValue('CompilerOptions/Parsing/SymantecChecking/D2Extensions/Value', D2Extensions);
XMLConfigFile.SetValue('CompilerOptions/Parsing/SymantecChecking/CStyleOperator/Value', CStyleOperators); XMLConfigFile.SetValue('CompilerOptions/Parsing/SymantecChecking/CStyleOperator/Value', CStyleOperators);
XMLConfigFile.SetValue('CompilerOptions/Parsing/SymantecChecking/AllowLabel/Value', AllowLabel); XMLConfigFile.SetValue('CompilerOptions/Parsing/SymantecChecking/AllowLabel/Value', AllowLabel);
@ -535,7 +537,7 @@ begin
XMLConfigFile.SetValue('CompilerOptions/Parsing/SymantecChecking/DelphiCompat/Value', DelphiCompat); XMLConfigFile.SetValue('CompilerOptions/Parsing/SymantecChecking/DelphiCompat/Value', DelphiCompat);
XMLConfigFile.SetValue('CompilerOptions/Parsing/SymantecChecking/UseAnsiStrings/Value', UseAnsiStrings); XMLConfigFile.SetValue('CompilerOptions/Parsing/SymantecChecking/UseAnsiStrings/Value', UseAnsiStrings);
XMLConfigFile.SetValue('CompilerOptions/Parsing/SymantecChecking/GPCCompat/Value', GPCCompat); XMLConfigFile.SetValue('CompilerOptions/Parsing/SymantecChecking/GPCCompat/Value', GPCCompat);
Writeln('1');
{ CodeGeneration } { CodeGeneration }
XMLConfigFile.SetValue('CompilerOptions/CodeGeneration/UnitStyle/Value', UnitStyle); XMLConfigFile.SetValue('CompilerOptions/CodeGeneration/UnitStyle/Value', UnitStyle);
XMLConfigFile.SetValue('CompilerOptions/CodeGeneration/Checks/IOChecks/Value', IOChecks); XMLConfigFile.SetValue('CompilerOptions/CodeGeneration/Checks/IOChecks/Value', IOChecks);
@ -549,6 +551,7 @@ begin
XMLConfigFile.SetValue('CompilerOptions/CodeGeneration/Optimizations/UncertainOptimizations/Value', UncertainOptimizations); XMLConfigFile.SetValue('CompilerOptions/CodeGeneration/Optimizations/UncertainOptimizations/Value', UncertainOptimizations);
XMLConfigFile.SetValue('CompilerOptions/CodeGeneration/Optimizations/OptimizationLevel/Value', OptimizationLevel); XMLConfigFile.SetValue('CompilerOptions/CodeGeneration/Optimizations/OptimizationLevel/Value', OptimizationLevel);
Writeln('2');
{ Linking } { Linking }
XMLConfigFile.SetValue('CompilerOptions/Linking/Debugging/GenerateDebugInfo/Value', GenerateDebugInfo); XMLConfigFile.SetValue('CompilerOptions/Linking/Debugging/GenerateDebugInfo/Value', GenerateDebugInfo);
XMLConfigFile.SetValue('CompilerOptions/Linking/Debugging/GenerateDebugDBX/Value', GenerateDebugDBX); XMLConfigFile.SetValue('CompilerOptions/Linking/Debugging/GenerateDebugDBX/Value', GenerateDebugDBX);
@ -558,6 +561,7 @@ begin
XMLConfigFile.SetValue('CompilerOptions/Linking/Options/PassLinkerOptions/Value', PassLinkerOptions); XMLConfigFile.SetValue('CompilerOptions/Linking/Options/PassLinkerOptions/Value', PassLinkerOptions);
XMLConfigFile.SetValue('CompilerOptions/Linking/Options/LinkerOptions/Value', LinkerOptions); XMLConfigFile.SetValue('CompilerOptions/Linking/Options/LinkerOptions/Value', LinkerOptions);
Writeln('3');
{ Other } { Other }
XMLConfigFile.SetValue('CompilerOptions/Other/Verbosity/ShowErrors/Value', ShowErrors); XMLConfigFile.SetValue('CompilerOptions/Other/Verbosity/ShowErrors/Value', ShowErrors);
XMLConfigFile.SetValue('CompilerOptions/Other/Verbosity/ShowWarn/Value', ShowWarn); XMLConfigFile.SetValue('CompilerOptions/Other/Verbosity/ShowWarn/Value', ShowWarn);
@ -578,13 +582,15 @@ begin
XMLConfigFile.SetValue('CompilerOptions/Other/ConfigFile/AdditionalConfigFile/Value', AdditionalConfigFile); XMLConfigFile.SetValue('CompilerOptions/Other/ConfigFile/AdditionalConfigFile/Value', AdditionalConfigFile);
XMLConfigFile.SetValue('CompilerOptions/Other/ConfigFile/ConfigFilePath/Value', ConfigFilePath); XMLConfigFile.SetValue('CompilerOptions/Other/ConfigFile/ConfigFilePath/Value', ConfigFilePath);
Writeln('4');
{ SearchPaths } { SearchPaths }
XMLConfigFile.SetValue('CompilerOptions/SearchPaths/IncludeFiles/Value', IncludeFiles); XMLConfigFile.SetValue('CompilerOptions/SearchPaths/IncludeFiles/Value', IncludeFiles);
XMLConfigFile.SetValue('CompilerOptions/SearchPaths/Libraries/Value', Libraries); XMLConfigFile.SetValue('CompilerOptions/SearchPaths/Libraries/Value', Libraries);
XMLConfigFile.SetValue('CompilerOptions/SearchPaths/OtherUnitFiles/Value', OtherUnitFiles); XMLConfigFile.SetValue('CompilerOptions/SearchPaths/OtherUnitFiles/Value', OtherUnitFiles);
XMLConfigFile.SetValue('CompilerOptions/SearchPaths/CompilerPath/Value', CompilerPath); XMLConfigFile.SetValue('CompilerOptions/SearchPaths/CompilerPath/Value', CompilerPath);
Writeln('5');
XMLConfigFile.Flush; XMLConfigFile.Flush;
Writeln('6');
end; end;
{------------------------------------------------------------------------------} {------------------------------------------------------------------------------}
@ -902,6 +908,8 @@ begin
//Result := '-viwnh -n -Sgic -Fu' + OtherUnitFiles + ' -Fl' + Libraries; //Result := '-viwnh -n -Sgic -Fu' + OtherUnitFiles + ' -Fl' + Libraries;
fOptionsString := switches; fOptionsString := switches;
Writeln('Still in CompilerOptions');
Writeln('fOptionsString = '+fOptionsString);
Result := fOptionsString; Result := fOptionsString;
end; end;
@ -1004,8 +1012,8 @@ begin
Width := 379; Width := 379;
Caption := 'Compiler Options'; Caption := 'Compiler Options';
OnShow := @CreateForm; OnShow := @CreateForm;
MainIDE.Project.CompilerOptions.LoadCompilerOptions(true); // MainIDE.Project.CompilerOptions.LoadCompilerOptions(true);
//CompilerOpts.LoadCompilerOptions(true); CompilerOpts.LoadCompilerOptions(true);
nbMain := TNotebook.Create(Self); nbMain := TNotebook.Create(Self);
nbMain.Parent := Self; nbMain.Parent := Self;
@ -1079,8 +1087,10 @@ begin
{ Save the options and hide the dialog } { Save the options and hide the dialog }
PutCompilerOptions; PutCompilerOptions;
MainIDE.Project.CompilerOptions.SaveCompilerOptions(true); Writeln('Calling Mainide.project.compiler...');
//CompilerOpts.SaveCompilerOptions(true); // MainIDE.Project.CompilerOptions.SaveCompilerOptions(true);
CompilerOpts.SaveCompilerOptions(true);
Writeln('Called');
Hide; Hide;
end; end;
@ -1104,8 +1114,8 @@ begin
Assert(False, 'Trace:Apply compiler options changes'); Assert(False, 'Trace:Apply compiler options changes');
PutCompilerOptions; PutCompilerOptions;
MainIDE.Project.CompilerOptions.SaveCompilerOptions(true); // MainIDE.Project.CompilerOptions.SaveCompilerOptions(true);
//CompilerOpts.SaveCompilerOptions(true); CompilerOpts.SaveCompilerOptions(true);
end; end;
{------------------------------------------------------------------------------} {------------------------------------------------------------------------------}

View File

@ -492,7 +492,7 @@ end;
Function TComponentInterface.Focus : Boolean; Function TComponentInterface.Focus : Boolean;
Begin Begin
// XXX Todo: // XXX Todo:
if (FCOntrol is TWinControl) {and (TWinControl(FControl).CanFocus)} then if (FCOntrol is TWinControl) and (TWinControl(FControl).CanFocus) then
TWinControl(FControl).SetFocus; TWinControl(FControl).SetFocus;
end; end;
@ -608,21 +608,19 @@ Var
Begin Begin
writeln('[TCustomFormEditor.CreateComponent] Class='''+TypeClass.ClassName+''''); writeln('[TCustomFormEditor.CreateComponent] Class='''+TypeClass.ClassName+'''');
Temp := TComponentInterface.Create; Temp := TComponentInterface.Create;
Writeln('TComponentInterface created......'); if Assigned(ParentCI) then
if Assigned(ParentCI) then begin begin
if Assigned(TComponentInterface(ParentCI).FControl.Owner) then if Assigned(TComponentInterface(ParentCI).FControl.Owner) then
Temp.FControl := Temp.FControl := TypeClass.Create(TComponentInterface(ParentCI).FControl.Owner)
TypeClass.Create(TComponentInterface(ParentCI).FControl.Owner) else
Temp.FControl := TypeClass.Create(TComponentInterface(ParentCI).FControl)
end
else else
Temp.FControl :=
TypeClass.Create(TComponentInterface(ParentCI).FControl)
end else
Begin Begin
//this should be a form //this should be a form
NewFormIndex := JITFormList.AddNewJITForm; NewFormIndex := JITFormList.AddNewJITForm;
if NewFormIndex >= 0 then if NewFormIndex >= 0 then
Temp.FControl := JITFormList[NewFormIndex]; Temp.FControl := JITFormList[NewFormIndex];
// Temp.FControl := TypeClass.Create(nil);
end; end;
if Assigned(ParentCI) then if Assigned(ParentCI) then
@ -682,6 +680,9 @@ Begin
if CompTop<0 then if CompTop<0 then
CompTop:=(TControl(Temp.FControl).Parent.Height+ CompHeight) div 2; CompTop:=(TControl(Temp.FControl).Parent.Height+ CompHeight) div 2;
TControl(Temp.FControl).SetBounds(CompLeft,CompTop,CompWidth,CompHeight); TControl(Temp.FControl).SetBounds(CompLeft,CompTop,CompWidth,CompHeight);
TControl(temp.FControl).Hint := TControl(Temp.FControl).Name;
end; end;
FComponentInterfaceList.Add(Temp); FComponentInterfaceList.Add(Temp);

View File

@ -243,16 +243,11 @@ constructor TMainIDE.Create(AOwner: TComponent);
end; end;
var var
Filename : String;
S : TStream;
i,x : Integer; i,x : Integer;
R : TRect;
IDEControl : pointer;
PageCount : Integer; PageCount : Integer;
RegComp : TRegisteredComponent; RegComp : TRegisteredComponent;
RegCompPage : TRegisteredComponentPage; RegCompPage : TRegisteredComponentPage;
IDeComponent : TIdeComponent; IDeComponent : TIdeComponent;
MenuItem : TmenuItem;
begin begin
inherited Create(AOwner); inherited Create(AOwner);
@ -748,9 +743,6 @@ End;
{------------------------------------------------------------------------------} {------------------------------------------------------------------------------}
procedure TMainIDE.LoadMainMenu; procedure TMainIDE.LoadMainMenu;
var
fContext : Integer;
R : TRect;
begin begin
//-------------- //--------------
@ -997,14 +989,11 @@ end;
procedure TMainIDE.LoadResourceFromFile(Value : String); procedure TMainIDE.LoadResourceFromFile(Value : String);
Var Var
Texts : String; Texts : String;
Temps : String;
Classnm : String; //like 'TMainIDE' Classnm : String; //like 'TMainIDE'
Datatype : String; //like 'FORMDATA' Datatype : String; //like 'FORMDATA'
TextFile : TStringList; TextFile : TStringList;
ResourceData : String; ResourceData : String;
I,A : Integer; I : Integer;
Instance : TComponent;
CompResource : TLResource;
Begin Begin
textFile := TStringList.Create; textFile := TStringList.Create;
TextFile.LoadFromFile(Value); TextFile.LoadFromFile(Value);
@ -1083,7 +1072,7 @@ end;
Function TMainIDE.SearchPaths : String; Function TMainIDE.SearchPaths : String;
Begin Begin
Result := CompilerOpts.OtherUnitFiles; Result := Project.CompilerOptions.OtherUnitFiles;
End; End;
{ {
@ -1096,7 +1085,6 @@ End;
Procedure TMainIDE.ControlClick(Sender : TObject); Procedure TMainIDE.ControlClick(Sender : TObject);
var var
Page : Integer;
I : Integer; I : Integer;
IDECOmp : TIDEComponent; IDECOmp : TIDEComponent;
Speedbutton : TSpeedbutton; Speedbutton : TSpeedbutton;
@ -1209,10 +1197,6 @@ end;
{------------------------------------------------------------------------------} {------------------------------------------------------------------------------}
procedure TMainIDE.mnuNewFormClicked(Sender : TObject); procedure TMainIDE.mnuNewFormClicked(Sender : TObject);
var var
I,N: Integer;
TempName : String;
TempFormName : String;
Found : Boolean;
TempForm : TCustomForm; TempForm : TCustomForm;
CInterface : TComponentInterface; CInterface : TComponentInterface;
begin begin
@ -1369,8 +1353,6 @@ Begin
end; end;
Procedure TMainIDE.FileSavedEvent(Sender : TObject; Filename : String); Procedure TMainIDE.FileSavedEvent(Sender : TObject; Filename : String);
var
MenuItem : TMenuItem;
Begin Begin
//sender is the TSourceEditor //sender is the TSourceEditor
writeln('FILESAVEDEVENT'); writeln('FILESAVEDEVENT');
@ -1578,7 +1560,6 @@ end;
Procedure TMainIDE.mnuRunProjectClicked(Sender : TObject); Procedure TMainIDE.mnuRunProjectClicked(Sender : TObject);
var var
Filename : String;
TheProcess : TProcess; TheProcess : TProcess;
TheProgram : String; TheProgram : String;
begin begin
@ -1642,6 +1623,10 @@ end.
{ ============================================================================= { =============================================================================
$Log$ $Log$
Revision 1.56 2001/02/04 04:18:11 lazarus
Code cleanup and JITFOrms bug fix.
Shane
Revision 1.55 2001/02/02 14:23:37 lazarus Revision 1.55 2001/02/02 14:23:37 lazarus
Start of code completion code. Start of code completion code.
Shane Shane

View File

@ -70,21 +70,12 @@ type
//if this is a Form or Datamodule, this is used //if this is a Form or Datamodule, this is used
FControl: TComponent; FControl: TComponent;
//pulled out of the editor by the Function FEditor.CaretX
FCurrentCursorXLine : Integer;
//pulled out of the editor by the Function FEditor.CaretY
FCurrentCursorYLine : Integer;
//Set during OPEN and Save //Set during OPEN and Save
FFileName : String; FFileName : String;
// Used GetModified like this -> Result := FEditor.Modified // Used GetModified like this -> Result := FEditor.Modified
FModified : Boolean; FModified : Boolean;
// Used GetReadolny like this -> Result := FEditor.Readonly
FReadOnly : Boolean;
//created during the constructor. This is the popup you see when right-clicking on the editor //created during the constructor. This is the popup you see when right-clicking on the editor
FPopUpMenu : TPopupMenu; FPopUpMenu : TPopupMenu;
@ -153,6 +144,7 @@ type
property Editor : TmwCustomEdit read FEditor; property Editor : TmwCustomEdit read FEditor;
property Visible : Boolean read FVisible write FVisible default False; property Visible : Boolean read FVisible write FVisible default False;
FindText : String; FindText : String;
ccSelection : String;
public public
constructor Create(AOwner : TComponent; AParent : TWinControl); constructor Create(AOwner : TComponent; AParent : TWinControl);
destructor Destroy; override; destructor Destroy; override;
@ -193,7 +185,6 @@ type
private private
Notebook1 : TNotebook; Notebook1 : TNotebook;
StatusBar : TStatusBar; StatusBar : TStatusBar;
FEmpty : Boolean;
FFormEditor : TFormEditor; FFormEditor : TFormEditor;
FSourceEditorList : TList; FSourceEditorList : TList;
FSaveDialog : TSaveDialog; FSaveDialog : TSaveDialog;
@ -464,12 +455,6 @@ var
Texts : String; Texts : String;
EditorLine : String; EditorLine : String;
X : Integer; X : Integer;
Found : Boolean;
SearchDir : String;
AppDIr : String;
TempDir : String;
Num : Integer;
Begin Begin
//get the text by the cursor. //get the text by the cursor.
EditorLine := FEditor.Lines.Strings[GetCurrentCursorYLine-1]; EditorLine := FEditor.Lines.Strings[GetCurrentCursorYLine-1];
@ -637,7 +622,6 @@ End;
Function TSourceEditor.FindAgain(StartX,StartLine : Integer) : Boolean; Function TSourceEditor.FindAgain(StartX,StartLine : Integer) : Boolean;
var var
I,X : Integer; I,X : Integer;
Texts : String;
TempLine : String; TempLine : String;
P : TPoint; P : TPoint;
Begin Begin
@ -703,10 +687,7 @@ End;
Procedure TSourceEditor.ReadOnlyClicked(Sender : TObject); Procedure TSourceEditor.ReadOnlyClicked(Sender : TObject);
var
MenuItem : TMenuItem;
Begin Begin
MenuItem := TMenuItem(sender);
FEditor.ReadOnly := not(FEditor.ReadOnly); FEditor.ReadOnly := not(FEditor.ReadOnly);
//set the statusbar text; //set the statusbar text;
end; end;
@ -731,8 +712,6 @@ Procedure TSourceEditor.ProcessUserCommand(Sender: TObject; var Command: TSynEdi
var var
Y,I : Integer; Y,I : Integer;
Texts,Texts2,TheName : String; Texts,Texts2,TheName : String;
Continue : Boolean;
Found : Boolean;
Begin Begin
Writeln('[ProcessUserCommand] --------------'); Writeln('[ProcessUserCommand] --------------');
if Command >= ecFirstParent then if Command >= ecFirstParent then
@ -854,7 +833,8 @@ if S1 = 'property' then Value := S2
else else
if S1 = 'procedure' then Value := S2+'('; if S1 = 'procedure' then Value := S2+'(';
Value := Feditor.SelText + Value; Value := ccSelection + Value;
ccSelection := '';
scompl.Deactivate; scompl.Deactivate;
End; End;
@ -871,26 +851,23 @@ var
S : TStrings; S : TStrings;
CompInt : TComponentInterface; CompInt : TComponentInterface;
CompName : String; CompName : String;
I,X : Integer; I : Integer;
propKind : TTypeKind; propKind : TTypeKind;
TypeInfo : PTypeInfo; TypeInfo : PTypeInfo;
TypeData : PTypeData; TypeData : PTypeData;
NewStr : String; NewStr : String;
aName : String;
Count : Integer; Count : Integer;
MethodRec : TMethodRec;
Temp : String;
Begin Begin
CompInt := nil; CompInt := nil;
Writeln('[ccExecute]'); Writeln('[ccExecute]');
sCompl := TSynBaseCompletion(Sender); sCompl := TSynBaseCompletion(Sender);
S := TStringList.Create; S := TStringList.Create;
CompName := sCompl.CurrentString; CompName := sCompl.CurrentString;
ccSelection := CompName;
if Pos('.',CompName) <> 0 then if Pos('.',CompName) <> 0 then
CompName := Copy(CompName,1,pos('.',Compname)-1); CompName := Copy(CompName,1,pos('.',Compname)-1);
CompInt := TComponentInterface(FormEditor1.FindComponentByName(CompName)); CompInt := TComponentInterface(FormEditor1.FindComponentByName(CompName));
if CompInt = nil then Exit; if CompInt = nil then Exit;
aName := CompName+'.';
//get all methods //get all methods
NewStr := ''; NewStr := '';
for I := 0 to CompInt.GetPropCount-1 do for I := 0 to CompInt.GetPropCount-1 do
@ -1033,7 +1010,6 @@ end;
Procedure TSourceEditor.AddControlCode(_Control : TComponent); Procedure TSourceEditor.AddControlCode(_Control : TComponent);
var var
PT : PTypeData;
PI : PTypeInfo; PI : PTypeInfo;
nmControlType : String; nmControlType : String;
I : Integer; I : Integer;
@ -1089,8 +1065,6 @@ end;
{Called when a control is deleted from the form} {Called when a control is deleted from the form}
Procedure TSourceEditor.RemoveControlCode(_Control : TComponent); Procedure TSourceEditor.RemoveControlCode(_Control : TComponent);
var var
PT : PTypeData;
PI : PTypeInfo;
nmControlType : String; nmControlType : String;
I : Integer; I : Integer;
NewSource : String; NewSource : String;
@ -1101,7 +1075,6 @@ begin
TempSource.Assign(Source); TempSource.Assign(Source);
//get the control name //get the control name
PI := _Control.ClassInfo;
nmControlType := _Control.name; nmControlType := _Control.name;
Ancestor := GetAncestor; Ancestor := GetAncestor;
@ -1214,16 +1187,12 @@ end;
Procedure TSourceEditor.CreateFormUnit(AForm : TCustomForm); Procedure TSourceEditor.CreateFormUnit(AForm : TCustomForm);
Var Var
I : Integer;
nmForm : String; nmForm : String;
nmAncestor : String;
TempSource : TStringList; TempSource : TStringList;
Begin Begin
FControl := AForm; FControl := AForm;
TempSource := TStringList.Create; TempSource := TStringList.Create;
nmAncestor := GetAncestor;
nmForm := FControl.Name; nmForm := FControl.Name;
with TempSource do with TempSource do
@ -1266,7 +1235,6 @@ end;
Procedure TSourceEditor.CreateNewUnit; Procedure TSourceEditor.CreateNewUnit;
Var Var
I : Integer;
TempSource : TStringList; TempSource : TStringList;
Begin Begin
TempSource := TStringList.Create; TempSource := TStringList.Create;
@ -1506,7 +1474,6 @@ Function TSourceNotebook.CreateUnitFromForm(AForm : TForm): TSourceEditor;
Var Var
TempSourceEditor : TSourceEditor; TempSourceEditor : TSourceEditor;
Notebook_Just_Created : Boolean; Notebook_Just_Created : Boolean;
PageIndex : Integer;
begin begin
Notebook_Just_Created := (not assigned(Notebook1)) or Notebook_Just_Created := (not assigned(Notebook1)) or
@ -1866,7 +1833,7 @@ end;
Procedure TSourceNotebook.SaveAllClicked(Sender : TObject); Procedure TSourceNotebook.SaveAllClicked(Sender : TObject);
Var Var
I,X : Integer; I : Integer;
TempEditor : TSourceEditor; TempEditor : TSourceEditor;
Begin Begin
For I := 0 to FSourceEditorList.Count-1 do For I := 0 to FSourceEditorList.Count-1 do

View File

@ -691,6 +691,7 @@ TCMDialogKey = TLMKEY;
constructor CreateParented(ParentWindow: HWnd); constructor CreateParented(ParentWindow: HWnd);
class function CreateParentedControl(ParentWindow: HWnd): TWinControl; class function CreateParentedControl(ParentWindow: HWnd): TWinControl;
destructor Destroy; override; destructor Destroy; override;
Function CanFocus : Boolean;
Function ControlAtPos(const Pos : TPoint; AllowDisabled : Boolean): TControl; Function ControlAtPos(const Pos : TPoint; AllowDisabled : Boolean): TControl;
Function Focused : Boolean; dynamic; Function Focused : Boolean; dynamic;
Procedure BroadCast(var Message); Procedure BroadCast(var Message);
@ -1125,6 +1126,10 @@ end.
{ ============================================================================= { =============================================================================
$Log$ $Log$
Revision 1.12 2001/02/04 04:18:12 lazarus
Code cleanup and JITFOrms bug fix.
Shane
Revision 1.11 2001/02/01 16:45:19 lazarus Revision 1.11 2001/02/01 16:45:19 lazarus
Started the code completion. Started the code completion.
Shane Shane

View File

@ -799,10 +799,14 @@ end;
{ TControl InvalidateControl } { TControl InvalidateControl }
{------------------------------------------------------------------------------} {------------------------------------------------------------------------------}
procedure TControl.InvalidateControl(IsVisible, IsOpaque : Boolean); procedure TControl.InvalidateControl(IsVisible, IsOpaque : Boolean);
var
Rect : TRect;
begin begin
//TODO: FINISH TCONTROL INVALIDATECONTROL if (IsVisible or (csDesigning in ComponentState) and not (csNoDesignVisible in ControlStyle)) and
if IsVisible (Parent <> nil) and (Parent.HandleAllocated) then
then CNSendMessage(LM_REDRAW,Self,Nil); Begin
CNSendMessage(LM_REDRAW,Self,Nil);
end;
end; end;
{------------------------------------------------------------------------------} {------------------------------------------------------------------------------}
@ -1283,6 +1287,10 @@ end;
{ ============================================================================= { =============================================================================
$Log$ $Log$
Revision 1.11 2001/02/04 04:18:12 lazarus
Code cleanup and JITFOrms bug fix.
Shane
Revision 1.10 2001/02/01 16:45:19 lazarus Revision 1.10 2001/02/01 16:45:19 lazarus
Started the code completion. Started the code completion.
Shane Shane

View File

@ -215,6 +215,30 @@ begin
end; end;
end; end;
{------------------------------------------------------------------------------}
{ TWinControl CanFocus }
{------------------------------------------------------------------------------}
Function TWinControl.CanFocus : Boolean;
var
Control: TWinControl;
Form: TCustomForm;
begin
Result := False;
//Verify that every parent is enabled and visible before returning true.
Form := GetParentForm(Self);
if Form <> nil then
begin
Control := Self;
while Control <> Form do
begin
if not (Control.FVisible and Control.Enabled) then Exit;
Control := Control.Parent;
end;
Result := True;
end;
end;
{------------------------------------------------------------------------------} {------------------------------------------------------------------------------}
{ TWinControl CMDrag } { TWinControl CMDrag }
{------------------------------------------------------------------------------} {------------------------------------------------------------------------------}
@ -1893,6 +1917,10 @@ end;
{ ============================================================================= { =============================================================================
$Log$ $Log$
Revision 1.15 2001/02/04 04:18:12 lazarus
Code cleanup and JITFOrms bug fix.
Shane
Revision 1.14 2001/02/01 19:34:50 lazarus Revision 1.14 2001/02/01 19:34:50 lazarus
TScrollbar created and a lot of code added. TScrollbar created and a lot of code added.

View File

@ -197,7 +197,6 @@ TWincontrol(sender).parent := aParent;
ResizeChild(Sender,TWinControl(sender).Left,TWinControl(sender).Top,TWinControl(sender).Width,TWinControl(sender).Height); ResizeChild(Sender,TWinControl(sender).Left,TWinControl(sender).Top,TWinControl(sender).Width,TWinControl(sender).Height);
ShowHide(sender); ShowHide(sender);
End; End;
@ -2410,7 +2409,7 @@ begin
if Sender is TWinControl then if Sender is TWinControl then
with Sender as TWinControl do with Sender as TWinControl do
begin begin
if (Length(Hint) > 0) and ShowHint if (Length(Hint) > 0) and (ShowHint or (csDesigning in ComponentState))
then begin then begin
strTemp := StrAlloc(Length(Hint) + 1); strTemp := StrAlloc(Length(Hint) + 1);
try try
@ -2667,6 +2666,10 @@ end;
{ ============================================================================= { =============================================================================
$Log$ $Log$
Revision 1.27 2001/02/04 04:18:12 lazarus
Code cleanup and JITFOrms bug fix.
Shane
Revision 1.26 2001/02/02 20:13:39 lazarus Revision 1.26 2001/02/02 20:13:39 lazarus
Codecompletion changes. Codecompletion changes.
Added code to Uniteditor for code completion. Added code to Uniteditor for code completion.

View File

@ -2007,8 +2007,7 @@ function TGTKObject.InvalidateRect(aHandle : HWND; Rect : pRect; bErase : Boolea
var var
gdkRect : TGDKRectangle; gdkRect : TGDKRectangle;
begin begin
// Todo: Erase ??? // Todo: Erase before invalidating if bErase is true
Writeln('[InvalidateRect]');
Writeln(format('Rect = %d,%d,%d,%d',[rect^.left,rect^.top,rect^.Right,rect^.Bottom])); Writeln(format('Rect = %d,%d,%d,%d',[rect^.left,rect^.top,rect^.Right,rect^.Bottom]));
Result := True; Result := True;
try try
@ -2021,7 +2020,6 @@ begin
Result := False; Result := False;
end; end;
Writeln('[InvalidateRect] Exiting....');
end; end;
{------------------------------------------------------------------------------ {------------------------------------------------------------------------------
@ -3155,6 +3153,10 @@ end;
{ ============================================================================= { =============================================================================
$Log$ $Log$
Revision 1.18 2001/02/04 04:18:12 lazarus
Code cleanup and JITFOrms bug fix.
Shane
Revision 1.17 2001/02/01 19:34:50 lazarus Revision 1.17 2001/02/01 19:34:50 lazarus
TScrollbar created and a lot of code added. TScrollbar created and a lot of code added.