Wrap messages nicely on metrics screen
This commit is contained in:
@@ -10,6 +10,7 @@
|
|||||||
#include "util.h"
|
#include "util.h"
|
||||||
#include "utiltime.h"
|
#include "utiltime.h"
|
||||||
#include "utilmoneystr.h"
|
#include "utilmoneystr.h"
|
||||||
|
#include "utilstrencodings.h"
|
||||||
|
|
||||||
#include <boost/thread.hpp>
|
#include <boost/thread.hpp>
|
||||||
#include <boost/thread/synchronized_value.hpp>
|
#include <boost/thread/synchronized_value.hpp>
|
||||||
@@ -334,20 +335,19 @@ int printMessageBox(size_t cols)
|
|||||||
int lines = 2 + u->size();
|
int lines = 2 + u->size();
|
||||||
std::cout << _("Messages:") << std::endl;
|
std::cout << _("Messages:") << std::endl;
|
||||||
for (auto it = u->cbegin(); it != u->cend(); ++it) {
|
for (auto it = u->cbegin(); it != u->cend(); ++it) {
|
||||||
std::cout << *it << std::endl;
|
auto msg = FormatParagraph(*it, cols, 2);
|
||||||
|
std::cout << "- " << msg << std::endl;
|
||||||
// Handle newlines and wrapped lines
|
// Handle newlines and wrapped lines
|
||||||
size_t i = 0;
|
size_t i = 0;
|
||||||
size_t j = 0;
|
size_t j = 0;
|
||||||
while (j < it->size()) {
|
while (j < msg.size()) {
|
||||||
i = it->find('\n', j);
|
i = msg.find('\n', j);
|
||||||
if (i == std::string::npos) {
|
if (i == std::string::npos) {
|
||||||
i = it->size();
|
i = msg.size();
|
||||||
} else {
|
} else {
|
||||||
// Newline
|
// Newline
|
||||||
lines++;
|
lines++;
|
||||||
}
|
}
|
||||||
// Wrapped lines
|
|
||||||
lines += ((i-j) / cols);
|
|
||||||
j = i + 1;
|
j = i + 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user