1 // Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
2 // Copyright (C) 2010 Winch Gate Property Limited
4 // This source file has been modified by the following contributors:
5 // Copyright (C) 2014 Jan BOON (Kaetemi) <jan.boon@kaetemi.be>
7 // This program is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU Affero General Public License as
9 // published by the Free Software Foundation, either version 3 of the
10 // License, or (at your option) any later version.
12 // This program is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU Affero General Public License for more details.
17 // You should have received a copy of the GNU Affero General Public License
18 // along with this program. If not, see <http://www.gnu.org/licenses/>.
24 using namespace NLMISC
;
25 using namespace NLNET
;
28 //////////////////////////////////////////////////////////////////////////////
29 // MULTI_LINE_FORMATER //
30 //////////////////////////////////////////////////////////////////////////////
32 static int const MULTI_LINE_FORMATER_maxn
= 78;
33 void MULTI_LINE_FORMATER::pushTitle(std::vector
<std::string
>& container
, std::string
const& text
)
35 const sint maxn
= MULTI_LINE_FORMATER_maxn
;
36 sint n
= maxn
- (sint
)text
.length() - 4;
37 container
.push_back(" _/");
38 container
.back() += text
;
39 container
.back() += "\\" + std::string(n
, '_');
40 container
.push_back("/");
41 container
.back() += std::string(maxn
- 1, ' ');
44 void MULTI_LINE_FORMATER::pushEntry(std::vector
<std::string
>& container
, std::string
const& text
)
46 container
.push_back("| ");
47 container
.back() += text
;
50 void MULTI_LINE_FORMATER::pushFooter(std::vector
<std::string
>& container
)
52 int const maxn
= MULTI_LINE_FORMATER_maxn
;
53 container
.push_back("\\");
54 container
.back() += std::string(maxn
- 1, '_');