Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Kitware
GitHub Repository: Kitware/CMake
Path: blob/master/Source/CPack/WiX/cmWIXDirectoriesSourceWriter.h
5017 views
1
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
2
file LICENSE.rst or https://cmake.org/licensing for details. */
3
#pragma once
4
5
#include <string>
6
7
#include "cmCPackGenerator.h"
8
#include "cmWIXSourceWriter.h"
9
10
/** \class cmWIXDirectoriesSourceWriter
11
* \brief Helper class to generate directories.wxs
12
*/
13
class cmWIXDirectoriesSourceWriter : public cmWIXSourceWriter
14
{
15
public:
16
cmWIXDirectoriesSourceWriter(unsigned long wixVersion, cmCPackLog* logger,
17
std::string const& filename,
18
GuidType componentGuidType);
19
20
void EmitStartMenuFolder(std::string const& startMenuFolder);
21
22
void EmitDesktopFolder();
23
24
void EmitStartupFolder();
25
26
struct InstallationPrefixDirectory
27
{
28
bool HasStandardDirectory = false;
29
size_t Depth = 0;
30
};
31
32
InstallationPrefixDirectory BeginInstallationPrefixDirectory(
33
std::string const& programFilesFolderId,
34
std::string const& installRootString);
35
36
void EndInstallationPrefixDirectory(
37
InstallationPrefixDirectory installationPrefixDirectory);
38
};
39
40