| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- /*============================================================================
- CMake - Cross Platform Makefile Generator
- Copyright 2000-2009 Kitware, Inc., Insight Software Consortium
- Distributed under the OSI-approved BSD License (the "License");
- see accompanying file Copyright.txt for details.
- This software is distributed WITHOUT ANY WARRANTY; without even the
- implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- See the License for more information.
- ============================================================================*/
- #include "cmDocumentationFormatterUsage.h"
- #include "cmDocumentationSection.h"
- cmDocumentationFormatterUsage::cmDocumentationFormatterUsage()
- :cmDocumentationFormatterText()
- {
- }
- void cmDocumentationFormatterUsage
- ::PrintSection(std::ostream& os,
- const cmDocumentationSection §ion,
- const char* name)
- {
- if(name)
- {
- os << name << "\n";
- }
- const std::vector<cmDocumentationEntry> &entries =
- section.GetEntries();
- for(std::vector<cmDocumentationEntry>::const_iterator op = entries.begin();
- op != entries.end(); ++op)
- {
- if(op->Name.size())
- {
- os << " " << op->Name;
- this->TextIndent = " ";
- int align = static_cast<int>(strlen(this->TextIndent))-4;
- for(int i = static_cast<int>(op->Name.size()); i < align; ++i)
- {
- os << " ";
- }
- if (op->Name.size() > strlen(this->TextIndent)-4 )
- {
- os << "\n";
- os.write(this->TextIndent, strlen(this->TextIndent)-2);
- }
- os << "= ";
- this->PrintColumn(os, op->Brief.c_str());
- os << "\n";
- }
- else
- {
- os << "\n";
- this->TextIndent = "";
- this->PrintFormatted(os, op->Brief.c_str());
- }
- }
- os << "\n";
- }
|