# HG changeset patch # User Teemu Piippo # Date 1469010032 -10800 # Node ID 4d8fa5394d67b59e93759c5cb79d94b78f7ad3e8 # Parent 4996c8684b934f208e693892e2d79c2c2804ab7e# Parent 8a4690db252e698721d96edcd7a25139ebc2e6c1 Merged with default diff -r 4996c8684b93 -r 4d8fa5394d67 sources/coloredline.cpp --- a/sources/coloredline.cpp Wed Jul 20 12:55:39 2016 +0300 +++ b/sources/coloredline.cpp Wed Jul 20 13:20:32 2016 +0300 @@ -184,6 +184,14 @@ // ------------------------------------------------------------------------------------------------- // +void ColoredLine::add_string (const String& text) +{ + for (char a : text) + add_char (a); +} + +// ------------------------------------------------------------------------------------------------- +// void ColoredLine::set_color (Color a, bool on) { assert (a < 8); diff -r 4996c8684b93 -r 4d8fa5394d67 sources/coloredline.h diff -r 4996c8684b93 -r 4d8fa5394d67 sources/interface.cpp --- a/sources/interface.cpp Wed Jul 20 12:55:39 2016 +0300 +++ b/sources/interface.cpp Wed Jul 20 13:20:32 2016 +0300 @@ -392,17 +392,7 @@ mvhline (y, x, ' ', width); if (i < m_playerNames.size()) - { - String displaynick = m_playerNames[i]; - - if (displaynick.length() > width) - { - displaynick = displaynick.mid (0, width - 3); - displaynick += "..."; - } - - mvprintw (y, x, "%s", displaynick.chars()); - } + render_colorline (y, x, width, m_playerNames[i], false); y++; } @@ -1026,7 +1016,16 @@ // void Interface::set_player_names (const StringList& names) { - m_playerNames = names; + m_playerNames.clear(); + + for (const String& name : names) + { + ColoredLine coloredname; + coloredname.add_string (name); + coloredname.finalize(); + m_playerNames.append (coloredname); + } + m_needNicklistRender = true; } diff -r 4996c8684b93 -r 4d8fa5394d67 sources/interface.h --- a/sources/interface.h Wed Jul 20 12:55:39 2016 +0300 +++ b/sources/interface.h Wed Jul 20 13:20:32 2016 +0300 @@ -86,7 +86,7 @@ std::function m_disconnectCallback; IPAddress m_remoteAddress; String m_statusBarText; - StringList m_playerNames; + List m_playerNames; String m_pasteBuffer; RCONSession m_session; diff -r 4996c8684b93 -r 4d8fa5394d67 sources/network/rconsession.h