This class provides access to winIDEA project manager. More...
#include <CProjectController.h>
Public Member Functions | |
void | build (bool suppressPostLinkActions=false) |
Builds the active project with winIDEA build manager. | |
void | compile (const std::string &fileName) |
Compiles the specified file with winIDEA build manager. | |
CProjectController (std::shared_ptr< ConnectionMgr > connectionMgr) | |
Constructs the object. | |
void | customOperation (const std::string &operation, const std::string ¶meters) |
Runs custom operation. | |
void | dependencies () |
Updates dependencies. | |
std::string | enumerateProjectOption (const std::string &scope, const std::string &option, int index, bool isReturnRelativePath) |
This method can enumerate build targets, groups, and files in project. | |
::IConnectProject * | getIConnectProject () |
Returns the isystem.connect Project interface. | |
CBuildStatus | getStatus () |
Returns the object with information about the current build manager status. | |
std::string | getWarningMessage () |
Returns warning message for methods in this class, which have returned warning error code, for example when importProject() or exportProject() return -1. | |
bool | isUpToDate () |
Returns true if project is up to date, or false if sources are newer than executable. | |
void | link (bool suppressPostLinkActions=false) |
Links the active project with winIDEA build manager. | |
void | make (bool suppressPostLinkActions=false) |
Makes the active project with winIDEA build manager. | |
std::string | modifyProjectOption (IConnectProject::EOptionFlags cmd, DWORD cmdFlags, const std::string &scope, const std::string &option, const std::string &value) |
This is a general method for configuration of project manager in winIDEA. | |
CBuildOptions & | options () |
Returns reference to build options associated with this build manager. | |
void | setTarget (const std::string &makeTargetName) |
Sets make target for winIDEA build manager. | |
void | stop () |
Stops the current operation of winIDEA build manager. |
This class provides access to winIDEA project manager.
Do not use it to build projects with CMake. For this use case run CMake directly from Python or other SDK language.
Python example: test_proj_get_status.py
isys::CProjectController::CProjectController | ( | std::shared_ptr< ConnectionMgr > | connectionMgr | ) |
Constructs the object.
Python example: test_proj_get_status.py
void isys::CProjectController::build | ( | bool | suppressPostLinkActions = false | ) |
Builds the active project with winIDEA build manager.
If you are using CMake for build, run CMake directly, do not use this class.
suppressPostLinkActions | if true, automatic post-link actions are not performed |
Python example: test_build_actions.py
void isys::CProjectController::compile | ( | const std::string & | fileName | ) |
Compiles the specified file with winIDEA build manager.
If you are using CMake for build, run CMake directly, do not use this class.
fileName | the file to compile. The file must be included in the active project. Python example: test_build_actions.py |
void isys::CProjectController::customOperation | ( | const std::string & | operation, |
const std::string & | parameters ) |
Runs custom operation.
operation | operation to run |
parameters | parameters of the operation |
Python example: test_custom_operation.py
void isys::CProjectController::dependencies | ( | ) |
Updates dependencies.
Python example: test_dependencies.py
std::string isys::CProjectController::enumerateProjectOption | ( | const std::string & | scope, |
const std::string & | option, | ||
int | index, | ||
bool | isReturnRelativePath ) |
This method can enumerate build targets, groups, and files in project.
scope | scope should be of format: ">project>group>file name|translator|target" If project or target are blank, the current project/active target is assumed. Examples:
| |||||||||
option | name of the option to get | |||||||||
index | index of item to retrieve. When end of list is reached, empty string is returned. | |||||||||
isReturnRelativePath | if true, relative paths are returned |
Python example: test_options.py
::IConnectProject * isys::CProjectController::getIConnectProject | ( | ) |
Returns the isystem.connect Project interface.
Use this method only when some functionality of the IConnectProject interface regarding project handling is not accessible from this wrapper.
CBuildStatus isys::CProjectController::getStatus | ( | ) |
Returns the object with information about the current build manager status.
Python example: test_proj_get_status.py
std::string isys::CProjectController::getWarningMessage | ( | ) |
Returns warning message for methods in this class, which have returned warning error code, for example when importProject() or exportProject() return -1.
Python example: test_export_import_project.py
bool isys::CProjectController::isUpToDate | ( | ) |
Returns true
if project is up to date, or false
if sources are newer than executable.
Python example: test_build_actions.py
void isys::CProjectController::link | ( | bool | suppressPostLinkActions = false | ) |
Links the active project with winIDEA build manager.
If you are using CMake for build, run CMake directly, do not use this class.
suppressPostLinkActions | if true, automatic post-link actions are not performed Python example: test_build_actions.py |
void isys::CProjectController::make | ( | bool | suppressPostLinkActions = false | ) |
Makes the active project with winIDEA build manager.
If you are using CMake for build, run CMake directly, do not use this class.
suppressPostLinkActions | if true, automatic post-link actions are not performed Python example: test_build_actions.py |
std::string isys::CProjectController::modifyProjectOption | ( | IConnectProject::EOptionFlags | cmd, |
DWORD | cmdFlags, | ||
const std::string & | scope, | ||
const std::string & | option, | ||
const std::string & | value ) |
This is a general method for configuration of project manager in winIDEA.
cmd | command. If you need command ofaEnum, use more convenient method enumerateProjectOption(). | ||||||||||||||||||||||||||||||
cmdFlags | this parameter may contain the second part of cmd, for example ofaRelativePaths, or-ed with index when needed | ||||||||||||||||||||||||||||||
scope | scope should be of format: ">project>group>file name|translator|target" If project or target are blank, the current project/active target is assumed. Examples:
| ||||||||||||||||||||||||||||||
option | name of the option to get or set. | ||||||||||||||||||||||||||||||
value | new option value when set or add is used. Should be empty string on get. |
Python example: test_modify_project_option.py
CBuildOptions & isys::CProjectController::options | ( | ) |
Returns reference to build options associated with this build manager.
Use this reference to get/set build options.
void isys::CProjectController::setTarget | ( | const std::string & | makeTargetName | ) |
Sets make target for winIDEA build manager.
If you are using CMake for build, run CMake directly, do not use this class.
See also winIDEA menu option Project
| Targets
. Python example: test_set_target.py
void isys::CProjectController::stop | ( | ) |
Stops the current operation of winIDEA build manager.
Python example: test_build_actions.py