[SCM] ktp-text-ui packaging branch, master, updated. debian/15.12.1-1-1918-gdf4b0ec
Maximiliano Curia
maxy at moszumanska.debian.org
Sat May 28 00:22:40 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-text-ui.git;a=commitdiff;h=40bed4b
The following commit has been merged in the master branch:
commit 40bed4bdf302db6dabc46a8078d65a74c2ad5f79
Author: Daniele E. Domenichelli <daniele.domenichelli at gmail.com>
Date: Tue Aug 28 11:50:26 2012 +0200
Fix italics bold by filtering recursively
---
filters/formatting/format-filter.cpp | 33 ++++++++++++++++++++++-----------
filters/formatting/format-filter.h | 2 --
2 files changed, 22 insertions(+), 13 deletions(-)
diff --git a/filters/formatting/format-filter.cpp b/filters/formatting/format-filter.cpp
index e197aed..c0753e2 100644
--- a/filters/formatting/format-filter.cpp
+++ b/filters/formatting/format-filter.cpp
@@ -1,5 +1,6 @@
/*
* Copyright (C) 2012 Lasath Fernando <kde at lasath.org>
+ * Copyright (C) 2012 Daniele E. Domenichelli <daniele.domenichelli at gmail.com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -28,15 +29,18 @@ typedef QPair<QRegExp, QString> FormatTag;
class FormatFilter::Private {
public:
QList<FormatTag> tags;
+
+ void addTag (const char *markingCharacter, char htmlTag);
+ QString filterString(QString string);
};
FormatFilter::FormatFilter (QObject* parent, const QVariantList&) :
AbstractMessageFilter (parent), d(new Private())
{
- addTag("_", 'u');
- addTag("\*", 'b');
- addTag("-", 's');
- addTag("/", 'i');
+ d->addTag("_", 'u');
+ d->addTag("\*", 'b');
+ d->addTag("-", 's');
+ d->addTag("/", 'i');
}
FormatFilter::~FormatFilter()
@@ -46,16 +50,23 @@ FormatFilter::~FormatFilter()
void FormatFilter::filterMessage (Message& message)
{
- Q_FOREACH(FormatTag tag, d->tags) {
- QString msg = message.mainMessagePart();
+ message.setMainMessagePart(d->filterString(message.mainMessagePart()));
- msg = msg.replace(tag.first, tag.second);
- message.setMainMessagePart(msg);
- }
}
+QString FormatFilter::Private::filterString(QString string)
+{
+ Q_FOREACH(FormatTag tag, tags) {
+ if (string.indexOf(tag.first) >= 0) {
+ string = string.replace(tag.first.cap(2), filterString(tag.first.cap(2)));
+ string = string.replace(tag.first, tag.second);
+ }
+ }
+
+ return string;
+}
-void FormatFilter::addTag (const char *markingCharacter, char htmlTag)
+void FormatFilter::Private::addTag (const char *markingCharacter, char htmlTag)
{
QString pattern = QLatin1String("(^|\s)%1(\S|\S.*\S)%1(\s|$)");
pattern = pattern.arg(QLatin1String(markingCharacter));
@@ -66,7 +77,7 @@ void FormatFilter::addTag (const char *markingCharacter, char htmlTag)
QRegExp exp = QRegExp(pattern);
exp.setMinimal(true);
- d->tags.append(FormatTag(exp, repl));
+ tags.append(FormatTag(exp, repl));
}
K_PLUGIN_FACTORY(MessageFilterFactory, registerPlugin<FormatFilter>();)
diff --git a/filters/formatting/format-filter.h b/filters/formatting/format-filter.h
index 4980aff..34b49f9 100644
--- a/filters/formatting/format-filter.h
+++ b/filters/formatting/format-filter.h
@@ -30,8 +30,6 @@ public:
virtual void filterMessage (Message& message);
private:
- void addTag (const char *markingCharacter, char htmlTag);
-
class Private;
Private *d;
};
--
ktp-text-ui packaging
More information about the pkg-kde-commits
mailing list