8#ifndef KUNDO2MAGICSTRING_H
9#define KUNDO2MAGICSTRING_H
14#include <klocalizedstring.h>
15#include <boost/operators.hpp>
17#include "kritacommand_export.h"
39class KRITACOMMAND_EXPORT
KUndo2MagicString :
public boost::equality_comparable<KUndo2MagicString>
53 QString toString()
const;
61 QString toSecondaryString()
const;
79 template <
typename A1>
81 template <
typename A1,
typename A2>
83 template <
typename A1,
typename A2,
typename A3>
85 template <
typename A1,
typename A2,
typename A3,
typename A4>
90 template <
typename A1>
92 template <
typename A1,
typename A2>
94 template <
typename A1,
typename A2,
typename A3>
96 template <
typename A1,
typename A2,
typename A3,
typename A4>
101 template <
typename A1>
103 template <
typename A1,
typename A2>
105 template <
typename A1,
typename A2,
typename A3>
109 template <
typename A1>
111 template <
typename A1,
typename A2>
113 template <
typename A1,
typename A2,
typename A3>
117 template <
typename A1>
119 template <
typename A1,
typename A2>
121 template <
typename A1,
typename A2,
typename A3>
130 if (
v.toString() !=
v.toSecondaryString()) {
131 dbg.nospace() <<
v.toString() <<
"(" <<
v.toSecondaryString() <<
")";
133 dbg.nospace() <<
v.toString();
151template <
typename A1>
157template <
typename A1,
typename A2>
163template <
typename A1,
typename A2,
typename A3>
169template <
typename A1,
typename A2,
typename A3,
typename A4>
185template <
typename A1>
191template <
typename A1,
typename A2>
197template <
typename A1,
typename A2,
typename A3>
203template <
typename A1,
typename A2,
typename A3,
typename A4>
211 return QString(
"(qtundo-format) %1").arg(ctxt);
223template <
typename A1>
229template <
typename A1,
typename A2>
235template <
typename A1,
typename A2,
typename A3>
241template <
typename A1,
typename A2,
typename A3,
typename A4>
252template <
typename A1>
258template <
typename A1,
typename A2>
261 return i18ncp(
"(qtundo-format)", sing, plur, a1, a2);
264template <
typename A1,
typename A2,
typename A3>
267 return i18ncp(
"(qtundo-format)", sing, plur, a1, a2, a3);
270template <
typename A1,
typename A2,
typename A3,
typename A4>
273 return i18ncp(
"(qtundo-format)", sing, plur, a1, a2, a3, a4);
281template <
typename A1>
287template <
typename A1,
typename A2>
290 return i18ncp(
prependContext(ctxt).toLatin1().data(), sing, plur, a1, a2);
293template <
typename A1,
typename A2,
typename A3>
296 return i18ncp(
prependContext(ctxt).toLatin1().data(), sing, plur, a1, a2, a3);
299template <
typename A1,
typename A2,
typename A3,
typename A4>
302 return i18ncp(
prependContext(ctxt).toLatin1().data(), sing, plur, a1, a2, a3, a4);
bool operator==(const KisRegion &lhs, const KisRegion &rhs)
KUndo2MagicString kundo2_i18ncp(const char *ctxt, const char *sing, const char *plur, const A1 &a1)
QString prependContext(const char *ctxt)
KUndo2MagicString kundo2_i18n(const char *text)
KUndo2MagicString kundo2_i18nc(const char *ctxt, const char *text)
KUndo2MagicString kundo2_noi18n(const QString &text)
KUndo2MagicString kundo2_i18np(const char *sing, const char *plur, const A1 &a1)
QDebug operator<<(QDebug dbg, const KUndo2MagicString &v)