X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fuisupport%2Fuistyle.cpp;h=d1c78cd366e79ecc847f2f04a1bd10569d748b36;hp=d5345ecd06968900b468efbf1a0330350e0bc2a9;hb=4171bdf884b6bbc7dad85f100a29746bf955191f;hpb=09e964ea3cd4995374dd7adb33256f3cefd47032 diff --git a/src/uisupport/uistyle.cpp b/src/uisupport/uistyle.cpp index d5345ecd..d1c78cd3 100644 --- a/src/uisupport/uistyle.cpp +++ b/src/uisupport/uistyle.cpp @@ -36,7 +36,7 @@ QHash UiStyle::_formatCodes; bool UiStyle::_useCustomTimestampFormat; /// If true, use the custom timestamp format QString UiStyle::_timestampFormatString; /// Timestamp format QString UiStyle::_systemTimestampFormatString; /// Cached copy of system locale timestamp format -bool UiStyle::_showSenderPrefixes; /// If true, show prefixmodes before sender names +UiStyle::SenderPrefixMode UiStyle::_senderPrefixDisplay; /// Display of prefix modes before sender bool UiStyle::_showSenderBrackets; /// If true, show brackets around sender names namespace { @@ -100,8 +100,8 @@ UiStyle::UiStyle(QObject *parent) // in there. setUseCustomTimestampFormat(false); setTimestampFormatString(" hh:mm:ss"); - enableSenderPrefixes(false); - enableSenderBrackets(true); + setSenderPrefixDisplay(UiStyle::SenderPrefixMode::HighestMode); + enableSenderBrackets(false); // BufferView / NickView settings UiStyleSettings s; @@ -251,10 +251,10 @@ void UiStyle::setTimestampFormatString(const QString &format) } } -void UiStyle::enableSenderPrefixes(bool enabled) +void UiStyle::setSenderPrefixDisplay(UiStyle::SenderPrefixMode mode) { - if (_showSenderPrefixes != enabled) { - _showSenderPrefixes = enabled; + if (_senderPrefixDisplay != mode) { + _senderPrefixDisplay = mode; } } @@ -1058,8 +1058,18 @@ QString UiStyle::StyledMessage::plainSender() const QString UiStyle::StyledMessage::decoratedSender() const { QString _senderPrefixes; - if (_showSenderPrefixes) { + switch (_senderPrefixDisplay) { + case UiStyle::SenderPrefixMode::AllModes: + // Show every available mode _senderPrefixes = senderPrefixes(); + break; + case UiStyle::SenderPrefixMode::HighestMode: + // Show the highest available mode (left-most) + _senderPrefixes = senderPrefixes().left(1); + break; + case UiStyle::SenderPrefixMode::NoModes: + // Don't show any mode (already empty by default) + break; } switch (type()) {