CustomWizardContext Class
(ProjectExplorer::Internal::CustomWizardContext)The CustomWizardContext class provides the context for one custom wizard run. More...
Header: | #include <CustomWizardContext> |
Public Types
typedef | FieldReplacementMap |
typedef | TemporaryFilePtr |
typedef | TemporaryFilePtrList |
Public Functions
void | reset() |
Static Public Members
int | processFile(const ProjectExplorer::Internal::CustomWizardContext::FieldReplacementMap &, int) |
bool | replaceFields(const ProjectExplorer::Internal::CustomWizardContext::FieldReplacementMap &fm, int *s) |
bool | replaceFields(const ProjectExplorer::Internal::CustomWizardContext::FieldReplacementMap &fm, int *s, ProjectExplorer::Internal::CustomWizardContext::TemporaryFilePtrList *files) |
Detailed Description
The CustomWizardContext class provides the context for one custom wizard run.
Shared between CustomWizard and the CustomWizardPage as it is used for the QLineEdit-type fields' default texts as well. Contains basic replacement fields like '%CppSourceSuffix%'
, '%CppHeaderSuffix%'
(settings-dependent). reset() should be called before each wizard run to refresh them. CustomProjectWizard additionally inserts '%ProjectName%'
from the intro page to have it available for default texts.
See also ProjectExplorer::CustomWizard.
Member Type Documentation
typedef CustomWizardContext::FieldReplacementMap
typedef CustomWizardContext::TemporaryFilePtr
typedef CustomWizardContext::TemporaryFilePtrList
Member Function Documentation
[static]
int CustomWizardContext::processFile(const ProjectExplorer::Internal::CustomWizardContext::FieldReplacementMap &, int)
[static]
bool CustomWizardContext::replaceFields(const ProjectExplorer::Internal::CustomWizardContext::FieldReplacementMap &fm, int *s)
Replaces field values delimited by '%' with special modifiers:
- %Field% -> simple replacement
- %Field:l% -> replace with everything changed to lower case
- %Field:u% -> replace with everything changed to upper case
- %Field:c% -> replace with first character capitalized
- %Field:h% -> replace with something usable as header guard
- %Field:s% -> replace with something usable as structure or class name
The return value indicates whether non-empty replacements were encountered.
[static]
bool CustomWizardContext::replaceFields(const ProjectExplorer::Internal::CustomWizardContext::FieldReplacementMap &fm, int *s, ProjectExplorer::Internal::CustomWizardContext::TemporaryFilePtrList *files)
This function is a special replaceFields() overload used for the arguments of a generator script.
Writes the expanded field values out to temporary files specified by files and inserts file names instead of the expanded fields in the string s.