Main Page
Related Pages
Classes
Files
File List
scene
gui
range.h
1
/*************************************************************************/
2
/* range.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 RANGE_H
30
#define RANGE_H
31
32
#include "scene/gui/control.h"
36
class
Range
:
public
Control
{
37
38
OBJ_TYPE(
Range
,
Control
);
39
40
41
struct
Shared {
42
double
val,min,max;
43
double
step,page;
44
bool
exp_unit_value;
45
Set<Range*>
owners;
46
void
emit_value_changed();
47
void
emit_changed(
const
char
*p_what=
""
);
48
};
49
50
Shared *shared;
51
52
void
_ref_shared(Shared *p_shared);
53
void
_unref_shared();
54
55
void
_share(
Node
*p_range);
56
57
void
_value_changed_notify();
58
void
_changed_notify(
const
char
*p_what=
""
);
59
60
protected
:
61
62
virtual
void
_value_changed(
double
) {}
63
64
static
void
_bind_methods();
65
66
bool
_rounded_values;
67
public
:
68
69
void
set_val(
double
p_val);
70
void
set_min(
double
p_min);
71
void
set_max(
double
p_max);
72
void
set_step(
double
p_step);
73
void
set_page(
double
p_page);
74
void
set_unit_value(
double
p_value);
75
76
double
get_val()
const
;
77
double
get_min()
const
;
78
double
get_max()
const
;
79
double
get_step()
const
;
80
double
get_page()
const
;
81
double
get_unit_value()
const
;
82
83
void
set_rounded_values(
bool
p_enable);
84
bool
is_rounded_values()
const
;
85
86
void
set_exp_unit_value(
bool
p_enable);
87
bool
is_unit_value_exp()
const
;
88
89
void
share(
Range
*p_range);
90
void
unshare();
91
92
Range
();
93
~
Range
();
94
95
};
96
97
#endif
Node
Definition:
node.h:42
Set< Range * >
Range
Definition:
range.h:36
Control
Definition:
control.h:47
Generated on Wed Jul 13 2016 13:21:00 by
1.8.11