Main Page
Related Pages
Classes
Files
File List
scene
gui
texture_progress.h
1
/*************************************************************************/
2
/* texture_progress.h */
3
/*************************************************************************/
4
/* This file is part of: */
5
/* GODOT ENGINE */
6
/* http://www.godotengine.org */
7
/*************************************************************************/
8
/* Copyright (c) 2007-2016 Juan Linietsky, Ariel Manzur. */
9
/* */
10
/* Permission is hereby granted, free of charge, to any person obtaining */
11
/* a copy of this software and associated documentation files (the */
12
/* "Software"), to deal in the Software without restriction, including */
13
/* without limitation the rights to use, copy, modify, merge, publish, */
14
/* distribute, sublicense, and/or sell copies of the Software, and to */
15
/* permit persons to whom the Software is furnished to do so, subject to */
16
/* the following conditions: */
17
/* */
18
/* The above copyright notice and this permission notice shall be */
19
/* included in all copies or substantial portions of the Software. */
20
/* */
21
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
22
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
23
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
24
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
25
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
26
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
27
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
28
/*************************************************************************/
29
#ifndef TEXTURE_PROGRESS_H
30
#define TEXTURE_PROGRESS_H
31
32
#include "scene/gui/range.h"
33
34
class
TextureProgress
:
public
Range
{
35
36
OBJ_TYPE(
TextureProgress
,
Range
);
37
38
Ref<Texture>
under;
39
Ref<Texture>
progress;
40
Ref<Texture>
over;
41
42
protected
:
43
44
static
void
_bind_methods();
45
void
_notification(
int
p_what);
46
public
:
47
48
enum
FillMode {
49
FILL_LEFT_TO_RIGHT=0,
50
FILL_RIGHT_TO_LEFT,
51
FILL_TOP_TO_BOTTOM,
52
FILL_BOTTOM_TO_TOP,
53
FILL_CLOCKWISE,
54
FILL_COUNTER_CLOCKWISE
55
};
56
57
void
set_fill_mode(
int
p_fill);
58
int
get_fill_mode();
59
60
void
set_radial_initial_angle(
float
p_angle);
61
float
get_radial_initial_angle();
62
63
void
set_fill_degrees(
float
p_angle);
64
float
get_fill_degrees();
65
66
void
set_radial_center_offset(
const
Point2
&p_off);
67
Point2
get_radial_center_offset();
68
69
void
set_under_texture(
const
Ref<Texture>
& p_texture);
70
Ref<Texture>
get_under_texture()
const
;
71
72
void
set_progress_texture(
const
Ref<Texture>
& p_texture);
73
Ref<Texture>
get_progress_texture()
const
;
74
75
void
set_over_texture(
const
Ref<Texture>
& p_texture);
76
Ref<Texture>
get_over_texture()
const
;
77
78
Size2
get_minimum_size()
const
;
79
80
TextureProgress
();
81
82
private
:
83
84
FillMode mode;
85
float
rad_init_angle;
86
float
rad_max_degrees;
87
Point2
rad_center_off;
88
89
Point2
unit_val_to_uv(
float
val);
90
Point2
get_relative_center();
91
};
92
93
#endif // TEXTURE_PROGRESS_H
Ref< Texture >
Range
Definition:
range.h:36
TextureProgress
Definition:
texture_progress.h:34
Vector2
Definition:
math_2d.h:65
Generated on Wed Jul 13 2016 13:21:01 by
1.8.11