ScummVM API documentation
edit_text.h
1
2/* ScummVM - Graphic Adventure Engine
3 *
4 * ScummVM is the legal property of its developers, whose names
5 * are too numerous to list here. Please refer to the COPYRIGHT
6 * file distributed with this source distribution.
7 *
8 * This program is free software: you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation, either version 3 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program. If not, see <http://www.gnu.org/licenses/>.
20 *
21 */
22
23#ifndef BAGEL_BOFLIB_GUI_EDIT_TEXT_H
24#define BAGEL_BOFLIB_GUI_EDIT_TEXT_H
25
26#include "bagel/spacebar/boflib/gui/window.h"
27#include "bagel/boflib/string.h"
28
29namespace Bagel {
30namespace SpaceBar {
31
32class CBofEditText : public CBofWindow {
33private:
34 CBofString _text;
35 size_t _cursorPos = 0;
36
37protected:
38 void onLButtonDown(uint32 nFlags, CBofPoint *pPoint, void * = nullptr) override;
39 void onKeyHit(uint32 lKey, uint32 lRepCount) override;
40
41public:
42 CBofEditText() {
43 }
44
45 CBofEditText(const char *pszName, int x, int y, int nWidth, int nHeight, CBofWindow *pParent);
46
47 ErrorCode create(const char *pszName, int x, int y, int nWidth, int nHeight, CBofWindow *pParent, uint32 nControlID = 0) override;
48 ErrorCode create(const char *pszName, CBofRect *pRect, CBofWindow *pParent, uint32 nControlID = 0) override;
49
50 CBofString getText() const {
51 return _text;
52 }
53
54 void setText(const char *pszString);
55
56 void onPaint(CBofRect *pRect) override;
57};
58
59} // namespace SpaceBar
60} // namespace Bagel
61
62#endif
Definition: point.h:32
Definition: rect.h:35
Definition: string.h:38
Definition: edit_text.h:32
ErrorCode create(const char *pszName, CBofRect *pRect, CBofWindow *pParent, uint32 nControlID=0) override
ErrorCode create(const char *pszName, int x, int y, int nWidth, int nHeight, CBofWindow *pParent, uint32 nControlID=0) override
Definition: window.h:53