File: MyGUI_ISubWidgetText.h

package info (click to toggle)
mygui 3.4.3%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 38,792 kB
  • sloc: cpp: 133,849; ansic: 30,249; xml: 15,794; cs: 12,601; tcl: 776; python: 400; makefile: 35; sh: 4
file content (191 lines) | stat: -rw-r--r-- 4,163 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
/*
 * This source file is part of MyGUI. For the latest info, see http://mygui.info/
 * Distributed under the MIT License
 * (See accompanying file COPYING.MIT or copy at http://opensource.org/licenses/MIT)
 */

#ifndef MYGUI_I_SUB_WIDGET_TEXT_H_
#define MYGUI_I_SUB_WIDGET_TEXT_H_

#include "MyGUI_Prerequest.h"
#include "MyGUI_ISubWidget.h"
#include "MyGUI_Colour.h"
#include "MyGUI_Constants.h"

namespace MyGUI
{

	class MYGUI_EXPORT ISubWidgetText : public ISubWidget
	{
		MYGUI_RTTI_DERIVED(ISubWidgetText)

	public:
		/** Get index of start of selection */
		virtual size_t getTextSelectionStart() const
		{
			return 0;
		}

		/** Get index of end of selection */
		virtual size_t getTextSelectionEnd() const
		{
			return 0;
		}

		/** Set text selection */
		virtual void setTextSelection(size_t /*_start*/, size_t /*_end*/)
		{
		}

		// интенсивность выделенного текста
		virtual bool getSelectBackground() const
		{
			return true;
		}

		virtual void setSelectBackground(bool /*_normal*/)
		{
		}

		// нужно ли инвертировать выделение
		virtual bool getInvertSelected() const
		{
			return true;
		}

		virtual void setInvertSelected(bool /*_value*/)
		{
		}

		// нужно ли показывать тень
		virtual bool getShadow() const
		{
			return false;
		}

		virtual void setShadow(bool /*_value*/)
		{
		}

		// управление видимостью курсора
		virtual bool isVisibleCursor() const
		{
			return false;
		}

		virtual void setVisibleCursor(bool /*_value*/)
		{
		}

		// управление положением курсора
		virtual size_t getCursorPosition() const
		{
			return 0;
		}

		virtual void setCursorPosition(size_t /*_index*/)
		{
		}

		virtual void setWordWrap(bool /*_value*/)
		{
		}

		// возвращает положение курсора по произвольному положению
		// позиция абсолютная, без учета смещений
		virtual size_t getCursorPosition(const IntPoint& /*_point*/) const
		{
			return 0;
		}

		// возвращает положение курсора в обсолютных координатах
		virtual IntCoord getCursorCoord(size_t /*_position*/) const
		{
			return {};
		}

		// возвращает положение курсора в обсолютных координатах
		IntPoint getCursorPoint(size_t _position) const
		{
			const IntCoord& coord = getCursorCoord(_position);
			return {coord.left + coord.width / 2, coord.top + coord.height / 2};
		}

		// возвращает положение курсора в обсолютных координатах
		IntRect getCursorRect(size_t _position) const
		{
			const IntCoord& coord = getCursorCoord(_position);
			return {coord.left, coord.top, coord.left + coord.width, coord.top + coord.height};
		}

		// возвращает размер текста в пикселях
		virtual IntSize getTextSize() const
		{
			return {};
		}

		// устанавливает смещение текста в пикселях
		virtual void setViewOffset(const IntPoint& /*_point*/)
		{
		}
		virtual IntPoint getViewOffset() const
		{
			return {};
		}

		virtual void setCaption(const UString& /*_value*/)
		{
		}
		virtual const UString& getCaption() const
		{
			return Constants::getEmptyUString();
		}

		virtual void setTextColour(const Colour& /*_value*/)
		{
		}
		virtual const Colour& getTextColour() const
		{
			return Colour::Zero;
		}

		virtual void setFontName(std::string_view /*_value*/)
		{
		}
		virtual std::string_view getFontName() const
		{
			return {};
		}

		virtual void setFontHeight(int /*_value*/)
		{
		}
		virtual int getFontHeight() const
		{
			return 0;
		}

		virtual void setTextAlign(Align /*_value*/)
		{
		}
		virtual Align getTextAlign() const
		{
			return Align::Default;
		}

		virtual void setShiftText(bool /*_value*/)
		{
		}

		virtual void setShadowColour(const Colour& /*_value*/)
		{
		}
		virtual const Colour& getShadowColour() const
		{
			return Colour::Zero;
		}
	};

} // namespace MyGUI

#endif // MYGUI_I_SUB_WIDGET_TEXT_H_