anchor.diff:  
   procedure TCEStaticExplorerWidget.updateVisibleCat;
   begin
  -  ndAlias.Visible := ndAlias.Count > 0;
  -  ndClass.Visible := ndClass.Count > 0;
  -  ndEnum.Visible := ndEnum.Count > 0;
  -  ndFunc.Visible := ndFunc.Count > 0;
  -  ndImp.Visible := ndImp.Count > 0;
  -  ndIntf.Visible := ndIntf.Count > 0;
  -  ndMix.Visible := ndMix.Count > 0;
  -  ndStruct.Visible := ndStruct.Count > 0;
  -  ndTmp.Visible := ndTmp.Count > 0;
  -  ndVar.Visible := ndVar.Count > 0;
  +  if (fDoc <> nil) then
  +  begin
  +    ndAlias.Visible := ndAlias.Count > 0;
  +    ndClass.Visible := ndClass.Count > 0;
  +    ndEnum.Visible  := ndEnum.Count > 0;
  +    ndFunc.Visible  := ndFunc.Count > 0;
  +    ndImp.Visible   := ndImp.Count > 0;
  +    ndIntf.Visible  := ndIntf.Count > 0;
  +    ndMix.Visible   := ndMix.Count > 0;
  +    ndStruct.Visible:= ndStruct.Count > 0;
  +    ndTmp.Visible   := ndTmp.Count > 0;
  +    ndVar.Visible   := ndVar.Count > 0;
  +  end else
  +  begin
  +    ndAlias.Visible := true;
  +    ndClass.Visible := true;
  +    ndEnum.Visible  := true;
  +    ndFunc.Visible  := true;
  +    ndImp.Visible   := true;
  +    ndIntf.Visible  := true;
  +    ndMix.Visible   := true;
  +    ndStruct.Visible:= true;
  +    ndTmp.Visible   := true;
  +    ndVar.Visible   := true;
  +  end;
  +end;
  +
  +procedure TCEStaticExplorerWidget.clearTree;
  +begin
  +  ndAlias.DeleteChildren;
  +  ndClass.DeleteChildren;
  +  ndEnum.DeleteChildren;
  +  ndFunc.DeleteChildren;
  +  ndImp.DeleteChildren;
  +  ndIntf.DeleteChildren;
  +  ndMix.DeleteChildren;
  +  ndStruct.DeleteChildren;
  +  ndTmp.DeleteChildren;
  +  ndVar.DeleteChildren;
   end;
   
   procedure TCEStaticExplorerWidget.TreeFilterEdit1AfterFilter(Sender: TObject);
  
positive.code:     procedure actRefreshOnFocusExecute(Sender: TObject);
      procedure actCopyIdentExecute(Sender: TObject);
      procedure updateVisibleCat;
      //
      procedure produceJsonInfo;
      procedure jsonInfoProduced(sender: TObject);
  
negative.code: begin
    if ndAlias = nil then exit;
  
    clearTree;
    updateVisibleCat;
  
    if not FileExists(fJsonFname) then exit;
  