SetNodeState method

Applies to
TDUnitDialog

Declaration
Procedure SetNodeState(node: TTreeNode; enabled :boolean);

Implementation

procedure TDUnitDialog.SetNodeState(node: TTreeNode; enabled :boolean);
var
  MostSeniorChanged :TTReeNode;
begin
   assert(node <> nil);

   // update ancestors if enabling
   NodeToTest(Node).Enabled := enabled;

   MostSeniorChanged := Node;
   if enabled then
   begin
     while Node.Parent <> nil do
     begin
       Node := Node.Parent;
       if Node.StateIndex < imgENABLED then
       begin // changed
          NodeToTest(Node).Enabled := true;
          Node.StateIndex   := imgENABLED;
          MostSeniorChanged := Node;
       end
     end;
   end;
   TestTree.Items.BeginUpdate;
   try
     UpdateNodeState(MostSeniorChanged);
   finally
     TestTree.Items.EndUpdate;
   end
End;


HTML generated by Time2HELP
http://www.time2help.com