⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uicnodes.pas

📁 DelphiDoc is a program for automatic generation of documentation on a Delphi-Project. At the momen
💻 PAS
📖 第 1 页 / 共 5 页
字号:
  public
    //Creates a node representing a dictionary.
    constructor CreateDictionary(Owner: TICNodeOwner;
                      ItemIndentation: TICItemIndentation = iciiSmall;
                      DescriptionIndentation: TICItemIndentation = iciiAuto;
                      WholeItemSeparation: TICItemSeparation = icisNone;
                      ItemDescriptionSeparation: TICItemSeparation = icisNone);

    //Visits the node and all its children.
    procedure Visit(Visitor: TICVisitor); override;

    property ItemIndentation: TICItemIndentation read FItemIndentation;
    property DescriptionIndentation: TICItemIndentation
                                                  read FDescriptionIndentation;
    property WholeItemSeparation: TICItemSeparation read FWholeItemSeparation;
    property ItemDescriptionSeparation: TICItemSeparation
                                               read FItemDescriptionSeparation;
  end;


















   { * * *  ***  * * *  ***   TICNTopicForComment   ***  * * *  ***  * * *  }


  //this enumeration type holds all possible general topics and sub-topics
  //in the documentation for identifiers and files as read from the comments
  TICTopicForComment = (
                        //topic for the whole comment-based documentation
                        ictcComment,

                        //topic for extended information extracted from the
                        //comment like ~~see and ~~seeText, ~~author, ~~version
                        //and the additional sections
                        ictcCommentExtendedInfo,

                        //topic for extended information extracted from the
                        //comment like ~~deprecated, ~~feature and ~~todo
                        ictcCommentSpecials,
                        //topic for list of reasons why the identifier or file
                        //is deprecated
                        ictcCommentDeprecateds,
                        //topic for a reason why the identifier or file is
                        //deprecated
                        ictcCommentDeprecated,
                        //topic for list of reasons why the identifier or file
                        //is unfinished or of what has still to be done for it
                        ictcCommentToDos,
                        //topic for a reason why the identifier or file is
                        //unfinished or of what has still to be done for it
                        ictcCommentToDo,
                        //topic for list of features still missing for the
                        //identifier or file
                        ictcCommentFeatures,
                        //topic for a feature still missing for the identifier
                        //or file
                        ictcCommentFeature,

                        //topic for references to other identifiers or files or
                        //other sources of further information
                        ictcCommentSeeAll,
                        //topic for a list of references to other identifiers
                        //or files
                        ictcCommentSeeSuper,
                        //topic for a reference to another identifier or file
                        ictcCommentSee,
                        //topic for a list of references to other sources of
                        //further information outside the documentation
                        ictcCommentSeeTextSuper,
                        //topic for a reference to another source of further
                        //information outside the documentation
                        ictcCommentSeeText,

                        //topic for a list of authors who worked on the
                        //identifier or file
                        ictcCommentAuthors,
                        //topic for a list of versions (and changes in them) of
                        //the identifier or file
                        ictcCommentVersions,
                        //topic for a list of additional attributes of the
                        //identifier or file
                        ictcCommentAdditionals,

                        //topic for the list of examples on the identifier or
                        //file
                        ictcCommentExamples
                       );


  {Nodes of this class represent one of several topics and sub-topics in the
   documentation for identifiers and files as read from the comments. }
  TICNTopicForComment = class(TICNCompound)
  private
    //the topic this node represents
    FTopic: TICTopicForComment;
  protected
    //Clones the content of the node to the specified (new) node.
    procedure CloneTo(Node: TICNode); override;
  public
    //Creates a node representing a topic in the documentation.
    constructor CreateTopic(Owner: TICNodeOwner; Topic: TICTopicForComment);

    //Visits the node and all its children.
    procedure Visit(Visitor: TICVisitor); override;

    property Topic: TICTopicForComment read FTopic;
  end;




   { * * *  **  * * *  ** TICNTopicForCommentAdditional **  * * *  **  * * *  }

  {Nodes of this class represent a topic for a list of additional attributes
   of an identifier or file as defined in its comment. }
  TICNTopicForCommentAdditional = class(TICNTopicForComment)
  private
    //the index of the additional attribute for whose list this is the topic;
    //value values in the range 1..~[link AdditionalAttributeCount]
    FAdditionalIndex: Integer;
  protected
    //Clones the content of the node to the specified (new) node.
    procedure CloneTo(Node: TICNode); override;
  public
    //Creates a node representing a topic of a list for an additional
    //attribute.
    constructor CreateAdditionalTopic(Owner: TICNodeOwner;
                                      AdditionalIndex: Integer);

    //Visits the node and all its children.
    procedure Visit(Visitor: TICVisitor); override;

    property AdditionalIndex: Integer read FAdditionalIndex;
  end;







   { * * *  ***  * * *  *** TICNIdentifierDeclaration ***  * * *  ***  * * *  }


  {The class for nodes containing the declaration of an identifier as
   assembled by ~[link UICDeclarationAssembler.TICDeclarationAssembler]. }
  TICNIdentifierDeclaration = class(TICNCompound)
  public
    //Creates a node to contain the declaration of an identifier.
    constructor CreateDeclaration(Owner: TICNodeOwner);

    //Visits the node and all its children.
    procedure Visit(Visitor: TICVisitor); override;
  end;




   { * * *  ***  * * *  ***  TICNTopicForIdentifier  ***  * * *  ***  * * *  }


  //this enumeration type holds all possible topics and sub-topics in the
  //documentation of an identifier
  TICTopicForIdentifier = (
                           //topic containing all the documentation derived
                           //from the comment of the identifier
                           ictiCommentMain,
                           //topic containing the dictionary with the
                           //descriptions of the parameters of the function
                           //(type)
                           ictiFunctionParameters,
                           //topic containing the description of the
                           //result/return value of the function (type)
                           ictiFunctionResult,
                           //topic containing the dictionary of possibly thrown
                           //exceptions of the function (type)
                           ictiFunctionExceptions,
                           //topic containing the name of the method the method
                           //overrides
                           ictiMethodOverrides,
                           //topic containing the list of methods that override
                           //this method
                           ictiMethodOverriding,
                           //topic containing the list of global identifiers
                           //used in this function (beside functions)
                           ictiFunctionUsesIdentifier,
                           //topic containing the list of functions called by
                           //this function
                           ictiFunctionCalls,
                           //topic containing the list of functions that use
                           //this identifier
                           ictiIdentifierUsedBy,
                           //topic containing the list of functions that use
                           //(call?) this function
                           ictiFunctionCalledBy
                          );

  {The class for nodes representing one of several topics in the documentation
   of identifiers. }
  TICNTopicForIdentifier = class(TICNCompound)
  private
    //the topic this node represents
    FTopic: TICTopicForIdentifier;
  protected
    //Clones the content of the node to the specified (new) node.
    procedure CloneTo(Node: TICNode); override;
  public
    //Creates a node representing a topic in the documentation of an
    //identifier.
    constructor CreateTopic(Owner: TICNodeOwner; Topic: TICTopicForIdentifier);

    //Visits the node and all its children.
    procedure Visit(Visitor: TICVisitor); override;

    property Topic: TICTopicForIdentifier read FTopic;
  end;





   { * * *  ***  * * *  ***   TICNTopicForFile   ***  * * *  ***  * * *  }


  //this enumeration type holds all possible topics and sub-topics in the
  //documentation of a file
  TICTopicForFile = (
                     //topic containing the (unused) parameters of the program
                     //(.dpr)
                     ictfProgramParameters,
                     //topic containing the list of packages required by the
                     //package
                     ictfRequiredPackages,
                     //topic containing the list of packages used by the
                     //program
                     ictfRequiredPackagesProject,
                     //topic containing the list of exported identifiers in
                     //(out of) the library
                     ictfExportList,
                     //topic containing the lists of used units
                     ictfUsesSuperTopic,
                     //topic containing the list of used units in the project
                     ictfUsesProject,
                     //topic containing the list of used (contained) units in
                     //the package
                     ictfUsesPackage,
                     //topic containing the list of used units in the interface
                     //of the unit
                     ictfUsesInterface,
                     //topic containing the list of used units in the
                     //implementation section of the unit
                     ictfUsesImplementation,
                     //topic containing the lists of files using the unit
                     ictfUsedBySuperTopic,
                     //topic containing the lists of projects or packages
                     //(project files) using the unit
                     ictfUsedByProject,
                     //topic containing the lists of units that use the unit in
                     //their interface
                     ictfUsedByInterface,
                     //topic containing the lists of units that use the unit in
                     //their implementation section
                     ictfUsedByImplementation,
                     //topic containing the lists of packages or projects that
                     //require the package
                     ictfUsedByRequiredByPackage,

                     //topic containing all the documentation derived from the
                     //comment of the file
                     ictfCommentMain
                    );


  {The class for nodes representing one of several topics in the documentation
   of files. }
  TICNTopicForFile = class(TICNCompound)
  private
    //the topic this node represents
    FTopic: TICTopicForFile;
  protected
    //Clones the content of the node to the specified (new) node.
    procedure CloneTo(Node: TICNode); override;
  public
    //Creates a node representing a topic in the documentation of a file.
    constructor CreateTopic(Owner: TICNodeOwner; Topic: TICTopicForFile);

    //Visits the node and all its children.
    procedure Visit(Visitor: TICVisitor); override;

    property Topic: TICTopicForFile read FTopic;
  end;






   { * * *  ***  * * *  ***   TICNTopicForClass   ***  * * *  ***  * * *  }


  //this enumeration type holds all possible topics and sub-topics in the
  //documentation of a class (record-like type)
  TICTopicForClass = (
                      //topic containing all the documentation derived from the
                      //comment of the class (record-like type)
                      ictcCommentMain,
                      //topic containing the list of ancestors of the class or
                      //interface
                      ictcAncestorList,
                      //topic containing a link to the file in which the class
                      //(record-like type) is defined
                      ictcInFile,
                      //topic containing the GUID - global unique identifier -
                      //of the interface
                      ictcGUID,
                      //this topic is added, in case the class (record-like
                      //type) is "packed"
                      ictcPacked,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -