Egypt skirmish map by mimesot, refs #5032.
[0ad.git] / source / gui / CText.h
blob81d18b0fdd23bc9574bd9eb7423775cdad4dcc66
1 /* Copyright (C) 2015 Wildfire Games.
2 * This file is part of 0 A.D.
4 * 0 A.D. is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 2 of the License, or
7 * (at your option) any later version.
9 * 0 A.D. is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with 0 A.D. If not, see <http://www.gnu.org/licenses/>.
18 #ifndef INCLUDED_CTEXT
19 #define INCLUDED_CTEXT
21 #include "GUI.h"
23 /**
24 * Text field that just displays static text.
26 * @see IGUIObject
28 class CText : public IGUIScrollBarOwner, public IGUITextOwner
30 GUI_OBJECT(CText)
32 public:
33 CText();
34 virtual ~CText();
36 /**
37 * @see IGUIObject#ResetStates()
39 virtual void ResetStates() { IGUIScrollBarOwner::ResetStates(); }
41 /**
42 * Test if mouse position is over an icon
44 virtual bool MouseOverIcon();
46 protected:
47 /**
48 * Sets up text, should be called every time changes has been
49 * made that can change the visual.
51 void SetupText();
53 /**
54 * @see IGUIObject#HandleMessage()
56 virtual void HandleMessage(SGUIMessage& Message);
58 /**
59 * Draws the Text
61 virtual void Draw();
63 /**
64 * Placement of text. Ignored when scrollbars are active.
66 CPos m_TextPos;
69 #endif // INCLUDED_CTEXT