summaryrefslogtreecommitdiff
path: root/scene/gui/patch_9_frame.h
blob: 52e2324c3de64324309b738d3101bd9d6c2e5c24 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#ifndef PATCH_9_FRAME_H
#define PATCH_9_FRAME_H

#include "scene/gui/control.h"
/**
	@author Juan Linietsky <reduzio@gmail.com>
*/
class Patch9Frame : public Control {

	OBJ_TYPE(Patch9Frame,Control);

	bool draw_center;
	int margin[4];
	Rect2 region_rect;
	Color modulate;
	Ref<Texture> texture;
protected:

	void _notification(int p_what);
	virtual Size2 get_minimum_size() const;
	static void _bind_methods();

public:

	void set_texture(const Ref<Texture>& p_tex);
	Ref<Texture> get_texture() const;

	void set_modulate(const Color& p_tex);
	Color get_modulate() const;

	void set_patch_margin(Margin p_margin,int p_size);
	int get_patch_margin(Margin p_margin) const;

	void set_region_rect(const Rect2& p_region_rect);
	Rect2 get_region_rect() const;

	void set_draw_center(bool p_enable);
	bool get_draw_center() const;

	Patch9Frame();
	~Patch9Frame();

};
#endif // PATCH_9_FRAME_H