You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
cmake/Source/CPack/WiX/cmWIXDirectoriesSourceWriter.h

39 lines
1.1 KiB

/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
file Copyright.txt or https://cmake.org/licensing for details. */
#pragma once
#include <string>
#include "cmCPackGenerator.h"
#include "cmWIXSourceWriter.h"
/** \class cmWIXDirectoriesSourceWriter
* \brief Helper class to generate directories.wxs
*/
class cmWIXDirectoriesSourceWriter : public cmWIXSourceWriter
{
public:
cmWIXDirectoriesSourceWriter(unsigned long wixVersion, cmCPackLog* logger,
std::string const& filename,
GuidType componentGuidType);
void EmitStartMenuFolder(std::string const& startMenuFolder);
void EmitDesktopFolder();
void EmitStartupFolder();
struct InstallationPrefixDirectory
{
bool HasStandardDirectory = false;
size_t Depth = 0;
};
InstallationPrefixDirectory BeginInstallationPrefixDirectory(
std::string const& programFilesFolderId,
std::string const& installRootString);
void EndInstallationPrefixDirectory(
InstallationPrefixDirectory installationPrefixDirectory);
};