Help for IDE windows: now supporting controls without name

git-svn-id: trunk@9211 -
This commit is contained in:
mattias 2006-04-30 14:58:42 +00:00
parent 0fd39df1a1
commit 4f5b33084c
3 changed files with 6 additions and 2 deletions

View File

@ -1,5 +1,5 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<CONFIG Name="IDE windows and dialogs" Path="IDE_Window:_" ChildCount="1"> <CONFIG Name="IDE windows and dialogs" Path="IDE_Window:_" ChildCount="2">
<Node1 Name="TObjectInspector" Path="Object_Inspector" HasHelp="True" ChildCount="1"> <Node1 Name="TObjectInspector" Path="Object_Inspector" HasHelp="True" ChildCount="1">
<Node1 Name="PairSplitter1" Path="PairSplitter1" ChildCount="1"> <Node1 Name="PairSplitter1" Path="PairSplitter1" ChildCount="1">
<Node1 Name="PairSplitter1Side2" Path="PairSplitter1Side2" ChildCount="1"> <Node1 Name="PairSplitter1Side2" Path="PairSplitter1Side2" ChildCount="1">
@ -13,4 +13,5 @@
</Node1> </Node1>
</Node1> </Node1>
</Node1> </Node1>
<Node2 Name="TfrmCompilerOptions" Path="Compiler_Options" HasHelp="True"/>
</CONFIG> </CONFIG>

View File

@ -324,6 +324,7 @@ function TContextHelpEditorDlg.FindHelpTreeNode(HelpNode: TIWHelpNode
ParentTreeNode: TTreeNode; ParentTreeNode: TTreeNode;
begin begin
if HNode=nil then exit(nil); if HNode=nil then exit(nil);
DebugLn('Find ',HNode.Name,' ',HNode.Path);
if HNode.Parent=nil then begin if HNode.Parent=nil then begin
Result:=HelpNodesTreeView.Items.FindTopLvlNode(HNode.Name); Result:=HelpNodesTreeView.Items.FindTopLvlNode(HNode.Name);
end else begin end else begin

View File

@ -196,6 +196,7 @@ end;
procedure TIWHelpNode.DoRemove(AChild: TIWHelpNode); procedure TIWHelpNode.DoRemove(AChild: TIWHelpNode);
begin begin
FItems.Remove(AChild); FItems.Remove(AChild);
AChild.FParent:=nil;
end; end;
constructor TIWHelpNode.Create; constructor TIWHelpNode.Create;
@ -383,6 +384,7 @@ function TIWHelpTree.FindNodeForControl(AControl: TControl;
ParentHelpNode: TIWHelpNode; ParentHelpNode: TIWHelpNode;
CurName: String; CurName: String;
begin begin
Result:=nil;
//DebugLn('TIWHelpTree.FindNodeForControl.Find ',dbgsName(TheControl)); //DebugLn('TIWHelpTree.FindNodeForControl.Find ',dbgsName(TheControl));
NextParent:=TheControl.Parent; NextParent:=TheControl.Parent;
if NextParent=nil then begin if NextParent=nil then begin
@ -446,13 +448,13 @@ var
ParentHelpNode: TIWHelpNode; ParentHelpNode: TIWHelpNode;
CurName: String; CurName: String;
begin begin
Result:=nil;
NextParent:=TheControl.Parent; NextParent:=TheControl.Parent;
if NextParent=nil then begin if NextParent=nil then begin
CurName:=TheControl.ClassName; CurName:=TheControl.ClassName;
ParentHelpNode:=Root; ParentHelpNode:=Root;
end else begin end else begin
CurName:=TheControl.Name; CurName:=TheControl.Name;
if CurName='' then exit;
ParentHelpNode:=Find(NextParent); ParentHelpNode:=Find(NextParent);
if ParentHelpNode=nil then exit; if ParentHelpNode=nil then exit;
end; end;