Apply the new ground_level method.
[crawl.git] / crawl-ref / source / tilereg-crt.h
blob7ad716b57a4254c095ab5c6e0f67b23ed56d4da8
1 /*
2 * File: tilereg.h
3 * Created by: ennewalker on Sat Jan 5 01:33:53 2008 UTC
4 */
6 #ifdef USE_TILE
7 #ifndef TILEREG_CRT_H
8 #define TILEREG_CRT_H
10 #include "tilereg-text.h"
12 class CRTMenuEntry;
13 class PrecisionMenu;
15 /**
16 * Expanded CRTRegion to support highlightable and clickable entries - felirx
17 * The user of this region will have total control over the positioning of
18 * objects at all times
19 * The base class behaves like the current CRTRegion used commonly
20 * It's identity is mapped to the CRT_NOMOUSESELECT value in TilesFramework
22 * Menu Entries are handled via pointers and are shared with whatever MenuClass
23 * is using them. This is done to keep the keyboard selections in sync with mouse
25 class CRTRegion : public TextRegion
27 public:
29 CRTRegion(FontWrapper *font);
30 virtual ~CRTRegion();
32 virtual void render();
33 virtual void clear();
35 virtual int handle_mouse(MouseEvent& event);
37 virtual void on_resize();
39 void attach_menu(PrecisionMenu* menu);
40 void detach_menu();
41 protected:
42 PrecisionMenu* m_attached_menu;
45 /**
46 * Enhanced Mouse handling for CRTRegion
47 * The behaviour is CRT_SINGESELECT
49 class CRTSingleSelect : public CRTRegion
51 public:
52 CRTSingleSelect(FontWrapper* font);
54 virtual int handle_mouse(MouseEvent& event);
57 #endif
58 #endif