Rev | Line | |
---|
[395] | 1 | // Copyright (C) 2012-2015 ChaosForge Ltd
|
---|
[66] | 2 | // http://chaosforge.org/
|
---|
| 3 | //
|
---|
[395] | 4 | // This file is part of Nova libraries.
|
---|
| 5 | // For conditions of distribution and use, see copying.txt file in root folder.
|
---|
[66] | 6 |
|
---|
| 7 | /**
|
---|
| 8 | * @file gui_common.hh
|
---|
| 9 | * @author Kornel Kisielewicz
|
---|
| 10 | * @brief common GUI
|
---|
| 11 | */
|
---|
| 12 |
|
---|
| 13 | #ifndef NV_GUI_COMMON_HH
|
---|
| 14 | #define NV_GUI_COMMON_HH
|
---|
| 15 |
|
---|
[395] | 16 | #include <nv/common.hh>
|
---|
[368] | 17 | #include <nv/stl/handle.hh>
|
---|
| 18 | #include <nv/stl/flags.hh>
|
---|
[66] | 19 |
|
---|
| 20 | namespace nv
|
---|
| 21 | {
|
---|
| 22 | namespace gui
|
---|
| 23 | {
|
---|
[351] | 24 | enum flag
|
---|
| 25 | {
|
---|
| 26 | ENABLED, //!< GUI element accepts events
|
---|
| 27 | VISIBLE, //!< GUI element visible
|
---|
| 28 | DIRTY, //!< GUI element needs redraw
|
---|
| 29 | SELECTED, //!< GUI element selected
|
---|
| 30 | HOVER, //!< GUI element in hover zone
|
---|
[444] | 31 |
|
---|
| 32 | DIRTY_SELECT,
|
---|
| 33 | DIRTY_HOVER,
|
---|
[351] | 34 | };
|
---|
| 35 |
|
---|
[66] | 36 | enum alignment
|
---|
| 37 | {
|
---|
| 38 | ALIGN_TOP,
|
---|
| 39 | ALIGN_BOTTOM,
|
---|
| 40 | ALIGN_CENTER,
|
---|
| 41 | ALIGN_SCALE,
|
---|
| 42 | ALIGN_LEFT = ALIGN_TOP,
|
---|
| 43 | ALIGN_RIGHT = ALIGN_BOTTOM,
|
---|
| 44 | };
|
---|
| 45 |
|
---|
[69] | 46 | class render_data
|
---|
| 47 | {
|
---|
| 48 | public:
|
---|
[108] | 49 | virtual ~render_data(){}
|
---|
[69] | 50 | };
|
---|
| 51 |
|
---|
| 52 | class element;
|
---|
| 53 | class environment;
|
---|
[108] | 54 | class renderer;
|
---|
[69] | 55 |
|
---|
[270] | 56 | typedef nv::handle<> handle;
|
---|
| 57 |
|
---|
[351] | 58 | typedef nv::flags< 32, flag > flags;
|
---|
| 59 |
|
---|
[66] | 60 | } // namespace gui
|
---|
| 61 |
|
---|
| 62 | } // namespace nv
|
---|
| 63 |
|
---|
| 64 | #endif // NV_GUI_ELEMENT_HH
|
---|
Note: See
TracBrowser
for help on using the repository browser.