diff options
author | Alexander Neundorf <neundorf@kde.org> | 2007-07-02 15:24:44 (GMT) |
---|---|---|
committer | Alexander Neundorf <neundorf@kde.org> | 2007-07-02 15:24:44 (GMT) |
commit | 611f86b7f6ba92c9e7eaa589dcda337407d84415 (patch) | |
tree | 3ca9d655d656e20eadce912062c5429f865d37a9 /Source | |
parent | 55fa3825c0a22de9033d9a927953afb94fe57f3c (diff) | |
download | CMake-611f86b7f6ba92c9e7eaa589dcda337407d84415.zip CMake-611f86b7f6ba92c9e7eaa589dcda337407d84415.tar.gz CMake-611f86b7f6ba92c9e7eaa589dcda337407d84415.tar.bz2 |
COMP: fix build with msvc 6, the enums are now part of a class which is
already completely parsed
Alex
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmDocumentation.h | 39 |
1 files changed, 24 insertions, 15 deletions
diff --git a/Source/cmDocumentation.h b/Source/cmDocumentation.h index 09da00c..64a288d 100644 --- a/Source/cmDocumentation.h +++ b/Source/cmDocumentation.h @@ -19,8 +19,29 @@ #include "cmStandardIncludes.h" +/** This is just a helper class to make it build with MSVC 6.0. +Actually the enums and internal classes could directly go into +cmDocumentation, but then MSVC6 complains in RequestedHelpItem that +cmDocumentation is an undefined type and so it doesn't know the enums. +Moving the enums to a class which is then already completely parsed helps. +against this. */ +class cmDocumentationEnums +{ +public: + /** Types of help provided. */ + enum Type + { None, Usage, Single, SingleModule, SingleProperty, + List, ModuleList, PropertyList, + Full, Properties, Modules, Commands, CompatCommands, + Copyright, Version }; + + /** Forms of documentation output. */ + enum Form { TextForm, HTMLForm, ManForm, UsageForm }; +}; + + /** Class to generate documentation. */ -class cmDocumentation +class cmDocumentation: public cmDocumentationEnums { public: cmDocumentation(); @@ -28,12 +49,6 @@ public: ~cmDocumentation(); // High-level interface for standard documents: - /** Types of help provided. */ - enum Type { None, Usage, Single, SingleModule, SingleProperty, - List, ModuleList, PropertyList, - Full, Properties, Modules, Commands, CompatCommands, - Copyright, Version }; - /** * Check command line arguments for documentation options. Returns * true if documentation options are found, and false otherwise. @@ -85,11 +100,6 @@ public: void SetSeeAlsoList(const cmDocumentationEntry*); // Low-level interface for custom documents: - - /** Forms of documentation output. */ - enum Form { TextForm, HTMLForm, ManForm, UsageForm }; - - /** Internal class representing a section of the documentation. * Cares e.g. for the different section titles in the different * output formats. @@ -131,7 +141,6 @@ public: std::string ManName; std::vector<cmDocumentationEntry> Entries; static const cmDocumentationEntry EmptySection; - }; /** @@ -254,8 +263,8 @@ private: struct RequestedHelpItem { RequestedHelpItem():Form(TextForm), Type(None) {} - cmDocumentation::Form Form; - cmDocumentation::Type Type; + cmDocumentationEnums::Form Form; + cmDocumentationEnums::Type Type; std::string Filename; std::string Argument; }; |