projects
/
oweals
/
minetest.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix build with redis
[oweals/minetest.git]
/
src
/
chat.cpp
diff --git
a/src/chat.cpp
b/src/chat.cpp
index b9d115bd088c937fb7934a3c23ec252696d777ca..0466b6e263e082929e959fa39d1b5277847997dd 100644
(file)
--- a/
src/chat.cpp
+++ b/
src/chat.cpp
@@
-1,6
+1,6
@@
/*
/*
-Minetest
-c55
-Copyright (C) 201
1
celeron55, Perttu Ahola <celeron55@gmail.com>
+Minetest
+Copyright (C) 201
3
celeron55, Perttu Ahola <celeron55@gmail.com>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
@@
-19,7
+19,7
@@
with this program; if not, write to the Free Software Foundation, Inc.,
#include "chat.h"
#include "debug.h"
#include "chat.h"
#include "debug.h"
-#include
<cassert>
+#include
"strfnd.h"
#include <cctype>
#include <sstream>
#include "util/string.h"
#include <cctype>
#include <sstream>
#include "util/string.h"
@@
-117,8
+117,8
@@
void ChatBuffer::deleteOldest(u32 count)
--count;
}
--count;
}
- m_unformatted.erase(
0,
del_unformatted);
- m_formatted.erase(
0,
del_formatted);
+ m_unformatted.erase(
m_unformatted.begin(), m_unformatted.begin() +
del_unformatted);
+ m_formatted.erase(
m_formatted.begin(), m_formatted.begin() +
del_formatted);
}
void ChatBuffer::deleteByAge(f32 maxAge)
}
void ChatBuffer::deleteByAge(f32 maxAge)
@@
-151,7
+151,7
@@
void ChatBuffer::reformat(u32 cols, u32 rows)
}
else if (cols != m_cols || rows != m_rows)
{
}
else if (cols != m_cols || rows != m_rows)
{
- // TODO: Avoid reformatting ALL lines (even in
ivis
ble ones)
+ // TODO: Avoid reformatting ALL lines (even in
visi
ble ones)
// each time the console size changes.
// Find out the scroll position in *unformatted* lines
// each time the console size changes.
// Find out the scroll position in *unformatted* lines
@@
-232,10
+232,10
@@
void ChatBuffer::scrollTop()
}
u32 ChatBuffer::formatChatLine(const ChatLine& line, u32 cols,
}
u32 ChatBuffer::formatChatLine(const ChatLine& line, u32 cols,
-
core::array
<ChatFormattedLine>& destination) const
+
std::vector
<ChatFormattedLine>& destination) const
{
u32 num_added = 0;
{
u32 num_added = 0;
-
core::array
<ChatFormattedFragment> next_frags;
+
std::vector
<ChatFormattedFragment> next_frags;
ChatFormattedLine next_line;
ChatFormattedFragment temp_frag;
u32 out_column = 0;
ChatFormattedLine next_line;
ChatFormattedFragment temp_frag;
u32 out_column = 0;
@@
-292,7
+292,7
@@
u32 ChatBuffer::formatChatLine(const ChatLine& line, u32 cols,
frag.column = out_column;
next_line.fragments.push_back(frag);
out_column += frag.text.size();
frag.column = out_column;
next_line.fragments.push_back(frag);
out_column += frag.text.size();
- next_frags.erase(
0, 1
);
+ next_frags.erase(
next_frags.begin()
);
}
else
{
}
else
{
@@
-414,7
+414,7
@@
std::wstring ChatPrompt::submit()
if (!line.empty())
m_history.push_back(line);
if (m_history.size() > m_history_limit)
if (!line.empty())
m_history.push_back(line);
if (m_history.size() > m_history_limit)
- m_history.erase(
0
);
+ m_history.erase(
m_history.begin()
);
m_history_index = m_history.size();
m_view = 0;
m_cursor = 0;
m_history_index = m_history.size();
m_view = 0;
m_cursor = 0;
@@
-464,7
+464,7
@@
void ChatPrompt::historyNext()
}
}
}
}
-void ChatPrompt::nickCompletion(const
core::list<std::w
string>& names, bool backwards)
+void ChatPrompt::nickCompletion(const
std::list<std::
string>& names, bool backwards)
{
// Two cases:
// (a) m_nick_completion_start == m_nick_completion_end == 0
{
// Two cases:
// (a) m_nick_completion_start == m_nick_completion_end == 0
@@
-492,14
+492,14
@@
void ChatPrompt::nickCompletion(const core::list<std::wstring>& names, bool back
std::wstring prefix = m_line.substr(prefix_start, prefix_end - prefix_start);
// find all names that start with the selected prefix
std::wstring prefix = m_line.substr(prefix_start, prefix_end - prefix_start);
// find all names that start with the selected prefix
-
core::array
<std::wstring> completions;
- for (
core::list<std::wstring>::ConstI
terator
+
std::vector
<std::wstring> completions;
+ for (
std::list<std::string>::const_i
terator
i = names.begin();
i = names.begin();
- i != names.end();
i++
)
+ i != names.end();
++i
)
{
{
- if (str_starts_with(
*i
, prefix, true))
+ if (str_starts_with(
narrow_to_wide(*i)
, prefix, true))
{
{
- std::wstring completion =
*i
;
+ std::wstring completion =
narrow_to_wide(*i)
;
if (prefix_start == 0)
completion += L":";
completions.push_back(completion);
if (prefix_start == 0)
completion += L":";
completions.push_back(completion);