/***************************************************************************
- * Copyright (C) 2005-07 by the Quassel IRC Team *
+ * Copyright (C) 2005-08 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
+ * (at your option) version 3. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
#include <QUrl>
#include "message.h"
+#include "settings.h"
class UiStyle {
public:
- UiStyle();
+ UiStyle(const QString &settingsKey);
virtual ~UiStyle();
/** This enumerates the possible formats a text element may have. */
QUrl url;
};
- struct StyledString {
+ struct StyledText {
QString text;
QList<QTextLayout::FormatRange> formats;
QList<UrlInfo> urls;
};
- StyledString styleString(QString);
+ StyledText styleString(QString);
- void setFormat(FormatType, QTextCharFormat);
- QTextCharFormat format(FormatType) const;
+ void setFormat(FormatType, QTextCharFormat, Settings::Mode mode/* = Settings::Custom*/);
+ QTextCharFormat format(FormatType, Settings::Mode mode = Settings::Custom) const;
FormatType formatType(const QString &code) const;
QString formatCode(FormatType) const;
private:
QTextCharFormat mergedFormat(QList<FormatType>);
- QVector<QTextCharFormat> _formats;
+ QVector<QTextCharFormat> _defaultFormats;
+ QVector<QTextCharFormat> _customFormats;
QHash<QString, FormatType> _formatCodes;
+ QString _settingsKey;
+
};
#endif