MyGUI
3.2.1
Main Page
Related Pages
Namespaces
Data Structures
Files
Examples
File List
Globals
mygui
MyGUIEngine
include
MyGUI_TextIterator.h
Go to the documentation of this file.
1
/*
2
* This source file is part of MyGUI. For the latest info, see http://mygui.info/
3
* Distributed under the MIT License
4
* (See accompanying file COPYING.MIT or copy at http://opensource.org/licenses/MIT)
5
*/
6
7
#ifndef __MYGUI_TEXT_ITERATOR_H__
8
#define __MYGUI_TEXT_ITERATOR_H__
9
10
#include "
MyGUI_Prerequest.h
"
11
#include "
MyGUI_Colour.h
"
12
#include "
MyGUI_TextChangeHistory.h
"
13
#include "
MyGUI_IFont.h
"
14
15
namespace
MyGUI
16
{
17
18
class
MYGUI_EXPORT
TextIterator
19
{
20
private
:
21
TextIterator
();
22
23
public
:
24
TextIterator
(
const
UString
& _text,
VectorChangeInfo
* _history =
nullptr
);
25
26
bool
moveNext();
27
28
// возвращает цвет
29
bool
getTagColour(
UString
& _colour)
const
;
30
31
// удаляет цвет
32
void
clearTagColour();
33
34
bool
setTagColour(
const
Colour
& _colour);
35
36
bool
setTagColour(
UString
_colour);
37
38
// сохраняет текущий итератор
39
bool
saveStartPoint();
40
41
// возвращает строку от сохраненного итератора до текущего
42
UString
getFromStart();
43
44
// удаляет от запомненной точки до текущей
45
bool
eraseFromStart();
46
47
// возвращает текущую псевдо позицию
48
size_t
getPosition()
const
;
49
50
const
UString
& getText()
const
;
51
52
void
insertText(
const
UString
& _insert,
bool
_multiLine);
53
54
void
clearNewLine(
UString
& _text);
55
56
//очищает весь текст
57
void
clearText();
58
59
// возвращает размер строки
60
size_t
getSize()
const
;
61
62
void
setText(
const
UString
& _text,
bool
_multiLine);
63
64
void
cutMaxLength(
size_t
_max);
65
66
void
cutMaxLengthFromBeginning(
size_t
_max);
67
68
// возвращает текст без тегов
69
static
UString
getOnlyText(
const
UString
& _text);
70
71
static
UString
getTextNewLine();
72
73
static
UString
getTextCharInfo(
Char
_char);
74
75
// просто конвертируем цвет в строку
76
static
UString
convertTagColour(
const
Colour
& _colour);
77
78
static
UString
toTagsString(
const
UString
& _text);
79
80
private
:
81
// возвращает цвет
82
bool
getTagColour(
UString
& _colour,
UString::iterator
& _iter)
const
;
83
84
void
insert(
UString::iterator
& _start,
UString
& _insert);
85
86
UString::iterator
erase(
UString::iterator
_start,
UString::iterator
_end);
87
88
void
clear();
89
90
void
normaliseNewLine(
UString
& _colour);
91
92
private
:
93
UString
mText;
94
UString::iterator
mCurrent, mEnd, mSave;
95
96
// позиция и размер
97
size_t
mPosition;
98
mutable
size_t
mSize;
99
bool
mFirst;
100
101
VectorChangeInfo
* mHistory;
102
};
103
104
}
// namespace MyGUI
105
106
#endif // __MYGUI_TEXT_ITERATOR_H__
Generated on Wed Aug 20 2014 00:03:33 for MyGUI by
1.8.3.1