diff options
Diffstat (limited to 'scene/2d/back_buffer_copy.h')
-rw-r--r-- | scene/2d/back_buffer_copy.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/scene/2d/back_buffer_copy.h b/scene/2d/back_buffer_copy.h new file mode 100644 index 0000000000..3a86ffa309 --- /dev/null +++ b/scene/2d/back_buffer_copy.h @@ -0,0 +1,41 @@ +#ifndef BACKBUFFERCOPY_H +#define BACKBUFFERCOPY_H + +#include "scene/2d/node_2d.h" + +class BackBufferCopy : public Node2D { + OBJ_TYPE( BackBufferCopy,Node2D); +public: + enum CopyMode { + COPY_MODE_DISALED, + COPY_MODE_RECT, + COPY_MODE_VIEWPORT + }; +private: + + Rect2 rect; + CopyMode copy_mode; + + void _update_copy_mode(); + +protected: + + static void _bind_methods(); + +public: + + void set_rect(const Rect2& p_rect); + Rect2 get_rect() const; + + void set_copy_mode(CopyMode p_mode); + CopyMode get_copy_mode() const; + + Rect2 get_item_rect() const; + + BackBufferCopy(); + ~BackBufferCopy(); +}; + +VARIANT_ENUM_CAST(BackBufferCopy::CopyMode); + +#endif // BACKBUFFERCOPY_H |