KWordMacroExpander Class Reference
from PyKDE4.kdecore import *
Inherits: KMacroExpanderBase
Detailed Description
\class KWordMacroExpander kmacroexpander.h <KMacroExpanderBase>
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.
Methods | |
| __init__ (self, QChar c=QLatin1Char('%')) | |
| __init__ (self, KWordMacroExpander other) | |
| int | expandEscapedMacro (self, QString str, int pos, QStringList ret) |
| bool | expandMacro (self, QString str, QStringList ret) |
| int | expandPlainMacro (self, QString str, int pos, QStringList ret) |
Method Documentation
| __init__ | ( | self, | ||
| QChar | c=QLatin1Char('%') | |||
| ) |
Constructor.
- Parameters:
-
c escape char indicating start of macros, or QChar.null for none
| __init__ | ( | self, | ||
| KWordMacroExpander | other | |||
| ) |
| int expandEscapedMacro | ( | self, | ||
| QString | str, | |||
| int | pos, | |||
| QStringList | ret | |||
| ) |
- Internal:
- Not to be called or reimplemented.
| bool expandMacro | ( | self, | ||
| QString | str, | |||
| QStringList | ret | |||
| ) |
- Abstract method:
- This method is abstract and can be overridden but not called directly.
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:
- true iff chr was a recognized macro name
| int expandPlainMacro | ( | self, | ||
| QString | str, | |||
| int | pos, | |||
| QStringList | ret | |||
| ) |
- Internal:
- Not to be called or reimplemented.
KDE 4.7 PyKDE API Reference