ENH: Added support for documentation options.
This commit is contained in:
parent
ae84581f86
commit
5a1d6f2866
|
@ -5,6 +5,50 @@
|
||||||
#include "CMakeSetup.h"
|
#include "CMakeSetup.h"
|
||||||
#include "CMakeSetupDialog.h"
|
#include "CMakeSetupDialog.h"
|
||||||
#include "CMakeCommandLineInfo.h"
|
#include "CMakeCommandLineInfo.h"
|
||||||
|
#include "../cmDocumentation.h"
|
||||||
|
#include "../cmake.h"
|
||||||
|
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------
|
||||||
|
static const cmDocumentationEntry cmDocumentationName[] =
|
||||||
|
{
|
||||||
|
{0,
|
||||||
|
" CMakeSetup - CMake Windows GUI.", 0},
|
||||||
|
{0,0,0}
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------
|
||||||
|
static const cmDocumentationEntry cmDocumentationUsage[] =
|
||||||
|
{
|
||||||
|
{0,
|
||||||
|
" CMakeSetup [options]\n"
|
||||||
|
" CMakeSetup [options] <path-to-source>\n"
|
||||||
|
" CMakeSetup [options] <path-to-build>", 0},
|
||||||
|
{0,0,0}
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------
|
||||||
|
static const cmDocumentationEntry cmDocumentationDescription[] =
|
||||||
|
{
|
||||||
|
{0,
|
||||||
|
"The \"CMakeSetup\" executable is the CMake Windows GUI. Project "
|
||||||
|
"configuration settings may be specified interactively. "
|
||||||
|
"Brief instructions are provided at the bottom of the "
|
||||||
|
"window when the program is running.", 0},
|
||||||
|
CMAKE_STANDARD_INTRODUCTION,
|
||||||
|
{0,0,0}
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------
|
||||||
|
static const cmDocumentationEntry cmDocumentationOptions[] =
|
||||||
|
{
|
||||||
|
{"-A[on|off]", "Enable/disable display of advanced cache values.",
|
||||||
|
"There are two categories of CMake cache values: non-advanced and "
|
||||||
|
"advanced. Most users will not need to change the advanced options. "
|
||||||
|
"The CMakeSetup GUI contains a checkbox to enable/disable display of "
|
||||||
|
"advanced options. This command line flag changes its default setting."},
|
||||||
|
{0,0,0}
|
||||||
|
};
|
||||||
|
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
#define new DEBUG_NEW
|
#define new DEBUG_NEW
|
||||||
|
@ -58,6 +102,25 @@ BOOL CMakeSetup::InitInstance()
|
||||||
CMakeCommandLineInfo cmdInfo;
|
CMakeCommandLineInfo cmdInfo;
|
||||||
ParseCommandLine(cmdInfo);
|
ParseCommandLine(cmdInfo);
|
||||||
|
|
||||||
|
// Check for documentation options.
|
||||||
|
cmDocumentation doc;
|
||||||
|
if(doc.CheckOptions(cmdInfo.GetArgC(), cmdInfo.GetArgV()))
|
||||||
|
{
|
||||||
|
// Construct and print requested documentation.
|
||||||
|
cmake hcm;
|
||||||
|
std::vector<cmDocumentationEntry> commands;
|
||||||
|
std::vector<cmDocumentationEntry> generators;
|
||||||
|
hcm.GetCommandDocumentation(commands);
|
||||||
|
hcm.GetGeneratorDocumentation(generators);
|
||||||
|
doc.SetNameSection(cmDocumentationName);
|
||||||
|
doc.SetUsageSection(cmDocumentationUsage);
|
||||||
|
doc.SetDescriptionSection(cmDocumentationDescription);
|
||||||
|
doc.SetGeneratorsSection(&generators[0]);
|
||||||
|
doc.SetOptionsSection(cmDocumentationOptions);
|
||||||
|
doc.SetCommandsSection(&commands[0]);
|
||||||
|
return (doc.PrintRequestedDocumentation(std::cout)? 0:1);
|
||||||
|
}
|
||||||
|
|
||||||
CMakeSetupDialog dlg(cmdInfo);
|
CMakeSetupDialog dlg(cmdInfo);
|
||||||
|
|
||||||
m_pMainWnd = &dlg;
|
m_pMainWnd = &dlg;
|
||||||
|
|
Loading…
Reference in New Issue