#include "message.h"
#include "settings.h"
-class UiStyle {
- Q_DECLARE_TR_FUNCTIONS(UiStyle)
+class UiStyle : public QObject{
+ Q_OBJECT
public:
- UiStyle();
+ UiStyle(QObject *parent = 0);
virtual ~UiStyle();
typedef QList<QPair<quint16, quint32> > FormatList;
QList<QTextLayout::FormatRange> toTextLayoutList(const FormatList &, int textLength, quint32 messageLabel = 0);
-protected:
+public slots:
void loadStyleSheet();
- //! Determines the format set to be used for the given hostmask
- //int formatSetIndex(const QString &hostmask) const;
- //int formatSetIndexForSelf() const;
+signals:
+ void changed();
+
+protected:
+ QString loadStyleSheet(const QString &name, bool shouldExist = false);
QTextCharFormat cachedFormat(quint64 key) const;
QTextCharFormat cachedFormat(quint32 formatType, quint32 messageLabel = 0) const;
inline FormatType timestampFormat() const { return UiStyle::Timestamp; }
FormatType senderFormat() const;
const FormatList &contentsFormatList() const;
+
+ quint8 senderHash() const;
+
protected:
//! Styling is only needed for calls to plainContents() and contentsFormatList()
void style() const;
private:
mutable StyledString _contents;
+ mutable quint8 _senderHash;
};
QDataStream &operator<<(QDataStream &out, const UiStyle::FormatList &formatList);