source: trunk/nv/gui/gui_ascii_renderer.hh @ 368

Last change on this file since 368 was 368, checked in by epyon, 10 years ago
  • massive restructuring
  • detail::data_base class for container/reference class base
File size: 1.1 KB
Line 
1// Copyright (C) 2015 ChaosForge Ltd
2// http://chaosforge.org/
3//
4// This file is part of NV Libraries.
5// For conditions of distribution and use, see copyright notice in nv.hh
6
7/**
8* @file gui_ascii_renderer.hh
9* @author Kornel Kisielewicz
10* @brief GUI Renderer
11*/
12
13#ifndef NV_GUI_ASCII_RENDERER_HH
14#define NV_GUI_ASCII_RENDERER_HH
15
16#include <nv/core/position.hh>
17#include <nv/stl/math.hh>
18#include <nv/interface/terminal.hh>
19#include <nv/gui/gui_renderer.hh>
20#include <nv/gui/gui_common.hh>
21#include <nv/gui/gui_style.hh>
22
23namespace nv
24{
25        namespace gui
26        {
27                class ascii_renderer : public renderer
28                {
29                public:
30                        ascii_renderer( terminal* t );
31                        virtual void redraw( element* e, uint32 );
32                        virtual void draw( element* e );
33                        virtual void draw();
34                        virtual void on_hover_change( element* e, bool hover );
35                        virtual void on_select_change( element* e, bool select );
36                        virtual rectangle get_area() const;
37                        virtual ~ascii_renderer();
38                private:
39                        terminal* m_terminal;
40                };
41
42        } // namespace gui
43
44} // namespace nv
45
46#endif // NV_GUI_RENDERER_HH
Note: See TracBrowser for help on using the repository browser.