KWordMacroExpander Class Reference
Abstract base class for simple word macro substitutors. More...
#include <KMacroExpanderBase>

Public Member Functions | |
| KWordMacroExpander (QChar c=QLatin1Char('%')) | |
Protected Member Functions | |
| virtual int | expandEscapedMacro (const QString &str, int pos, QStringList &ret) |
| virtual bool | expandMacro (const QString &str, QStringList &ret)=0 |
| virtual int | expandPlainMacro (const QString &str, int pos, QStringList &ret) |
Detailed Description
Abstract base class for simple word macro substitutors.
Use this instead of the functions in the KMacroExpander namespace if speculatively pre-filling the substitution map would be too expensive.
A typical application:
class MyClass { ... private: QString m_str; ... friend class MyExpander; }; class MyExpander : public KWordMacroExpander { public: MyExpander( MyClass *_that ) : KWordMacroExpander(), that( _that ) {} protected: virtual bool expandMacro( const QString &str, QStringList &ret ); private: MyClass *that; }; bool MyExpander::expandMacro( const QString &str, QStringList &ret ) { if (str == "macro") { ret += complexOperation( that->m_str ); return true; } return false; } ... MyClass::...(...) { QString str; ... MyExpander mx( this ); mx.expandMacrosShellQuote( str ); ... }
Alternatively MyClass could inherit from KWordMacroExpander directly.
Definition at line 217 of file kmacroexpander.h.
Constructor & Destructor Documentation
| KWordMacroExpander::KWordMacroExpander | ( | QChar | c = QLatin1Char('%') | ) | [inline, explicit] |
Constructor.
- Parameters:
-
c escape char indicating start of macros, or QChar::null for none
Definition at line 224 of file kmacroexpander.h.
Member Function Documentation
| int KWordMacroExpander::expandEscapedMacro | ( | const QString & | str, |
| int | pos, | ||
| QStringList & | ret | ||
| ) | [protected, virtual] |
Not to be called or reimplemented.
Reimplemented from KMacroExpanderBase.
Definition at line 285 of file kmacroexpander.cpp.
| virtual bool KWordMacroExpander::expandMacro | ( | const QString & | str, |
| QStringList & | ret | ||
| ) | [protected, pure virtual] |
Return substitution list ret for string macro str.
- Parameters:
-
str the macro to expand ret return variable reference. It is guaranteed to be empty when expandMacro is entered.
- Returns:
trueiffchrwas a recognized macro name
| int KWordMacroExpander::expandPlainMacro | ( | const QString & | str, |
| int | pos, | ||
| QStringList & | ret | ||
| ) | [protected, virtual] |
Not to be called or reimplemented.
Reimplemented from KMacroExpanderBase.
Definition at line 270 of file kmacroexpander.cpp.
The documentation for this class was generated from the following files:
KDE 4.6 API Reference