mirror of
https://github.com/godotengine/godot.git
synced 2024-11-25 13:43:15 +00:00
Merge pull request #63595 from reduz/remove-signal-connect-binds
Remove Signal connect binds
This commit is contained in:
commit
7199314eb3
@ -1848,7 +1848,7 @@ void Thread::_start_func(void *ud) {
|
||||
::Thread::set_name(func_name);
|
||||
|
||||
Callable::CallError ce;
|
||||
t->target_callable.call(nullptr, 0, t->ret, ce);
|
||||
t->target_callable.callp(nullptr, 0, t->ret, ce);
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
t->running.clear();
|
||||
ERR_FAIL_MSG("Could not call function '" + func_name + "' to start thread " + t->get_id() + ": " + Variant::get_callable_error_text(t->target_callable, nullptr, 0, ce) + ".");
|
||||
@ -2428,7 +2428,7 @@ Error EngineDebugger::call_capture(void *p_user, const String &p_cmd, const Arra
|
||||
const Variant *args[2] = { &cmd, &data };
|
||||
Variant retval;
|
||||
Callable::CallError err;
|
||||
capture.call(args, 2, retval, err);
|
||||
capture.callp(args, 2, retval, err);
|
||||
ERR_FAIL_COND_V_MSG(err.error != Callable::CallError::CALL_OK, FAILED, "Error calling 'capture' to callable: " + Variant::get_callable_error_text(capture, args, 2, err));
|
||||
ERR_FAIL_COND_V_MSG(retval.get_type() != Variant::BOOL, FAILED, "Error calling 'capture' to callable: " + String(capture) + ". Return type is not bool.");
|
||||
r_captured = retval;
|
||||
|
@ -226,7 +226,7 @@ void MessageQueue::_call_function(const Callable &p_callable, const Variant *p_a
|
||||
|
||||
Callable::CallError ce;
|
||||
Variant ret;
|
||||
p_callable.call(argptrs, p_argcount, ret, ce);
|
||||
p_callable.callp(argptrs, p_argcount, ret, ce);
|
||||
if (p_show_error && ce.error != Callable::CallError::CALL_OK) {
|
||||
ERR_PRINT("Error calling deferred method: " + Variant::get_callable_error_text(p_callable, argptrs, p_argcount, ce) + ".");
|
||||
}
|
||||
|
@ -166,7 +166,6 @@ Object::Connection::operator Variant() const {
|
||||
d["signal"] = signal;
|
||||
d["callable"] = callable;
|
||||
d["flags"] = flags;
|
||||
d["binds"] = binds;
|
||||
return d;
|
||||
}
|
||||
|
||||
@ -189,9 +188,6 @@ Object::Connection::Connection(const Variant &p_variant) {
|
||||
if (d.has("flags")) {
|
||||
flags = d["flags"];
|
||||
}
|
||||
if (d.has("binds")) {
|
||||
binds = d["binds"];
|
||||
}
|
||||
}
|
||||
|
||||
bool Object::_predelete() {
|
||||
@ -973,8 +969,6 @@ Error Object::emit_signalp(const StringName &p_name, const Variant **p_args, int
|
||||
|
||||
OBJ_DEBUG_LOCK
|
||||
|
||||
Vector<const Variant *> bind_mem;
|
||||
|
||||
Error err = OK;
|
||||
|
||||
for (int i = 0; i < ssize; i++) {
|
||||
@ -989,28 +983,13 @@ Error Object::emit_signalp(const StringName &p_name, const Variant **p_args, int
|
||||
const Variant **args = p_args;
|
||||
int argc = p_argcount;
|
||||
|
||||
if (c.binds.size()) {
|
||||
//handle binds
|
||||
bind_mem.resize(p_argcount + c.binds.size());
|
||||
|
||||
for (int j = 0; j < p_argcount; j++) {
|
||||
bind_mem.write[j] = p_args[j];
|
||||
}
|
||||
for (int j = 0; j < c.binds.size(); j++) {
|
||||
bind_mem.write[p_argcount + j] = &c.binds[j];
|
||||
}
|
||||
|
||||
args = (const Variant **)bind_mem.ptr();
|
||||
argc = bind_mem.size();
|
||||
}
|
||||
|
||||
if (c.flags & CONNECT_DEFERRED) {
|
||||
MessageQueue::get_singleton()->push_callablep(c.callable, args, argc, true);
|
||||
} else {
|
||||
Callable::CallError ce;
|
||||
_emitting = true;
|
||||
Variant ret;
|
||||
c.callable.call(args, argc, ret, ce);
|
||||
c.callable.callp(args, argc, ret, ce);
|
||||
_emitting = false;
|
||||
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
@ -1196,7 +1175,7 @@ void Object::get_signals_connected_to_this(List<Connection> *p_connections) cons
|
||||
}
|
||||
}
|
||||
|
||||
Error Object::connect(const StringName &p_signal, const Callable &p_callable, const Vector<Variant> &p_binds, uint32_t p_flags) {
|
||||
Error Object::connect(const StringName &p_signal, const Callable &p_callable, uint32_t p_flags) {
|
||||
ERR_FAIL_COND_V_MSG(p_callable.is_null(), ERR_INVALID_PARAMETER, "Cannot connect to '" + p_signal + "': the provided callable is null.");
|
||||
|
||||
Object *target_object = p_callable.get_object();
|
||||
@ -1244,7 +1223,6 @@ Error Object::connect(const StringName &p_signal, const Callable &p_callable, co
|
||||
conn.callable = target;
|
||||
conn.signal = ::Signal(this, p_signal);
|
||||
conn.flags = p_flags;
|
||||
conn.binds = p_binds;
|
||||
slot.conn = conn;
|
||||
slot.cE = target_object->connections.push_back(conn);
|
||||
if (p_flags & CONNECT_REFERENCE_COUNTED) {
|
||||
@ -1492,7 +1470,7 @@ void Object::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("get_signal_connection_list", "signal"), &Object::_get_signal_connection_list);
|
||||
ClassDB::bind_method(D_METHOD("get_incoming_connections"), &Object::_get_incoming_connections);
|
||||
|
||||
ClassDB::bind_method(D_METHOD("connect", "signal", "callable", "binds", "flags"), &Object::connect, DEFVAL(Array()), DEFVAL(0));
|
||||
ClassDB::bind_method(D_METHOD("connect", "signal", "callable", "flags"), &Object::connect, DEFVAL(0));
|
||||
ClassDB::bind_method(D_METHOD("disconnect", "signal", "callable"), &Object::disconnect);
|
||||
ClassDB::bind_method(D_METHOD("is_connected", "signal", "callable"), &Object::is_connected);
|
||||
|
||||
|
@ -510,7 +510,6 @@ public:
|
||||
Callable callable;
|
||||
|
||||
uint32_t flags = 0;
|
||||
Vector<Variant> binds;
|
||||
bool operator<(const Connection &p_conn) const;
|
||||
|
||||
operator Variant() const;
|
||||
@ -829,7 +828,7 @@ public:
|
||||
int get_persistent_signal_connection_count() const;
|
||||
void get_signals_connected_to_this(List<Connection> *p_connections) const;
|
||||
|
||||
Error connect(const StringName &p_signal, const Callable &p_callable, const Vector<Variant> &p_binds = Vector<Variant>(), uint32_t p_flags = 0);
|
||||
Error connect(const StringName &p_signal, const Callable &p_callable, uint32_t p_flags = 0);
|
||||
void disconnect(const StringName &p_signal, const Callable &p_callable);
|
||||
bool is_connected(const StringName &p_signal, const Callable &p_callable) const;
|
||||
|
||||
|
@ -72,7 +72,7 @@ void WorkerThreadPool::_process_task(Task *p_task) {
|
||||
p_task->template_userdata->callback_indexed(work_index);
|
||||
} else {
|
||||
arg = work_index;
|
||||
p_task->callable.call((const Variant **)&argptr, 1, ret, ce);
|
||||
p_task->callable.callp((const Variant **)&argptr, 1, ret, ce);
|
||||
}
|
||||
|
||||
// This is the only way to ensure posting is done when all tasks are really complete.
|
||||
@ -123,7 +123,7 @@ void WorkerThreadPool::_process_task(Task *p_task) {
|
||||
} else {
|
||||
Callable::CallError ce;
|
||||
Variant ret;
|
||||
p_task->callable.call(nullptr, 0, ret, ce);
|
||||
p_task->callable.callp(nullptr, 0, ret, ce);
|
||||
}
|
||||
|
||||
p_task->completed = true;
|
||||
|
@ -441,7 +441,7 @@ Array Array::filter(const Callable &p_callable) const {
|
||||
|
||||
Variant result;
|
||||
Callable::CallError ce;
|
||||
p_callable.call(argptrs, 1, result, ce);
|
||||
p_callable.callp(argptrs, 1, result, ce);
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
ERR_FAIL_V_MSG(Array(), "Error calling method from 'filter': " + Variant::get_callable_error_text(p_callable, argptrs, 1, ce));
|
||||
}
|
||||
@ -467,7 +467,7 @@ Array Array::map(const Callable &p_callable) const {
|
||||
|
||||
Variant result;
|
||||
Callable::CallError ce;
|
||||
p_callable.call(argptrs, 1, result, ce);
|
||||
p_callable.callp(argptrs, 1, result, ce);
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
ERR_FAIL_V_MSG(Array(), "Error calling method from 'map': " + Variant::get_callable_error_text(p_callable, argptrs, 1, ce));
|
||||
}
|
||||
@ -493,7 +493,7 @@ Variant Array::reduce(const Callable &p_callable, const Variant &p_accum) const
|
||||
|
||||
Variant result;
|
||||
Callable::CallError ce;
|
||||
p_callable.call(argptrs, 2, result, ce);
|
||||
p_callable.callp(argptrs, 2, result, ce);
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
ERR_FAIL_V_MSG(Variant(), "Error calling method from 'reduce': " + Variant::get_callable_error_text(p_callable, argptrs, 2, ce));
|
||||
}
|
||||
@ -510,7 +510,7 @@ bool Array::any(const Callable &p_callable) const {
|
||||
|
||||
Variant result;
|
||||
Callable::CallError ce;
|
||||
p_callable.call(argptrs, 1, result, ce);
|
||||
p_callable.callp(argptrs, 1, result, ce);
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
ERR_FAIL_V_MSG(false, "Error calling method from 'any': " + Variant::get_callable_error_text(p_callable, argptrs, 1, ce));
|
||||
}
|
||||
@ -532,7 +532,7 @@ bool Array::all(const Callable &p_callable) const {
|
||||
|
||||
Variant result;
|
||||
Callable::CallError ce;
|
||||
p_callable.call(argptrs, 1, result, ce);
|
||||
p_callable.callp(argptrs, 1, result, ce);
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
ERR_FAIL_V_MSG(false, "Error calling method from 'all': " + Variant::get_callable_error_text(p_callable, argptrs, 1, ce));
|
||||
}
|
||||
|
@ -36,11 +36,11 @@
|
||||
#include "core/object/ref_counted.h"
|
||||
#include "core/object/script_language.h"
|
||||
|
||||
void Callable::call_deferred(const Variant **p_arguments, int p_argcount) const {
|
||||
void Callable::call_deferredp(const Variant **p_arguments, int p_argcount) const {
|
||||
MessageQueue::get_singleton()->push_callablep(*this, p_arguments, p_argcount);
|
||||
}
|
||||
|
||||
void Callable::call(const Variant **p_arguments, int p_argcount, Variant &r_return_value, CallError &r_call_error) const {
|
||||
void Callable::callp(const Variant **p_arguments, int p_argcount, Variant &r_return_value, CallError &r_call_error) const {
|
||||
if (is_null()) {
|
||||
r_call_error.error = CallError::CALL_ERROR_INSTANCE_IS_NULL;
|
||||
r_call_error.argument = 0;
|
||||
@ -63,7 +63,7 @@ void Callable::call(const Variant **p_arguments, int p_argcount, Variant &r_retu
|
||||
}
|
||||
}
|
||||
|
||||
Error Callable::rpc(int p_id, const Variant **p_arguments, int p_argcount, CallError &r_call_error) const {
|
||||
Error Callable::rpcp(int p_id, const Variant **p_arguments, int p_argcount, CallError &r_call_error) const {
|
||||
if (is_null()) {
|
||||
r_call_error.error = CallError::CALL_ERROR_INSTANCE_IS_NULL;
|
||||
r_call_error.argument = 0;
|
||||
@ -79,7 +79,7 @@ Error Callable::rpc(int p_id, const Variant **p_arguments, int p_argcount, CallE
|
||||
}
|
||||
}
|
||||
|
||||
Callable Callable::bind(const Variant **p_arguments, int p_argcount) const {
|
||||
Callable Callable::bindp(const Variant **p_arguments, int p_argcount) const {
|
||||
Vector<Variant> args;
|
||||
args.resize(p_argcount);
|
||||
for (int i = 0; i < p_argcount; i++) {
|
||||
@ -390,7 +390,7 @@ Error Signal::connect(const Callable &p_callable, uint32_t p_flags) {
|
||||
Object *object = get_object();
|
||||
ERR_FAIL_COND_V(!object, ERR_UNCONFIGURED);
|
||||
|
||||
return object->connect(name, p_callable, varray(), p_flags);
|
||||
return object->connect(name, p_callable, p_flags);
|
||||
}
|
||||
|
||||
void Signal::disconnect(const Callable &p_callable) {
|
||||
@ -438,7 +438,7 @@ bool CallableComparator::operator()(const Variant &p_l, const Variant &p_r) cons
|
||||
const Variant *args[2] = { &p_l, &p_r };
|
||||
Callable::CallError err;
|
||||
Variant res;
|
||||
func.call(args, 2, res, err);
|
||||
func.callp(args, 2, res, err);
|
||||
ERR_FAIL_COND_V_MSG(err.error != Callable::CallError::CALL_OK, false,
|
||||
"Error calling compare method: " + Variant::get_callable_error_text(func, args, 2, err));
|
||||
return res;
|
||||
|
@ -45,6 +45,7 @@ class CallableCustom;
|
||||
// but can be optimized or customized.
|
||||
|
||||
// Enforce 16 bytes with `alignas` to avoid arch-specific alignment issues on x86 vs armv7.
|
||||
|
||||
class Callable {
|
||||
alignas(8) StringName method;
|
||||
union {
|
||||
@ -68,10 +69,10 @@ public:
|
||||
int expected = 0;
|
||||
};
|
||||
|
||||
void call(const Variant **p_arguments, int p_argcount, Variant &r_return_value, CallError &r_call_error) const;
|
||||
void call_deferred(const Variant **p_arguments, int p_argcount) const;
|
||||
void callp(const Variant **p_arguments, int p_argcount, Variant &r_return_value, CallError &r_call_error) const;
|
||||
void call_deferredp(const Variant **p_arguments, int p_argcount) const;
|
||||
|
||||
Error rpc(int p_id, const Variant **p_arguments, int p_argcount, CallError &r_call_error) const;
|
||||
Error rpcp(int p_id, const Variant **p_arguments, int p_argcount, CallError &r_call_error) const;
|
||||
|
||||
_FORCE_INLINE_ bool is_null() const {
|
||||
return method == StringName() && object == 0;
|
||||
@ -84,7 +85,10 @@ public:
|
||||
}
|
||||
bool is_valid() const;
|
||||
|
||||
Callable bind(const Variant **p_arguments, int p_argcount) const;
|
||||
template <typename... VarArgs>
|
||||
Callable bind(VarArgs... p_args);
|
||||
|
||||
Callable bindp(const Variant **p_arguments, int p_argcount) const;
|
||||
Callable unbind(int p_argcount) const;
|
||||
|
||||
Object *get_object() const;
|
||||
|
@ -96,7 +96,7 @@ void CallableCustomBind::call(const Variant **p_arguments, int p_argcount, Varia
|
||||
args[i + p_argcount] = (const Variant *)&binds[i];
|
||||
}
|
||||
|
||||
callable.call(args, p_argcount + binds.size(), r_return_value, r_call_error);
|
||||
callable.callp(args, p_argcount + binds.size(), r_return_value, r_call_error);
|
||||
}
|
||||
|
||||
CallableCustomBind::CallableCustomBind(const Callable &p_callable, const Vector<Variant> &p_binds) {
|
||||
@ -171,7 +171,7 @@ void CallableCustomUnbind::call(const Variant **p_arguments, int p_argcount, Var
|
||||
r_call_error.expected = argcount;
|
||||
return;
|
||||
}
|
||||
callable.call(p_arguments, p_argcount - argcount, r_return_value, r_call_error);
|
||||
callable.callp(p_arguments, p_argcount - argcount, r_return_value, r_call_error);
|
||||
}
|
||||
|
||||
CallableCustomUnbind::CallableCustomUnbind(const Callable &p_callable, int p_argcount) {
|
||||
@ -181,28 +181,3 @@ CallableCustomUnbind::CallableCustomUnbind(const Callable &p_callable, int p_arg
|
||||
|
||||
CallableCustomUnbind::~CallableCustomUnbind() {
|
||||
}
|
||||
|
||||
Callable callable_bind(const Callable &p_callable, const Variant &p_arg1) {
|
||||
const Variant *args[1] = { &p_arg1 };
|
||||
return p_callable.bind(args, 1);
|
||||
}
|
||||
|
||||
Callable callable_bind(const Callable &p_callable, const Variant &p_arg1, const Variant &p_arg2) {
|
||||
const Variant *args[2] = { &p_arg1, &p_arg2 };
|
||||
return p_callable.bind(args, 2);
|
||||
}
|
||||
|
||||
Callable callable_bind(const Callable &p_callable, const Variant &p_arg1, const Variant &p_arg2, const Variant &p_arg3) {
|
||||
const Variant *args[3] = { &p_arg1, &p_arg2, &p_arg3 };
|
||||
return p_callable.bind(args, 3);
|
||||
}
|
||||
|
||||
Callable callable_bind(const Callable &p_callable, const Variant &p_arg1, const Variant &p_arg2, const Variant &p_arg3, const Variant &p_arg4) {
|
||||
const Variant *args[4] = { &p_arg1, &p_arg2, &p_arg3, &p_arg4 };
|
||||
return p_callable.bind(args, 4);
|
||||
}
|
||||
|
||||
Callable callable_bind(const Callable &p_callable, const Variant &p_arg1, const Variant &p_arg2, const Variant &p_arg3, const Variant &p_arg4, const Variant &p_arg5) {
|
||||
const Variant *args[5] = { &p_arg1, &p_arg2, &p_arg3, &p_arg4, &p_arg5 };
|
||||
return p_callable.bind(args, 5);
|
||||
}
|
||||
|
@ -84,10 +84,4 @@ public:
|
||||
virtual ~CallableCustomUnbind();
|
||||
};
|
||||
|
||||
Callable callable_bind(const Callable &p_callable, const Variant &p_arg1);
|
||||
Callable callable_bind(const Callable &p_callable, const Variant &p_arg1, const Variant &p_arg2);
|
||||
Callable callable_bind(const Callable &p_callable, const Variant &p_arg1, const Variant &p_arg2, const Variant &p_arg3);
|
||||
Callable callable_bind(const Callable &p_callable, const Variant &p_arg1, const Variant &p_arg2, const Variant &p_arg3, const Variant &p_arg4);
|
||||
Callable callable_bind(const Callable &p_callable, const Variant &p_arg1, const Variant &p_arg2, const Variant &p_arg3, const Variant &p_arg4, const Variant &p_arg5);
|
||||
|
||||
#endif // CALLABLE_BIND_H
|
||||
|
@ -784,4 +784,14 @@ const Variant::ObjData &Variant::_get_obj() const {
|
||||
|
||||
String vformat(const String &p_text, const Variant &p1 = Variant(), const Variant &p2 = Variant(), const Variant &p3 = Variant(), const Variant &p4 = Variant(), const Variant &p5 = Variant());
|
||||
|
||||
template <typename... VarArgs>
|
||||
Callable Callable::bind(VarArgs... p_args) {
|
||||
Variant args[sizeof...(p_args) + 1] = { p_args..., Variant() }; // +1 makes sure zero sized arrays are also supported.
|
||||
const Variant *argptrs[sizeof...(p_args) + 1];
|
||||
for (uint32_t i = 0; i < sizeof...(p_args); i++) {
|
||||
argptrs[i] = &args[i];
|
||||
}
|
||||
return bindp(sizeof...(p_args) == 0 ? nullptr : (const Variant **)argptrs, sizeof...(p_args));
|
||||
}
|
||||
|
||||
#endif // VARIANT_H
|
||||
|
@ -895,17 +895,17 @@ struct _VariantCall {
|
||||
|
||||
static void func_Callable_call(Variant *v, const Variant **p_args, int p_argcount, Variant &r_ret, Callable::CallError &r_error) {
|
||||
Callable *callable = VariantGetInternalPtr<Callable>::get_ptr(v);
|
||||
callable->call(p_args, p_argcount, r_ret, r_error);
|
||||
callable->callp(p_args, p_argcount, r_ret, r_error);
|
||||
}
|
||||
|
||||
static void func_Callable_call_deferred(Variant *v, const Variant **p_args, int p_argcount, Variant &r_ret, Callable::CallError &r_error) {
|
||||
Callable *callable = VariantGetInternalPtr<Callable>::get_ptr(v);
|
||||
callable->call_deferred(p_args, p_argcount);
|
||||
callable->call_deferredp(p_args, p_argcount);
|
||||
}
|
||||
|
||||
static void func_Callable_rpc(Variant *v, const Variant **p_args, int p_argcount, Variant &r_ret, Callable::CallError &r_error) {
|
||||
Callable *callable = VariantGetInternalPtr<Callable>::get_ptr(v);
|
||||
callable->rpc(0, p_args, p_argcount, r_error);
|
||||
callable->rpcp(0, p_args, p_argcount, r_error);
|
||||
}
|
||||
|
||||
static void func_Callable_rpc_id(Variant *v, const Variant **p_args, int p_argcount, Variant &r_ret, Callable::CallError &r_error) {
|
||||
@ -920,13 +920,13 @@ struct _VariantCall {
|
||||
r_error.expected = Variant::INT;
|
||||
} else {
|
||||
Callable *callable = VariantGetInternalPtr<Callable>::get_ptr(v);
|
||||
callable->rpc(*p_args[0], &p_args[1], p_argcount - 1, r_error);
|
||||
callable->rpcp(*p_args[0], &p_args[1], p_argcount - 1, r_error);
|
||||
}
|
||||
}
|
||||
|
||||
static void func_Callable_bind(Variant *v, const Variant **p_args, int p_argcount, Variant &r_ret, Callable::CallError &r_error) {
|
||||
Callable *callable = VariantGetInternalPtr<Callable>::get_ptr(v);
|
||||
r_ret = callable->bind(p_args, p_argcount);
|
||||
r_ret = callable->bindp(p_args, p_argcount);
|
||||
}
|
||||
|
||||
static void func_Signal_emit(Variant *v, const Variant **p_args, int p_argcount, Variant &r_ret, Callable::CallError &r_error) {
|
||||
|
@ -152,11 +152,9 @@
|
||||
<return type="int" enum="Error" />
|
||||
<argument index="0" name="signal" type="StringName" />
|
||||
<argument index="1" name="callable" type="Callable" />
|
||||
<argument index="2" name="binds" type="Array" default="[]" />
|
||||
<argument index="3" name="flags" type="int" default="0" />
|
||||
<argument index="2" name="flags" type="int" default="0" />
|
||||
<description>
|
||||
Connects a [code]signal[/code] to a [code]callable[/code]. Pass optional [code]binds[/code] to the call as an [Array] of parameters. These parameters will be passed to the [Callable]'s method after any parameter used in the call to [method emit_signal]. Use [code]flags[/code] to set deferred or one-shot connections. See [enum ConnectFlags] constants.
|
||||
[b]Note:[/b] This method is the legacy implementation for connecting signals. The recommended modern approach is to use [method Signal.connect] and to use [method Callable.bind] to add and validate parameter binds. Both syntaxes are shown below.
|
||||
Connects a [code]signal[/code] to a [code]callable[/code]. Use [code]flags[/code] to set deferred or one-shot connections. See [enum ConnectFlags] constants.
|
||||
A signal can only be connected once to a [Callable]. It will print an error if already connected, unless the signal was connected with [constant CONNECT_REFERENCE_COUNTED]. To avoid this, first, use [method is_connected] to check for existing connections.
|
||||
If the callable's target is destroyed in the game's lifecycle, the connection will be lost.
|
||||
[b]Examples with recommended syntax:[/b]
|
||||
|
@ -720,7 +720,7 @@ InputEventConfigurationDialog::InputEventConfigurationDialog() {
|
||||
for (int i = 0; i < MOD_MAX; i++) {
|
||||
String name = mods[i];
|
||||
mod_checkboxes[i] = memnew(CheckBox);
|
||||
mod_checkboxes[i]->connect("toggled", callable_mp(this, &InputEventConfigurationDialog::_mod_toggled), varray(i));
|
||||
mod_checkboxes[i]->connect("toggled", callable_mp(this, &InputEventConfigurationDialog::_mod_toggled).bind(i));
|
||||
mod_checkboxes[i]->set_text(name);
|
||||
mod_container->add_child(mod_checkboxes[i]);
|
||||
}
|
||||
|
@ -654,9 +654,9 @@ void AnimationBezierTrackEdit::set_timeline(AnimationTimelineEdit *p_timeline) {
|
||||
|
||||
void AnimationBezierTrackEdit::set_editor(AnimationTrackEditor *p_editor) {
|
||||
editor = p_editor;
|
||||
connect("clear_selection", Callable(editor, "_clear_selection"), varray(false));
|
||||
connect("select_key", Callable(editor, "_key_selected"), varray(), CONNECT_DEFERRED);
|
||||
connect("deselect_key", Callable(editor, "_key_deselected"), varray(), CONNECT_DEFERRED);
|
||||
connect("clear_selection", Callable(editor, "_clear_selection").bind(false));
|
||||
connect("select_key", Callable(editor, "_key_selected"), CONNECT_DEFERRED);
|
||||
connect("deselect_key", Callable(editor, "_key_deselected"), CONNECT_DEFERRED);
|
||||
}
|
||||
|
||||
void AnimationBezierTrackEdit::_play_position_draw() {
|
||||
|
@ -3428,7 +3428,7 @@ void AnimationTrackEditor::set_root(Node *p_root) {
|
||||
root = p_root;
|
||||
|
||||
if (root) {
|
||||
root->connect("tree_exiting", callable_mp(this, &AnimationTrackEditor::_root_removed), make_binds(), CONNECT_ONESHOT);
|
||||
root->connect("tree_exiting", callable_mp(this, &AnimationTrackEditor::_root_removed), CONNECT_ONESHOT);
|
||||
}
|
||||
|
||||
_update_tracks();
|
||||
@ -4514,20 +4514,20 @@ void AnimationTrackEditor::_update_tracks() {
|
||||
}
|
||||
|
||||
track_edit->connect("timeline_changed", callable_mp(this, &AnimationTrackEditor::_timeline_changed));
|
||||
track_edit->connect("remove_request", callable_mp(this, &AnimationTrackEditor::_track_remove_request), varray(), CONNECT_DEFERRED);
|
||||
track_edit->connect("dropped", callable_mp(this, &AnimationTrackEditor::_dropped_track), varray(), CONNECT_DEFERRED);
|
||||
track_edit->connect("insert_key", callable_mp(this, &AnimationTrackEditor::_insert_key_from_track), varray(i), CONNECT_DEFERRED);
|
||||
track_edit->connect("select_key", callable_mp(this, &AnimationTrackEditor::_key_selected), varray(i), CONNECT_DEFERRED);
|
||||
track_edit->connect("deselect_key", callable_mp(this, &AnimationTrackEditor::_key_deselected), varray(i), CONNECT_DEFERRED);
|
||||
track_edit->connect("remove_request", callable_mp(this, &AnimationTrackEditor::_track_remove_request), CONNECT_DEFERRED);
|
||||
track_edit->connect("dropped", callable_mp(this, &AnimationTrackEditor::_dropped_track), CONNECT_DEFERRED);
|
||||
track_edit->connect("insert_key", callable_mp(this, &AnimationTrackEditor::_insert_key_from_track).bind(i), CONNECT_DEFERRED);
|
||||
track_edit->connect("select_key", callable_mp(this, &AnimationTrackEditor::_key_selected).bind(i), CONNECT_DEFERRED);
|
||||
track_edit->connect("deselect_key", callable_mp(this, &AnimationTrackEditor::_key_deselected).bind(i), CONNECT_DEFERRED);
|
||||
track_edit->connect("move_selection_begin", callable_mp(this, &AnimationTrackEditor::_move_selection_begin));
|
||||
track_edit->connect("move_selection", callable_mp(this, &AnimationTrackEditor::_move_selection));
|
||||
track_edit->connect("move_selection_commit", callable_mp(this, &AnimationTrackEditor::_move_selection_commit));
|
||||
track_edit->connect("move_selection_cancel", callable_mp(this, &AnimationTrackEditor::_move_selection_cancel));
|
||||
|
||||
track_edit->connect("duplicate_request", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed), varray(EDIT_DUPLICATE_SELECTION), CONNECT_DEFERRED);
|
||||
track_edit->connect("duplicate_transpose_request", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed), varray(EDIT_DUPLICATE_TRANSPOSED), CONNECT_DEFERRED);
|
||||
track_edit->connect("create_reset_request", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed), varray(EDIT_ADD_RESET_KEY), CONNECT_DEFERRED);
|
||||
track_edit->connect("delete_request", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed), varray(EDIT_DELETE_SELECTION), CONNECT_DEFERRED);
|
||||
track_edit->connect("duplicate_request", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed).bind(EDIT_DUPLICATE_SELECTION), CONNECT_DEFERRED);
|
||||
track_edit->connect("duplicate_transpose_request", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed).bind(EDIT_DUPLICATE_TRANSPOSED), CONNECT_DEFERRED);
|
||||
track_edit->connect("create_reset_request", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed).bind(EDIT_ADD_RESET_KEY), CONNECT_DEFERRED);
|
||||
track_edit->connect("delete_request", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed).bind(EDIT_DELETE_SELECTION), CONNECT_DEFERRED);
|
||||
}
|
||||
}
|
||||
|
||||
@ -6477,7 +6477,7 @@ AnimationTrackEditor::AnimationTrackEditor() {
|
||||
optimize_max_angle->set_value(22);
|
||||
|
||||
optimize_dialog->set_ok_button_text(TTR("Optimize"));
|
||||
optimize_dialog->connect("confirmed", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed), varray(EDIT_OPTIMIZE_ANIMATION_CONFIRM));
|
||||
optimize_dialog->connect("confirmed", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed).bind(EDIT_OPTIMIZE_ANIMATION_CONFIRM));
|
||||
|
||||
//
|
||||
|
||||
@ -6503,7 +6503,7 @@ AnimationTrackEditor::AnimationTrackEditor() {
|
||||
cleanup_dialog->set_title(TTR("Clean-Up Animation(s) (NO UNDO!)"));
|
||||
cleanup_dialog->set_ok_button_text(TTR("Clean-Up"));
|
||||
|
||||
cleanup_dialog->connect("confirmed", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed), varray(EDIT_CLEAN_UP_ANIMATION_CONFIRM));
|
||||
cleanup_dialog->connect("confirmed", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed).bind(EDIT_CLEAN_UP_ANIMATION_CONFIRM));
|
||||
|
||||
//
|
||||
scale_dialog = memnew(ConfirmationDialog);
|
||||
@ -6515,7 +6515,7 @@ AnimationTrackEditor::AnimationTrackEditor() {
|
||||
scale->set_max(99999);
|
||||
scale->set_step(0.001);
|
||||
vbc->add_margin_child(TTR("Scale Ratio:"), scale);
|
||||
scale_dialog->connect("confirmed", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed), varray(EDIT_SCALE_CONFIRM));
|
||||
scale_dialog->connect("confirmed", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed).bind(EDIT_SCALE_CONFIRM));
|
||||
add_child(scale_dialog);
|
||||
|
||||
track_copy_dialog = memnew(ConfirmationDialog);
|
||||
@ -6536,7 +6536,7 @@ AnimationTrackEditor::AnimationTrackEditor() {
|
||||
track_copy_select->set_v_size_flags(SIZE_EXPAND_FILL);
|
||||
track_copy_select->set_hide_root(true);
|
||||
track_vbox->add_child(track_copy_select);
|
||||
track_copy_dialog->connect("confirmed", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed), varray(EDIT_COPY_TRACKS_CONFIRM));
|
||||
track_copy_dialog->connect("confirmed", callable_mp(this, &AnimationTrackEditor::_edit_menu_pressed).bind(EDIT_COPY_TRACKS_CONFIRM));
|
||||
}
|
||||
|
||||
AnimationTrackEditor::~AnimationTrackEditor() {
|
||||
|
@ -200,6 +200,7 @@ Ref<AudioStreamPreview> AudioStreamPreviewGenerator::generate_preview(const Ref<
|
||||
|
||||
if (preview->playback.is_valid()) {
|
||||
preview->thread = memnew(Thread);
|
||||
preview->thread->set_name("AudioStreamPreviewGenerator");
|
||||
preview->thread->start(_preview_thread, preview);
|
||||
}
|
||||
|
||||
|
@ -627,7 +627,7 @@ void ConnectionsDock::_connect(ConnectDialog::ConnectionData p_cd) {
|
||||
|
||||
Callable callable = p_cd.get_callable();
|
||||
undo_redo->create_action(vformat(TTR("Connect '%s' to '%s'"), String(p_cd.signal), String(p_cd.method)));
|
||||
undo_redo->add_do_method(source, "connect", p_cd.signal, callable, varray(), p_cd.flags);
|
||||
undo_redo->add_do_method(source, "connect", p_cd.signal, callable, p_cd.flags);
|
||||
undo_redo->add_undo_method(source, "disconnect", p_cd.signal, callable);
|
||||
undo_redo->add_do_method(this, "update_tree");
|
||||
undo_redo->add_undo_method(this, "update_tree");
|
||||
|
@ -97,7 +97,7 @@ public:
|
||||
for (int i = 0; i < binds.size(); i++) {
|
||||
argptrs[i] = &binds[i];
|
||||
}
|
||||
return Callable(target, method).bind(argptrs, binds.size());
|
||||
return Callable(target, method).bindp(argptrs, binds.size());
|
||||
} else {
|
||||
return Callable(target, method);
|
||||
}
|
||||
|
@ -92,17 +92,17 @@ ScriptEditorDebugger *EditorDebuggerNode::_add_debugger() {
|
||||
ScriptEditorDebugger *node = memnew(ScriptEditorDebugger);
|
||||
|
||||
int id = tabs->get_tab_count();
|
||||
node->connect("stop_requested", callable_mp(this, &EditorDebuggerNode::_debugger_wants_stop), varray(id));
|
||||
node->connect("stopped", callable_mp(this, &EditorDebuggerNode::_debugger_stopped), varray(id));
|
||||
node->connect("stack_frame_selected", callable_mp(this, &EditorDebuggerNode::_stack_frame_selected), varray(id));
|
||||
node->connect("error_selected", callable_mp(this, &EditorDebuggerNode::_error_selected), varray(id));
|
||||
node->connect("breakpoint_selected", callable_mp(this, &EditorDebuggerNode::_error_selected), varray(id));
|
||||
node->connect("stop_requested", callable_mp(this, &EditorDebuggerNode::_debugger_wants_stop).bind(id));
|
||||
node->connect("stopped", callable_mp(this, &EditorDebuggerNode::_debugger_stopped).bind(id));
|
||||
node->connect("stack_frame_selected", callable_mp(this, &EditorDebuggerNode::_stack_frame_selected).bind(id));
|
||||
node->connect("error_selected", callable_mp(this, &EditorDebuggerNode::_error_selected).bind(id));
|
||||
node->connect("breakpoint_selected", callable_mp(this, &EditorDebuggerNode::_error_selected).bind(id));
|
||||
node->connect("clear_execution", callable_mp(this, &EditorDebuggerNode::_clear_execution));
|
||||
node->connect("breaked", callable_mp(this, &EditorDebuggerNode::_breaked), varray(id));
|
||||
node->connect("remote_tree_updated", callable_mp(this, &EditorDebuggerNode::_remote_tree_updated), varray(id));
|
||||
node->connect("remote_object_updated", callable_mp(this, &EditorDebuggerNode::_remote_object_updated), varray(id));
|
||||
node->connect("remote_object_property_updated", callable_mp(this, &EditorDebuggerNode::_remote_object_property_updated), varray(id));
|
||||
node->connect("remote_object_requested", callable_mp(this, &EditorDebuggerNode::_remote_object_requested), varray(id));
|
||||
node->connect("breaked", callable_mp(this, &EditorDebuggerNode::_breaked).bind(id));
|
||||
node->connect("remote_tree_updated", callable_mp(this, &EditorDebuggerNode::_remote_tree_updated).bind(id));
|
||||
node->connect("remote_object_updated", callable_mp(this, &EditorDebuggerNode::_remote_object_updated).bind(id));
|
||||
node->connect("remote_object_property_updated", callable_mp(this, &EditorDebuggerNode::_remote_object_property_updated).bind(id));
|
||||
node->connect("remote_object_requested", callable_mp(this, &EditorDebuggerNode::_remote_object_requested).bind(id));
|
||||
node->connect("errors_cleared", callable_mp(this, &EditorDebuggerNode::_update_errors));
|
||||
|
||||
if (tabs->get_tab_count() > 0) {
|
||||
|
@ -796,7 +796,7 @@ EditorVisualProfiler::EditorVisualProfiler() {
|
||||
frame_delay->set_wait_time(0.1);
|
||||
frame_delay->set_one_shot(true);
|
||||
add_child(frame_delay);
|
||||
frame_delay->connect("timeout", callable_mp(this, &EditorVisualProfiler::_update_frame), make_binds(false));
|
||||
frame_delay->connect("timeout", callable_mp(this, &EditorVisualProfiler::_update_frame).bind(false));
|
||||
|
||||
plot_delay = memnew(Timer);
|
||||
plot_delay->set_wait_time(0.1);
|
||||
|
@ -753,7 +753,7 @@ void ScriptEditorDebugger::_parse_message(const String &p_msg, const Array &p_da
|
||||
const Variant *args[2] = { &cmd, &data };
|
||||
Variant retval;
|
||||
Callable::CallError err;
|
||||
c.call(args, 2, retval, err);
|
||||
c.callp(args, 2, retval, err);
|
||||
ERR_FAIL_COND_MSG(err.error != Callable::CallError::CALL_OK, "Error calling 'capture' to callable: " + Variant::get_callable_error_text(c, args, 2, err));
|
||||
ERR_FAIL_COND_MSG(retval.get_type() != Variant::BOOL, "Error calling 'capture' to callable: " + String(c) + ". Return type is not bool.");
|
||||
parsed = retval;
|
||||
@ -1877,7 +1877,7 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
profiler = memnew(EditorProfiler);
|
||||
profiler->set_name(TTR("Profiler"));
|
||||
tabs->add_child(profiler);
|
||||
profiler->connect("enable_profiling", callable_mp(this, &ScriptEditorDebugger::_profiler_activate), varray(PROFILER_SCRIPTS_SERVERS));
|
||||
profiler->connect("enable_profiling", callable_mp(this, &ScriptEditorDebugger::_profiler_activate).bind(PROFILER_SCRIPTS_SERVERS));
|
||||
profiler->connect("break_request", callable_mp(this, &ScriptEditorDebugger::_profiler_seeked));
|
||||
}
|
||||
|
||||
@ -1885,14 +1885,14 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
visual_profiler = memnew(EditorVisualProfiler);
|
||||
visual_profiler->set_name(TTR("Visual Profiler"));
|
||||
tabs->add_child(visual_profiler);
|
||||
visual_profiler->connect("enable_profiling", callable_mp(this, &ScriptEditorDebugger::_profiler_activate), varray(PROFILER_VISUAL));
|
||||
visual_profiler->connect("enable_profiling", callable_mp(this, &ScriptEditorDebugger::_profiler_activate).bind(PROFILER_VISUAL));
|
||||
}
|
||||
|
||||
{ //network profiler
|
||||
network_profiler = memnew(EditorNetworkProfiler);
|
||||
network_profiler->set_name(TTR("Network Profiler"));
|
||||
tabs->add_child(network_profiler);
|
||||
network_profiler->connect("enable_profiling", callable_mp(this, &ScriptEditorDebugger::_profiler_activate), varray(PROFILER_NETWORK));
|
||||
network_profiler->connect("enable_profiling", callable_mp(this, &ScriptEditorDebugger::_profiler_activate).bind(PROFILER_NETWORK));
|
||||
}
|
||||
|
||||
{ //monitors
|
||||
|
@ -1007,11 +1007,11 @@ void EditorAudioBuses::_update_buses() {
|
||||
bool is_master = (i == 0);
|
||||
EditorAudioBus *audio_bus = memnew(EditorAudioBus(this, is_master));
|
||||
bus_hb->add_child(audio_bus);
|
||||
audio_bus->connect("delete_request", callable_mp(this, &EditorAudioBuses::_delete_bus), varray(audio_bus), CONNECT_DEFERRED);
|
||||
audio_bus->connect("duplicate_request", callable_mp(this, &EditorAudioBuses::_duplicate_bus), varray(), CONNECT_DEFERRED);
|
||||
audio_bus->connect("vol_reset_request", callable_mp(this, &EditorAudioBuses::_reset_bus_volume), varray(audio_bus), CONNECT_DEFERRED);
|
||||
audio_bus->connect("delete_request", callable_mp(this, &EditorAudioBuses::_delete_bus).bind(audio_bus), CONNECT_DEFERRED);
|
||||
audio_bus->connect("duplicate_request", callable_mp(this, &EditorAudioBuses::_duplicate_bus), CONNECT_DEFERRED);
|
||||
audio_bus->connect("vol_reset_request", callable_mp(this, &EditorAudioBuses::_reset_bus_volume).bind(audio_bus), CONNECT_DEFERRED);
|
||||
audio_bus->connect("drop_end_request", callable_mp(this, &EditorAudioBuses::_request_drop_end));
|
||||
audio_bus->connect("dropped", callable_mp(this, &EditorAudioBuses::_drop_at_index), varray(), CONNECT_DEFERRED);
|
||||
audio_bus->connect("dropped", callable_mp(this, &EditorAudioBuses::_drop_at_index), CONNECT_DEFERRED);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1154,7 +1154,7 @@ void EditorAudioBuses::_request_drop_end() {
|
||||
|
||||
bus_hb->add_child(drop_end);
|
||||
drop_end->set_custom_minimum_size(Object::cast_to<Control>(bus_hb->get_child(0))->get_size());
|
||||
drop_end->connect("dropped", callable_mp(this, &EditorAudioBuses::_drop_at_index), varray(), CONNECT_DEFERRED);
|
||||
drop_end->connect("dropped", callable_mp(this, &EditorAudioBuses::_drop_at_index), CONNECT_DEFERRED);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -723,19 +723,19 @@ EditorBuildProfileManager::EditorBuildProfileManager() {
|
||||
|
||||
profile_actions[ACTION_NEW] = memnew(Button(TTR("New")));
|
||||
path_hbc->add_child(profile_actions[ACTION_NEW]);
|
||||
profile_actions[ACTION_NEW]->connect("pressed", callable_mp(this, &EditorBuildProfileManager::_profile_action), varray(ACTION_NEW));
|
||||
profile_actions[ACTION_NEW]->connect("pressed", callable_mp(this, &EditorBuildProfileManager::_profile_action).bind(ACTION_NEW));
|
||||
|
||||
profile_actions[ACTION_LOAD] = memnew(Button(TTR("Load")));
|
||||
path_hbc->add_child(profile_actions[ACTION_LOAD]);
|
||||
profile_actions[ACTION_LOAD]->connect("pressed", callable_mp(this, &EditorBuildProfileManager::_profile_action), varray(ACTION_LOAD));
|
||||
profile_actions[ACTION_LOAD]->connect("pressed", callable_mp(this, &EditorBuildProfileManager::_profile_action).bind(ACTION_LOAD));
|
||||
|
||||
profile_actions[ACTION_SAVE] = memnew(Button(TTR("Save")));
|
||||
path_hbc->add_child(profile_actions[ACTION_SAVE]);
|
||||
profile_actions[ACTION_SAVE]->connect("pressed", callable_mp(this, &EditorBuildProfileManager::_profile_action), varray(ACTION_SAVE));
|
||||
profile_actions[ACTION_SAVE]->connect("pressed", callable_mp(this, &EditorBuildProfileManager::_profile_action).bind(ACTION_SAVE));
|
||||
|
||||
profile_actions[ACTION_SAVE_AS] = memnew(Button(TTR("Save As")));
|
||||
path_hbc->add_child(profile_actions[ACTION_SAVE_AS]);
|
||||
profile_actions[ACTION_SAVE_AS]->connect("pressed", callable_mp(this, &EditorBuildProfileManager::_profile_action), varray(ACTION_SAVE_AS));
|
||||
profile_actions[ACTION_SAVE_AS]->connect("pressed", callable_mp(this, &EditorBuildProfileManager::_profile_action).bind(ACTION_SAVE_AS));
|
||||
|
||||
main_vbc->add_margin_child(TTR("Profile:"), path_hbc);
|
||||
|
||||
@ -745,11 +745,11 @@ EditorBuildProfileManager::EditorBuildProfileManager() {
|
||||
|
||||
profile_actions[ACTION_RESET] = memnew(Button(TTR("Reset to Defaults")));
|
||||
profiles_hbc->add_child(profile_actions[ACTION_RESET]);
|
||||
profile_actions[ACTION_RESET]->connect("pressed", callable_mp(this, &EditorBuildProfileManager::_profile_action), varray(ACTION_RESET));
|
||||
profile_actions[ACTION_RESET]->connect("pressed", callable_mp(this, &EditorBuildProfileManager::_profile_action).bind(ACTION_RESET));
|
||||
|
||||
profile_actions[ACTION_DETECT] = memnew(Button(TTR("Detect from Project")));
|
||||
profiles_hbc->add_child(profile_actions[ACTION_DETECT]);
|
||||
profile_actions[ACTION_DETECT]->connect("pressed", callable_mp(this, &EditorBuildProfileManager::_profile_action), varray(ACTION_DETECT));
|
||||
profile_actions[ACTION_DETECT]->connect("pressed", callable_mp(this, &EditorBuildProfileManager::_profile_action).bind(ACTION_DETECT));
|
||||
|
||||
main_vbc->add_margin_child(TTR("Actions:"), profiles_hbc);
|
||||
|
||||
@ -757,7 +757,7 @@ EditorBuildProfileManager::EditorBuildProfileManager() {
|
||||
class_list->set_hide_root(true);
|
||||
class_list->set_edit_checkbox_cell_only_when_checkbox_is_pressed(true);
|
||||
class_list->connect("cell_selected", callable_mp(this, &EditorBuildProfileManager::_class_list_item_selected));
|
||||
class_list->connect("item_edited", callable_mp(this, &EditorBuildProfileManager::_class_list_item_edited), varray(), CONNECT_DEFERRED);
|
||||
class_list->connect("item_edited", callable_mp(this, &EditorBuildProfileManager::_class_list_item_edited), CONNECT_DEFERRED);
|
||||
class_list->connect("item_collapsed", callable_mp(this, &EditorBuildProfileManager::_class_list_item_collapsed));
|
||||
// It will be displayed once the user creates or chooses a profile.
|
||||
main_vbc->add_margin_child(TTR("Configure Engine Build Profile:"), class_list, true);
|
||||
|
@ -199,7 +199,7 @@ void EditorCommandPalette::add_command(String p_command_name, String p_key_name,
|
||||
}
|
||||
Command command;
|
||||
command.name = p_command_name;
|
||||
command.callable = p_action.bind(argptrs, arguments.size());
|
||||
command.callable = p_action.bindp(argptrs, arguments.size());
|
||||
command.shortcut = p_shortcut_text;
|
||||
|
||||
commands[p_key_name] = command;
|
||||
@ -225,7 +225,7 @@ void EditorCommandPalette::_add_command(String p_command_name, String p_key_name
|
||||
void EditorCommandPalette::execute_command(String &p_command_key) {
|
||||
ERR_FAIL_COND_MSG(!commands.has(p_command_key), p_command_key + " not found.");
|
||||
commands[p_command_key].last_used = OS::get_singleton()->get_unix_time();
|
||||
commands[p_command_key].callable.call_deferred(nullptr, 0);
|
||||
commands[p_command_key].callable.call_deferredp(nullptr, 0);
|
||||
_save_history();
|
||||
}
|
||||
|
||||
@ -311,8 +311,8 @@ EditorCommandPalette::EditorCommandPalette() {
|
||||
|
||||
search_options = memnew(Tree);
|
||||
search_options->connect("item_activated", callable_mp(this, &EditorCommandPalette::_confirmed));
|
||||
search_options->connect("item_selected", callable_mp((BaseButton *)get_ok_button(), &BaseButton::set_disabled), varray(false));
|
||||
search_options->connect("nothing_selected", callable_mp((BaseButton *)get_ok_button(), &BaseButton::set_disabled), varray(true));
|
||||
search_options->connect("item_selected", callable_mp((BaseButton *)get_ok_button(), &BaseButton::set_disabled).bind(false));
|
||||
search_options->connect("nothing_selected", callable_mp((BaseButton *)get_ok_button(), &BaseButton::set_disabled).bind(true));
|
||||
search_options->create_item();
|
||||
search_options->set_hide_root(true);
|
||||
search_options->set_columns(2);
|
||||
|
@ -1028,7 +1028,7 @@ void EditorSelection::add_node(Node *p_node) {
|
||||
}
|
||||
selection[p_node] = meta;
|
||||
|
||||
p_node->connect("tree_exiting", callable_mp(this, &EditorSelection::_node_removed), varray(p_node), CONNECT_ONESHOT);
|
||||
p_node->connect("tree_exiting", callable_mp(this, &EditorSelection::_node_removed).bind(p_node), CONNECT_ONESHOT);
|
||||
}
|
||||
|
||||
void EditorSelection::remove_node(Node *p_node) {
|
||||
|
@ -81,15 +81,15 @@ void EditorDirDialog::reload(const String &p_path) {
|
||||
void EditorDirDialog::_notification(int p_what) {
|
||||
switch (p_what) {
|
||||
case NOTIFICATION_ENTER_TREE: {
|
||||
EditorFileSystem::get_singleton()->connect("filesystem_changed", callable_mp(this, &EditorDirDialog::reload), make_binds(""));
|
||||
EditorFileSystem::get_singleton()->connect("filesystem_changed", callable_mp(this, &EditorDirDialog::reload).bind(""));
|
||||
reload();
|
||||
|
||||
if (!tree->is_connected("item_collapsed", callable_mp(this, &EditorDirDialog::_item_collapsed))) {
|
||||
tree->connect("item_collapsed", callable_mp(this, &EditorDirDialog::_item_collapsed), varray(), CONNECT_DEFERRED);
|
||||
tree->connect("item_collapsed", callable_mp(this, &EditorDirDialog::_item_collapsed), CONNECT_DEFERRED);
|
||||
}
|
||||
|
||||
if (!EditorFileSystem::get_singleton()->is_connected("filesystem_changed", callable_mp(this, &EditorDirDialog::reload))) {
|
||||
EditorFileSystem::get_singleton()->connect("filesystem_changed", callable_mp(this, &EditorDirDialog::reload), make_binds(""));
|
||||
EditorFileSystem::get_singleton()->connect("filesystem_changed", callable_mp(this, &EditorDirDialog::reload).bind(""));
|
||||
}
|
||||
} break;
|
||||
|
||||
|
@ -883,7 +883,7 @@ EditorFeatureProfileManager::EditorFeatureProfileManager() {
|
||||
profile_actions[PROFILE_CLEAR] = memnew(Button(TTR("Reset to Default")));
|
||||
name_hbc->add_child(profile_actions[PROFILE_CLEAR]);
|
||||
profile_actions[PROFILE_CLEAR]->set_disabled(true);
|
||||
profile_actions[PROFILE_CLEAR]->connect("pressed", callable_mp(this, &EditorFeatureProfileManager::_profile_action), varray(PROFILE_CLEAR));
|
||||
profile_actions[PROFILE_CLEAR]->connect("pressed", callable_mp(this, &EditorFeatureProfileManager::_profile_action).bind(PROFILE_CLEAR));
|
||||
|
||||
main_vbc->add_margin_child(TTR("Current Profile:"), name_hbc);
|
||||
|
||||
@ -897,12 +897,12 @@ EditorFeatureProfileManager::EditorFeatureProfileManager() {
|
||||
|
||||
profile_actions[PROFILE_NEW] = memnew(Button(TTR("Create Profile")));
|
||||
profiles_hbc->add_child(profile_actions[PROFILE_NEW]);
|
||||
profile_actions[PROFILE_NEW]->connect("pressed", callable_mp(this, &EditorFeatureProfileManager::_profile_action), varray(PROFILE_NEW));
|
||||
profile_actions[PROFILE_NEW]->connect("pressed", callable_mp(this, &EditorFeatureProfileManager::_profile_action).bind(PROFILE_NEW));
|
||||
|
||||
profile_actions[PROFILE_ERASE] = memnew(Button(TTR("Remove Profile")));
|
||||
profiles_hbc->add_child(profile_actions[PROFILE_ERASE]);
|
||||
profile_actions[PROFILE_ERASE]->set_disabled(true);
|
||||
profile_actions[PROFILE_ERASE]->connect("pressed", callable_mp(this, &EditorFeatureProfileManager::_profile_action), varray(PROFILE_ERASE));
|
||||
profile_actions[PROFILE_ERASE]->connect("pressed", callable_mp(this, &EditorFeatureProfileManager::_profile_action).bind(PROFILE_ERASE));
|
||||
|
||||
main_vbc->add_margin_child(TTR("Available Profiles:"), profiles_hbc);
|
||||
|
||||
@ -911,18 +911,18 @@ EditorFeatureProfileManager::EditorFeatureProfileManager() {
|
||||
profile_actions[PROFILE_SET] = memnew(Button(TTR("Make Current")));
|
||||
current_profile_hbc->add_child(profile_actions[PROFILE_SET]);
|
||||
profile_actions[PROFILE_SET]->set_disabled(true);
|
||||
profile_actions[PROFILE_SET]->connect("pressed", callable_mp(this, &EditorFeatureProfileManager::_profile_action), varray(PROFILE_SET));
|
||||
profile_actions[PROFILE_SET]->connect("pressed", callable_mp(this, &EditorFeatureProfileManager::_profile_action).bind(PROFILE_SET));
|
||||
|
||||
current_profile_hbc->add_child(memnew(VSeparator));
|
||||
|
||||
profile_actions[PROFILE_IMPORT] = memnew(Button(TTR("Import")));
|
||||
current_profile_hbc->add_child(profile_actions[PROFILE_IMPORT]);
|
||||
profile_actions[PROFILE_IMPORT]->connect("pressed", callable_mp(this, &EditorFeatureProfileManager::_profile_action), varray(PROFILE_IMPORT));
|
||||
profile_actions[PROFILE_IMPORT]->connect("pressed", callable_mp(this, &EditorFeatureProfileManager::_profile_action).bind(PROFILE_IMPORT));
|
||||
|
||||
profile_actions[PROFILE_EXPORT] = memnew(Button(TTR("Export")));
|
||||
current_profile_hbc->add_child(profile_actions[PROFILE_EXPORT]);
|
||||
profile_actions[PROFILE_EXPORT]->set_disabled(true);
|
||||
profile_actions[PROFILE_EXPORT]->connect("pressed", callable_mp(this, &EditorFeatureProfileManager::_profile_action), varray(PROFILE_EXPORT));
|
||||
profile_actions[PROFILE_EXPORT]->connect("pressed", callable_mp(this, &EditorFeatureProfileManager::_profile_action).bind(PROFILE_EXPORT));
|
||||
|
||||
main_vbc->add_child(current_profile_hbc);
|
||||
|
||||
@ -939,7 +939,7 @@ EditorFeatureProfileManager::EditorFeatureProfileManager() {
|
||||
class_list->set_hide_root(true);
|
||||
class_list->set_edit_checkbox_cell_only_when_checkbox_is_pressed(true);
|
||||
class_list->connect("cell_selected", callable_mp(this, &EditorFeatureProfileManager::_class_list_item_selected));
|
||||
class_list->connect("item_edited", callable_mp(this, &EditorFeatureProfileManager::_class_list_item_edited), varray(), CONNECT_DEFERRED);
|
||||
class_list->connect("item_edited", callable_mp(this, &EditorFeatureProfileManager::_class_list_item_edited), CONNECT_DEFERRED);
|
||||
class_list->connect("item_collapsed", callable_mp(this, &EditorFeatureProfileManager::_class_list_item_collapsed));
|
||||
// It will be displayed once the user creates or chooses a profile.
|
||||
class_list_vbc->hide();
|
||||
@ -957,7 +957,7 @@ EditorFeatureProfileManager::EditorFeatureProfileManager() {
|
||||
property_list->set_hide_root(true);
|
||||
property_list->set_hide_folding(true);
|
||||
property_list->set_edit_checkbox_cell_only_when_checkbox_is_pressed(true);
|
||||
property_list->connect("item_edited", callable_mp(this, &EditorFeatureProfileManager::_property_item_edited), varray(), CONNECT_DEFERRED);
|
||||
property_list->connect("item_edited", callable_mp(this, &EditorFeatureProfileManager::_property_item_edited), CONNECT_DEFERRED);
|
||||
// It will be displayed once the user creates or chooses a profile.
|
||||
property_list_vbc->hide();
|
||||
|
||||
|
@ -1681,7 +1681,7 @@ EditorFileDialog::EditorFileDialog() {
|
||||
|
||||
mode_thumbnails = memnew(Button);
|
||||
mode_thumbnails->set_flat(true);
|
||||
mode_thumbnails->connect("pressed", callable_mp(this, &EditorFileDialog::set_display_mode), varray(DISPLAY_THUMBNAILS));
|
||||
mode_thumbnails->connect("pressed", callable_mp(this, &EditorFileDialog::set_display_mode).bind(DISPLAY_THUMBNAILS));
|
||||
mode_thumbnails->set_toggle_mode(true);
|
||||
mode_thumbnails->set_pressed(display_mode == DISPLAY_THUMBNAILS);
|
||||
mode_thumbnails->set_button_group(view_mode_group);
|
||||
@ -1690,7 +1690,7 @@ EditorFileDialog::EditorFileDialog() {
|
||||
|
||||
mode_list = memnew(Button);
|
||||
mode_list->set_flat(true);
|
||||
mode_list->connect("pressed", callable_mp(this, &EditorFileDialog::set_display_mode), varray(DISPLAY_LIST));
|
||||
mode_list->connect("pressed", callable_mp(this, &EditorFileDialog::set_display_mode).bind(DISPLAY_LIST));
|
||||
mode_list->set_toggle_mode(true);
|
||||
mode_list->set_pressed(display_mode == DISPLAY_LIST);
|
||||
mode_list->set_button_group(view_mode_group);
|
||||
@ -1816,9 +1816,9 @@ EditorFileDialog::EditorFileDialog() {
|
||||
_update_drives();
|
||||
|
||||
connect("confirmed", callable_mp(this, &EditorFileDialog::_action_pressed));
|
||||
item_list->connect("item_selected", callable_mp(this, &EditorFileDialog::_item_selected), varray(), CONNECT_DEFERRED);
|
||||
item_list->connect("multi_selected", callable_mp(this, &EditorFileDialog::_multi_selected), varray(), CONNECT_DEFERRED);
|
||||
item_list->connect("item_activated", callable_mp(this, &EditorFileDialog::_item_dc_selected), varray());
|
||||
item_list->connect("item_selected", callable_mp(this, &EditorFileDialog::_item_selected), CONNECT_DEFERRED);
|
||||
item_list->connect("multi_selected", callable_mp(this, &EditorFileDialog::_multi_selected), CONNECT_DEFERRED);
|
||||
item_list->connect("item_activated", callable_mp(this, &EditorFileDialog::_item_dc_selected).bind());
|
||||
item_list->connect("empty_clicked", callable_mp(this, &EditorFileDialog::_items_clear_selection));
|
||||
dir->connect("text_submitted", callable_mp(this, &EditorFileDialog::_dir_submitted));
|
||||
file->connect("text_submitted", callable_mp(this, &EditorFileDialog::_file_submitted));
|
||||
|
@ -2089,7 +2089,7 @@ EditorHelp::EditorHelp() {
|
||||
class_desc->connect("finished", callable_mp(this, &EditorHelp::_class_desc_finished));
|
||||
class_desc->connect("meta_clicked", callable_mp(this, &EditorHelp::_class_desc_select));
|
||||
class_desc->connect("gui_input", callable_mp(this, &EditorHelp::_class_desc_input));
|
||||
class_desc->connect("resized", callable_mp(this, &EditorHelp::_class_desc_resized), varray(false));
|
||||
class_desc->connect("resized", callable_mp(this, &EditorHelp::_class_desc_resized).bind(false));
|
||||
_class_desc_resized(false);
|
||||
|
||||
// Added second so it opens at the bottom so it won't offset the entire widget.
|
||||
|
@ -250,7 +250,7 @@ EditorHelpSearch::EditorHelpSearch() {
|
||||
results_tree->set_hide_root(true);
|
||||
results_tree->set_select_mode(Tree::SELECT_ROW);
|
||||
results_tree->connect("item_activated", callable_mp(this, &EditorHelpSearch::_confirmed));
|
||||
results_tree->connect("item_selected", callable_mp((BaseButton *)get_ok_button(), &BaseButton::set_disabled), varray(false));
|
||||
results_tree->connect("item_selected", callable_mp((BaseButton *)get_ok_button(), &BaseButton::set_disabled).bind(false));
|
||||
vbox->add_child(results_tree, true);
|
||||
}
|
||||
|
||||
|
@ -554,7 +554,7 @@ void EditorProperty::_focusable_focused(int p_index) {
|
||||
}
|
||||
|
||||
void EditorProperty::add_focusable(Control *p_control) {
|
||||
p_control->connect("focus_entered", callable_mp(this, &EditorProperty::_focusable_focused), varray(focusables.size()));
|
||||
p_control->connect("focus_entered", callable_mp(this, &EditorProperty::_focusable_focused).bind(focusables.size()));
|
||||
focusables.push_back(p_control);
|
||||
}
|
||||
|
||||
@ -1637,7 +1637,7 @@ void EditorInspectorArray::_move_element(int p_element_index, int p_to_pos) {
|
||||
const Variant *args_p[] = { &args[0], &args[1], &args[2], &args[3], &args[4] };
|
||||
Variant return_value;
|
||||
Callable::CallError call_error;
|
||||
move_function.call(args_p, 5, return_value, call_error);
|
||||
move_function.callp(args_p, 5, return_value, call_error);
|
||||
} else {
|
||||
WARN_PRINT(vformat("Could not find a function to move arrays elements for class %s. Register a move element function using EditorData::add_move_array_element_function", object->get_class_name()));
|
||||
}
|
||||
@ -1712,7 +1712,7 @@ void EditorInspectorArray::_clear_array() {
|
||||
const Variant *args_p[] = { &args[0], &args[1], &args[2], &args[3], &args[4] };
|
||||
Variant return_value;
|
||||
Callable::CallError call_error;
|
||||
move_function.call(args_p, 5, return_value, call_error);
|
||||
move_function.callp(args_p, 5, return_value, call_error);
|
||||
} else {
|
||||
WARN_PRINT(vformat("Could not find a function to move arrays elements for class %s. Register a move element function using EditorData::add_move_array_element_function", object->get_class_name()));
|
||||
}
|
||||
@ -1765,7 +1765,7 @@ void EditorInspectorArray::_resize_array(int p_size) {
|
||||
const Variant *args_p[] = { &args[0], &args[1], &args[2], &args[3], &args[4] };
|
||||
Variant return_value;
|
||||
Callable::CallError call_error;
|
||||
move_function.call(args_p, 5, return_value, call_error);
|
||||
move_function.callp(args_p, 5, return_value, call_error);
|
||||
} else {
|
||||
WARN_PRINT(vformat("Could not find a function to move arrays elements for class %s. Register a move element function using EditorData::add_move_array_element_function", object->get_class_name()));
|
||||
}
|
||||
@ -1784,7 +1784,7 @@ void EditorInspectorArray::_resize_array(int p_size) {
|
||||
const Variant *args_p[] = { &args[0], &args[1], &args[2], &args[3], &args[4] };
|
||||
Variant return_value;
|
||||
Callable::CallError call_error;
|
||||
move_function.call(args_p, 5, return_value, call_error);
|
||||
move_function.callp(args_p, 5, return_value, call_error);
|
||||
} else {
|
||||
WARN_PRINT(vformat("Could not find a function to move arrays elements for class %s. Register a move element function using EditorData::add_move_array_element_function", object->get_class_name()));
|
||||
}
|
||||
@ -1931,8 +1931,8 @@ void EditorInspectorArray::_setup() {
|
||||
ae.panel->set_tooltip(vformat(TTR("Element %d: %s%d*"), i, array_element_prefix, i));
|
||||
ae.panel->connect("focus_entered", callable_mp((CanvasItem *)ae.panel, &PanelContainer::update));
|
||||
ae.panel->connect("focus_exited", callable_mp((CanvasItem *)ae.panel, &PanelContainer::update));
|
||||
ae.panel->connect("draw", callable_bind(callable_mp(this, &EditorInspectorArray::_panel_draw), i));
|
||||
ae.panel->connect("gui_input", callable_bind(callable_mp(this, &EditorInspectorArray::_panel_gui_input), i));
|
||||
ae.panel->connect("draw", callable_mp(this, &EditorInspectorArray::_panel_draw).bind(i));
|
||||
ae.panel->connect("gui_input", callable_mp(this, &EditorInspectorArray::_panel_gui_input).bind(i));
|
||||
ae.panel->add_theme_style_override(SNAME("panel"), i % 2 ? odd_style : even_style);
|
||||
elements_vbox->add_child(ae.panel);
|
||||
|
||||
@ -2339,14 +2339,14 @@ void EditorInspector::_parse_added_editors(VBoxContainer *current_vbox, Ref<Edit
|
||||
ep->object = object;
|
||||
ep->connect("property_changed", callable_mp(this, &EditorInspector::_property_changed));
|
||||
ep->connect("property_keyed", callable_mp(this, &EditorInspector::_property_keyed));
|
||||
ep->connect("property_deleted", callable_mp(this, &EditorInspector::_property_deleted), varray(), CONNECT_DEFERRED);
|
||||
ep->connect("property_deleted", callable_mp(this, &EditorInspector::_property_deleted), CONNECT_DEFERRED);
|
||||
ep->connect("property_keyed_with_value", callable_mp(this, &EditorInspector::_property_keyed_with_value));
|
||||
ep->connect("property_checked", callable_mp(this, &EditorInspector::_property_checked));
|
||||
ep->connect("property_pinned", callable_mp(this, &EditorInspector::_property_pinned));
|
||||
ep->connect("selected", callable_mp(this, &EditorInspector::_property_selected));
|
||||
ep->connect("multiple_properties_changed", callable_mp(this, &EditorInspector::_multiple_properties_changed));
|
||||
ep->connect("resource_selected", callable_mp(this, &EditorInspector::_resource_selected), varray(), CONNECT_DEFERRED);
|
||||
ep->connect("object_id_selected", callable_mp(this, &EditorInspector::_object_id_selected), varray(), CONNECT_DEFERRED);
|
||||
ep->connect("resource_selected", callable_mp(this, &EditorInspector::_resource_selected), CONNECT_DEFERRED);
|
||||
ep->connect("object_id_selected", callable_mp(this, &EditorInspector::_object_id_selected), CONNECT_DEFERRED);
|
||||
|
||||
if (F.properties.size()) {
|
||||
if (F.properties.size() == 1) {
|
||||
@ -2821,7 +2821,7 @@ void EditorInspector::update_tree() {
|
||||
array_label = EditorPropertyNameProcessor::get_singleton()->process_name(property_label_string, property_name_style);
|
||||
int page = per_array_page.has(array_element_prefix) ? per_array_page[array_element_prefix] : 0;
|
||||
editor_inspector_array->setup_with_move_element_function(object, array_label, array_element_prefix, page, c, use_folding);
|
||||
editor_inspector_array->connect("page_change_request", callable_mp(this, &EditorInspector::_page_change_request), varray(array_element_prefix));
|
||||
editor_inspector_array->connect("page_change_request", callable_mp(this, &EditorInspector::_page_change_request).bind(array_element_prefix));
|
||||
editor_inspector_array->set_undo_redo(undo_redo);
|
||||
} else if (p.type == Variant::INT) {
|
||||
// Setup the array to use the count property and built-in functions to create/move/delete elements.
|
||||
@ -2831,7 +2831,7 @@ void EditorInspector::update_tree() {
|
||||
editor_inspector_array = memnew(EditorInspectorArray);
|
||||
int page = per_array_page.has(array_element_prefix) ? per_array_page[array_element_prefix] : 0;
|
||||
editor_inspector_array->setup_with_count_property(object, class_name_components[0], p.name, array_element_prefix, page, c, use_folding);
|
||||
editor_inspector_array->connect("page_change_request", callable_mp(this, &EditorInspector::_page_change_request), varray(array_element_prefix));
|
||||
editor_inspector_array->connect("page_change_request", callable_mp(this, &EditorInspector::_page_change_request).bind(array_element_prefix));
|
||||
editor_inspector_array->set_undo_redo(undo_redo);
|
||||
}
|
||||
}
|
||||
@ -2987,16 +2987,16 @@ void EditorInspector::update_tree() {
|
||||
if (ep) {
|
||||
// Eventually, set other properties/signals after the property editor got added to the tree.
|
||||
bool update_all = (p.usage & PROPERTY_USAGE_UPDATE_ALL_IF_MODIFIED);
|
||||
ep->connect("property_changed", callable_mp(this, &EditorInspector::_property_changed), varray(update_all));
|
||||
ep->connect("property_changed", callable_mp(this, &EditorInspector::_property_changed).bind(update_all));
|
||||
ep->connect("property_keyed", callable_mp(this, &EditorInspector::_property_keyed));
|
||||
ep->connect("property_deleted", callable_mp(this, &EditorInspector::_property_deleted), varray(), CONNECT_DEFERRED);
|
||||
ep->connect("property_deleted", callable_mp(this, &EditorInspector::_property_deleted), CONNECT_DEFERRED);
|
||||
ep->connect("property_keyed_with_value", callable_mp(this, &EditorInspector::_property_keyed_with_value));
|
||||
ep->connect("property_checked", callable_mp(this, &EditorInspector::_property_checked));
|
||||
ep->connect("property_pinned", callable_mp(this, &EditorInspector::_property_pinned));
|
||||
ep->connect("selected", callable_mp(this, &EditorInspector::_property_selected));
|
||||
ep->connect("multiple_properties_changed", callable_mp(this, &EditorInspector::_multiple_properties_changed));
|
||||
ep->connect("resource_selected", callable_mp(this, &EditorInspector::_resource_selected), varray(), CONNECT_DEFERRED);
|
||||
ep->connect("object_id_selected", callable_mp(this, &EditorInspector::_object_id_selected), varray(), CONNECT_DEFERRED);
|
||||
ep->connect("resource_selected", callable_mp(this, &EditorInspector::_resource_selected), CONNECT_DEFERRED);
|
||||
ep->connect("object_id_selected", callable_mp(this, &EditorInspector::_object_id_selected), CONNECT_DEFERRED);
|
||||
if (!doc_info.description.is_empty()) {
|
||||
ep->set_tooltip(property_prefix + p.name + "::" + doc_info.description);
|
||||
} else {
|
||||
@ -3298,7 +3298,7 @@ void EditorInspector::_edit_set(const String &p_name, const Variant &p_value, bo
|
||||
Variant return_value;
|
||||
Callable::CallError call_error;
|
||||
|
||||
callback.call(p_arguments, 4, return_value, call_error);
|
||||
callback.callp(p_arguments, 4, return_value, call_error);
|
||||
if (call_error.error != Callable::CallError::CALL_OK) {
|
||||
ERR_PRINT("Invalid UndoRedo callback.");
|
||||
}
|
||||
|
@ -88,7 +88,7 @@ private:
|
||||
toggle_button->add_theme_color_override("icon_color_pressed", Color(1, 1, 1, 1));
|
||||
toggle_button->set_focus_mode(FOCUS_NONE);
|
||||
// When toggled call the callback and pass the MessageType this button is for.
|
||||
toggle_button->connect("toggled", p_toggled_callback, varray(type));
|
||||
toggle_button->connect("toggled", p_toggled_callback.bind(type));
|
||||
}
|
||||
|
||||
int get_message_count() {
|
||||
|
@ -3022,7 +3022,7 @@ void EditorNode::_tool_menu_option(int p_idx) {
|
||||
Callable callback = tool_menu->get_item_metadata(p_idx);
|
||||
Callable::CallError ce;
|
||||
Variant result;
|
||||
callback.call(nullptr, 0, result, ce);
|
||||
callback.callp(nullptr, 0, result, ce);
|
||||
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
String err = Variant::get_callable_error_text(callback, nullptr, 0, ce);
|
||||
@ -3057,7 +3057,7 @@ void EditorNode::_export_as_menu_option(int p_idx) {
|
||||
Callable callback = export_as_menu->get_item_metadata(p_idx);
|
||||
Callable::CallError ce;
|
||||
Variant result;
|
||||
callback.call(nullptr, 0, result, ce);
|
||||
callback.callp(nullptr, 0, result, ce);
|
||||
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
String err = Variant::get_callable_error_text(callback, nullptr, 0, ce);
|
||||
@ -3262,7 +3262,7 @@ void EditorNode::add_editor_plugin(EditorPlugin *p_editor, bool p_config_changed
|
||||
Button *tb = memnew(Button);
|
||||
tb->set_flat(true);
|
||||
tb->set_toggle_mode(true);
|
||||
tb->connect("pressed", callable_mp(singleton, &EditorNode::_editor_select), varray(singleton->main_editor_buttons.size()));
|
||||
tb->connect("pressed", callable_mp(singleton, &EditorNode::_editor_select).bind(singleton->main_editor_buttons.size()));
|
||||
tb->set_name(p_editor->get_name());
|
||||
tb->set_text(p_editor->get_name());
|
||||
|
||||
@ -4387,7 +4387,7 @@ void EditorNode::_dock_make_float() {
|
||||
window->set_size(dock_size);
|
||||
window->set_position(dock_screen_pos);
|
||||
window->set_transient(true);
|
||||
window->connect("close_requested", callable_mp(this, &EditorNode::_dock_floating_close_request), varray(dock));
|
||||
window->connect("close_requested", callable_mp(this, &EditorNode::_dock_floating_close_request).bind(dock));
|
||||
window->set_meta("dock_slot", dock_popup_selected_idx);
|
||||
window->set_meta("dock_index", dock_index);
|
||||
gui_base->add_child(window);
|
||||
@ -5246,7 +5246,7 @@ void EditorNode::_scene_tab_changed(int p_tab) {
|
||||
Button *EditorNode::add_bottom_panel_item(String p_text, Control *p_item) {
|
||||
Button *tb = memnew(Button);
|
||||
tb->set_flat(true);
|
||||
tb->connect("toggled", callable_mp(this, &EditorNode::_bottom_panel_switch), varray(bottom_panel_items.size()));
|
||||
tb->connect("toggled", callable_mp(this, &EditorNode::_bottom_panel_switch).bind(bottom_panel_items.size()));
|
||||
tb->set_text(p_text);
|
||||
tb->set_toggle_mode(true);
|
||||
tb->set_focus_mode(Control::FOCUS_NONE);
|
||||
@ -5293,7 +5293,7 @@ void EditorNode::raise_bottom_panel_item(Control *p_item) {
|
||||
|
||||
for (int i = 0; i < bottom_panel_items.size(); i++) {
|
||||
bottom_panel_items[i].button->disconnect("toggled", callable_mp(this, &EditorNode::_bottom_panel_switch));
|
||||
bottom_panel_items[i].button->connect("toggled", callable_mp(this, &EditorNode::_bottom_panel_switch), varray(i));
|
||||
bottom_panel_items[i].button->connect("toggled", callable_mp(this, &EditorNode::_bottom_panel_switch).bind(i));
|
||||
}
|
||||
}
|
||||
|
||||
@ -5313,7 +5313,7 @@ void EditorNode::remove_bottom_panel_item(Control *p_item) {
|
||||
|
||||
for (int i = 0; i < bottom_panel_items.size(); i++) {
|
||||
bottom_panel_items[i].button->disconnect("toggled", callable_mp(this, &EditorNode::_bottom_panel_switch));
|
||||
bottom_panel_items[i].button->connect("toggled", callable_mp(this, &EditorNode::_bottom_panel_switch), varray(i));
|
||||
bottom_panel_items[i].button->connect("toggled", callable_mp(this, &EditorNode::_bottom_panel_switch).bind(i));
|
||||
}
|
||||
}
|
||||
|
||||
@ -6338,7 +6338,7 @@ EditorNode::EditorNode() {
|
||||
dock_slot[i]->set_custom_minimum_size(Size2(170, 0) * EDSCALE);
|
||||
dock_slot[i]->set_v_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
dock_slot[i]->set_popup(dock_select_popup);
|
||||
dock_slot[i]->connect("pre_popup_pressed", callable_mp(this, &EditorNode::_dock_pre_popup), varray(i));
|
||||
dock_slot[i]->connect("pre_popup_pressed", callable_mp(this, &EditorNode::_dock_pre_popup).bind(i));
|
||||
dock_slot[i]->set_drag_to_rearrange_enabled(true);
|
||||
dock_slot[i]->set_tabs_rearrange_group(1);
|
||||
dock_slot[i]->connect("tab_changed", callable_mp(this, &EditorNode::_dock_tab_changed));
|
||||
@ -6386,7 +6386,7 @@ EditorNode::EditorNode() {
|
||||
scene_tabs->set_drag_to_rearrange_enabled(true);
|
||||
scene_tabs->connect("tab_changed", callable_mp(this, &EditorNode::_scene_tab_changed));
|
||||
scene_tabs->connect("tab_button_pressed", callable_mp(this, &EditorNode::_scene_tab_script_edited));
|
||||
scene_tabs->connect("tab_close_pressed", callable_mp(this, &EditorNode::_scene_tab_closed), varray(SCENE_TAB_CLOSE));
|
||||
scene_tabs->connect("tab_close_pressed", callable_mp(this, &EditorNode::_scene_tab_closed).bind(SCENE_TAB_CLOSE));
|
||||
scene_tabs->connect("tab_hovered", callable_mp(this, &EditorNode::_scene_tab_hovered));
|
||||
scene_tabs->connect("mouse_exited", callable_mp(this, &EditorNode::_scene_tab_exit));
|
||||
scene_tabs->connect("gui_input", callable_mp(this, &EditorNode::_scene_tab_input));
|
||||
@ -6405,7 +6405,7 @@ EditorNode::EditorNode() {
|
||||
scene_tab_add->set_icon(gui_base->get_theme_icon(SNAME("Add"), SNAME("EditorIcons")));
|
||||
scene_tab_add->add_theme_color_override("icon_normal_color", Color(0.6f, 0.6f, 0.6f, 0.8f));
|
||||
scene_tabs->add_child(scene_tab_add);
|
||||
scene_tab_add->connect("pressed", callable_mp(this, &EditorNode::_menu_option), make_binds(FILE_NEW_SCENE));
|
||||
scene_tab_add->connect("pressed", callable_mp(this, &EditorNode::_menu_option).bind(FILE_NEW_SCENE));
|
||||
|
||||
scene_tab_add_ph = memnew(Control);
|
||||
scene_tab_add_ph->set_mouse_filter(Control::MOUSE_FILTER_IGNORE);
|
||||
@ -6457,7 +6457,7 @@ EditorNode::EditorNode() {
|
||||
prev_scene->set_icon(gui_base->get_theme_icon(SNAME("PrevScene"), SNAME("EditorIcons")));
|
||||
prev_scene->set_tooltip(TTR("Go to previously opened scene."));
|
||||
prev_scene->set_disabled(true);
|
||||
prev_scene->connect("pressed", callable_mp(this, &EditorNode::_menu_option), make_binds(FILE_OPEN_PREV));
|
||||
prev_scene->connect("pressed", callable_mp(this, &EditorNode::_menu_option).bind(FILE_OPEN_PREV));
|
||||
gui_base->add_child(prev_scene);
|
||||
prev_scene->set_position(Point2(3, 24));
|
||||
prev_scene->hide();
|
||||
@ -6468,7 +6468,7 @@ EditorNode::EditorNode() {
|
||||
|
||||
save_accept = memnew(AcceptDialog);
|
||||
gui_base->add_child(save_accept);
|
||||
save_accept->connect("confirmed", callable_mp(this, &EditorNode::_menu_option), make_binds((int)MenuOptions::FILE_SAVE_AS_SCENE));
|
||||
save_accept->connect("confirmed", callable_mp(this, &EditorNode::_menu_option).bind((int)MenuOptions::FILE_SAVE_AS_SCENE));
|
||||
|
||||
project_export = memnew(ProjectExportDialog);
|
||||
gui_base->add_child(project_export);
|
||||
@ -6711,7 +6711,7 @@ EditorNode::EditorNode() {
|
||||
play_button->set_toggle_mode(true);
|
||||
play_button->set_icon(gui_base->get_theme_icon(SNAME("MainPlay"), SNAME("EditorIcons")));
|
||||
play_button->set_focus_mode(Control::FOCUS_NONE);
|
||||
play_button->connect("pressed", callable_mp(this, &EditorNode::_menu_option), make_binds(RUN_PLAY));
|
||||
play_button->connect("pressed", callable_mp(this, &EditorNode::_menu_option).bind(RUN_PLAY));
|
||||
play_button->set_tooltip(TTR("Play the project."));
|
||||
|
||||
ED_SHORTCUT_AND_COMMAND("editor/play", TTR("Play"), Key::F5);
|
||||
@ -6736,7 +6736,7 @@ EditorNode::EditorNode() {
|
||||
play_hb->add_child(stop_button);
|
||||
stop_button->set_focus_mode(Control::FOCUS_NONE);
|
||||
stop_button->set_icon(gui_base->get_theme_icon(SNAME("Stop"), SNAME("EditorIcons")));
|
||||
stop_button->connect("pressed", callable_mp(this, &EditorNode::_menu_option), make_binds(RUN_STOP));
|
||||
stop_button->connect("pressed", callable_mp(this, &EditorNode::_menu_option).bind(RUN_STOP));
|
||||
stop_button->set_tooltip(TTR("Stop the scene."));
|
||||
stop_button->set_disabled(true);
|
||||
|
||||
@ -6754,7 +6754,7 @@ EditorNode::EditorNode() {
|
||||
play_scene_button->set_toggle_mode(true);
|
||||
play_scene_button->set_focus_mode(Control::FOCUS_NONE);
|
||||
play_scene_button->set_icon(gui_base->get_theme_icon(SNAME("PlayScene"), SNAME("EditorIcons")));
|
||||
play_scene_button->connect("pressed", callable_mp(this, &EditorNode::_menu_option), make_binds(RUN_PLAY_SCENE));
|
||||
play_scene_button->connect("pressed", callable_mp(this, &EditorNode::_menu_option).bind(RUN_PLAY_SCENE));
|
||||
play_scene_button->set_tooltip(TTR("Play the edited scene."));
|
||||
|
||||
ED_SHORTCUT_AND_COMMAND("editor/play_scene", TTR("Play Scene"), Key::F6);
|
||||
@ -6767,7 +6767,7 @@ EditorNode::EditorNode() {
|
||||
play_custom_scene_button->set_toggle_mode(true);
|
||||
play_custom_scene_button->set_focus_mode(Control::FOCUS_NONE);
|
||||
play_custom_scene_button->set_icon(gui_base->get_theme_icon(SNAME("PlayCustom"), SNAME("EditorIcons")));
|
||||
play_custom_scene_button->connect("pressed", callable_mp(this, &EditorNode::_menu_option), make_binds(RUN_PLAY_CUSTOM_SCENE));
|
||||
play_custom_scene_button->connect("pressed", callable_mp(this, &EditorNode::_menu_option).bind(RUN_PLAY_CUSTOM_SCENE));
|
||||
play_custom_scene_button->set_tooltip(TTR("Play custom scene"));
|
||||
|
||||
ED_SHORTCUT_AND_COMMAND("editor/play_custom_scene", TTR("Play Custom Scene"), KeyModifierMask::CMD | KeyModifierMask::SHIFT | Key::F5);
|
||||
@ -6834,7 +6834,7 @@ EditorNode::EditorNode() {
|
||||
video_restart_dialog = memnew(ConfirmationDialog);
|
||||
video_restart_dialog->set_text(TTR("Changing the video driver requires restarting the editor."));
|
||||
video_restart_dialog->set_ok_button_text(TTR("Save & Restart"));
|
||||
video_restart_dialog->connect("confirmed", callable_mp(this, &EditorNode::_menu_option), varray(SET_RENDERING_DRIVER_SAVE_AND_RESTART));
|
||||
video_restart_dialog->connect("confirmed", callable_mp(this, &EditorNode::_menu_option).bind(SET_RENDERING_DRIVER_SAVE_AND_RESTART));
|
||||
gui_base->add_child(video_restart_dialog);
|
||||
|
||||
progress_hb = memnew(BackgroundProgress);
|
||||
@ -7003,8 +7003,8 @@ EditorNode::EditorNode() {
|
||||
custom_build_manage_templates = memnew(ConfirmationDialog);
|
||||
custom_build_manage_templates->set_text(TTR("Android build template is missing, please install relevant templates."));
|
||||
custom_build_manage_templates->set_ok_button_text(TTR("Manage Templates"));
|
||||
custom_build_manage_templates->add_button(TTR("Install from file"))->connect("pressed", callable_mp(this, &EditorNode::_menu_option), varray(SETTINGS_INSTALL_ANDROID_BUILD_TEMPLATE));
|
||||
custom_build_manage_templates->connect("confirmed", callable_mp(this, &EditorNode::_menu_option), varray(SETTINGS_MANAGE_EXPORT_TEMPLATES));
|
||||
custom_build_manage_templates->add_button(TTR("Install from file"))->connect("pressed", callable_mp(this, &EditorNode::_menu_option).bind(SETTINGS_INSTALL_ANDROID_BUILD_TEMPLATE));
|
||||
custom_build_manage_templates->connect("confirmed", callable_mp(this, &EditorNode::_menu_option).bind(SETTINGS_MANAGE_EXPORT_TEMPLATES));
|
||||
gui_base->add_child(custom_build_manage_templates);
|
||||
|
||||
file_android_build_source = memnew(EditorFileDialog);
|
||||
@ -7024,7 +7024,7 @@ EditorNode::EditorNode() {
|
||||
remove_android_build_template = memnew(ConfirmationDialog);
|
||||
remove_android_build_template->set_text(TTR("The Android build template is already installed in this project and it won't be overwritten.\nRemove the \"res://android/build\" directory manually before attempting this operation again."));
|
||||
remove_android_build_template->set_ok_button_text(TTR("Show in File Manager"));
|
||||
remove_android_build_template->connect("confirmed", callable_mp(this, &EditorNode::_menu_option), varray(FILE_EXPLORE_ANDROID_BUILD_TEMPLATES));
|
||||
remove_android_build_template->connect("confirmed", callable_mp(this, &EditorNode::_menu_option).bind(FILE_EXPLORE_ANDROID_BUILD_TEMPLATES));
|
||||
gui_base->add_child(remove_android_build_template);
|
||||
|
||||
file_templates = memnew(EditorFileDialog);
|
||||
@ -7316,7 +7316,7 @@ EditorNode::EditorNode() {
|
||||
pick_main_scene = memnew(ConfirmationDialog);
|
||||
gui_base->add_child(pick_main_scene);
|
||||
pick_main_scene->set_ok_button_text(TTR("Select"));
|
||||
pick_main_scene->connect("confirmed", callable_mp(this, &EditorNode::_menu_option), varray(SETTINGS_PICK_MAIN_SCENE));
|
||||
pick_main_scene->connect("confirmed", callable_mp(this, &EditorNode::_menu_option).bind(SETTINGS_PICK_MAIN_SCENE));
|
||||
select_current_scene_button = pick_main_scene->add_button(TTR("Select Current"), true, "select_current");
|
||||
pick_main_scene->connect("custom_action", callable_mp(this, &EditorNode::_pick_main_scene_custom_action));
|
||||
|
||||
|
@ -774,7 +774,7 @@ void EditorPropertyFlags::setup(const Vector<String> &p_options) {
|
||||
CheckBox *cb = memnew(CheckBox);
|
||||
cb->set_text(option);
|
||||
cb->set_clip_text(true);
|
||||
cb->connect("pressed", callable_mp(this, &EditorPropertyFlags::_flag_toggled), varray(i));
|
||||
cb->connect("pressed", callable_mp(this, &EditorPropertyFlags::_flag_toggled).bind(i));
|
||||
add_focusable(cb);
|
||||
vbox->add_child(cb);
|
||||
flags.push_back(cb);
|
||||
@ -1236,7 +1236,7 @@ EditorPropertyLayers::EditorPropertyLayers() {
|
||||
add_child(layers);
|
||||
layers->set_hide_on_checkable_item_selection(false);
|
||||
layers->connect("id_pressed", callable_mp(this, &EditorPropertyLayers::_menu_pressed));
|
||||
layers->connect("popup_hide", callable_mp((BaseButton *)button, &BaseButton::set_pressed), varray(false));
|
||||
layers->connect("popup_hide", callable_mp((BaseButton *)button, &BaseButton::set_pressed).bind(false));
|
||||
EditorNode::get_singleton()->connect("project_settings_changed", callable_mp(this, &EditorPropertyLayers::_refresh_names));
|
||||
}
|
||||
|
||||
@ -1755,7 +1755,7 @@ EditorPropertyVector2::EditorPropertyVector2(bool p_force_wide) {
|
||||
spin[i]->set_label(desc[i]);
|
||||
bc->add_child(spin[i]);
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyVector2::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyVector2::_value_changed).bind(desc[i]));
|
||||
if (horizontal) {
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
}
|
||||
@ -1865,7 +1865,7 @@ EditorPropertyRect2::EditorPropertyRect2(bool p_force_wide) {
|
||||
}
|
||||
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyRect2::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyRect2::_value_changed).bind(desc[i]));
|
||||
if (horizontal) {
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
}
|
||||
@ -2037,7 +2037,7 @@ EditorPropertyVector3::EditorPropertyVector3(bool p_force_wide) {
|
||||
spin[i]->set_label(desc[i]);
|
||||
bc->add_child(spin[i]);
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyVector3::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyVector3::_value_changed).bind(desc[i]));
|
||||
if (horizontal) {
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
}
|
||||
@ -2168,7 +2168,7 @@ EditorPropertyVector2i::EditorPropertyVector2i(bool p_force_wide) {
|
||||
spin[i]->set_label(desc[i]);
|
||||
bc->add_child(spin[i]);
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyVector2i::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyVector2i::_value_changed).bind(desc[i]));
|
||||
if (horizontal) {
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
}
|
||||
@ -2278,7 +2278,7 @@ EditorPropertyRect2i::EditorPropertyRect2i(bool p_force_wide) {
|
||||
}
|
||||
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyRect2i::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyRect2i::_value_changed).bind(desc[i]));
|
||||
if (horizontal) {
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
}
|
||||
@ -2420,7 +2420,7 @@ EditorPropertyVector3i::EditorPropertyVector3i(bool p_force_wide) {
|
||||
spin[i]->set_label(desc[i]);
|
||||
bc->add_child(spin[i]);
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyVector3i::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyVector3i::_value_changed).bind(desc[i]));
|
||||
if (horizontal) {
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
}
|
||||
@ -2521,7 +2521,7 @@ EditorPropertyPlane::EditorPropertyPlane(bool p_force_wide) {
|
||||
spin[i]->set_label(desc[i]);
|
||||
bc->add_child(spin[i]);
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyPlane::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyPlane::_value_changed).bind(desc[i]));
|
||||
if (horizontal) {
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
}
|
||||
@ -2613,7 +2613,7 @@ EditorPropertyQuaternion::EditorPropertyQuaternion() {
|
||||
spin[i]->set_label(desc[i]);
|
||||
bc->add_child(spin[i]);
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyQuaternion::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyQuaternion::_value_changed).bind(desc[i]));
|
||||
if (horizontal) {
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
}
|
||||
@ -2704,7 +2704,7 @@ EditorPropertyVector4::EditorPropertyVector4() {
|
||||
spin[i]->set_label(desc[i]);
|
||||
bc->add_child(spin[i]);
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyVector4::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyVector4::_value_changed).bind(desc[i]));
|
||||
if (horizontal) {
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
}
|
||||
@ -2793,7 +2793,7 @@ EditorPropertyVector4i::EditorPropertyVector4i() {
|
||||
spin[i]->set_label(desc[i]);
|
||||
bc->add_child(spin[i]);
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyVector4i::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyVector4i::_value_changed).bind(desc[i]));
|
||||
if (horizontal) {
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
}
|
||||
@ -2882,7 +2882,7 @@ EditorPropertyAABB::EditorPropertyAABB() {
|
||||
g->add_child(spin[i]);
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyAABB::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyAABB::_value_changed).bind(desc[i]));
|
||||
}
|
||||
set_bottom_editor(g);
|
||||
}
|
||||
@ -2973,7 +2973,7 @@ EditorPropertyTransform2D::EditorPropertyTransform2D(bool p_include_origin) {
|
||||
}
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyTransform2D::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyTransform2D::_value_changed).bind(desc[i]));
|
||||
}
|
||||
set_bottom_editor(g);
|
||||
}
|
||||
@ -3063,7 +3063,7 @@ EditorPropertyBasis::EditorPropertyBasis() {
|
||||
g->add_child(spin[i]);
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyBasis::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyBasis::_value_changed).bind(desc[i]));
|
||||
}
|
||||
set_bottom_editor(g);
|
||||
}
|
||||
@ -3161,7 +3161,7 @@ EditorPropertyTransform3D::EditorPropertyTransform3D() {
|
||||
g->add_child(spin[i]);
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyTransform3D::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyTransform3D::_value_changed).bind(desc[i]));
|
||||
}
|
||||
set_bottom_editor(g);
|
||||
}
|
||||
@ -3267,7 +3267,7 @@ EditorPropertyProjection::EditorPropertyProjection() {
|
||||
g->add_child(spin[i]);
|
||||
spin[i]->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
add_focusable(spin[i]);
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyProjection::_value_changed), varray(desc[i]));
|
||||
spin[i]->connect("value_changed", callable_mp(this, &EditorPropertyProjection::_value_changed).bind(desc[i]));
|
||||
}
|
||||
set_bottom_editor(g);
|
||||
}
|
||||
@ -3336,7 +3336,7 @@ EditorPropertyColor::EditorPropertyColor() {
|
||||
picker->set_flat(true);
|
||||
picker->connect("color_changed", callable_mp(this, &EditorPropertyColor::_color_changed));
|
||||
picker->connect("popup_closed", callable_mp(this, &EditorPropertyColor::_popup_closed));
|
||||
picker->get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker), varray(picker->get_picker()));
|
||||
picker->get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker).bind(picker->get_picker()));
|
||||
picker->get_popup()->connect("about_to_popup", callable_mp(this, &EditorPropertyColor::_picker_opening));
|
||||
}
|
||||
|
||||
|
@ -329,7 +329,7 @@ void EditorPropertyArray::update_property() {
|
||||
reorder_button->set_icon(get_theme_icon(SNAME("TripleBar"), SNAME("EditorIcons")));
|
||||
reorder_button->set_default_cursor_shape(Control::CURSOR_MOVE);
|
||||
reorder_button->connect("gui_input", callable_mp(this, &EditorPropertyArray::_reorder_button_gui_input));
|
||||
reorder_button->connect("button_down", callable_mp(this, &EditorPropertyArray::_reorder_button_down), varray(i + offset));
|
||||
reorder_button->connect("button_down", callable_mp(this, &EditorPropertyArray::_reorder_button_down).bind(i + offset));
|
||||
reorder_button->connect("button_up", callable_mp(this, &EditorPropertyArray::_reorder_button_up));
|
||||
hbox->add_child(reorder_button);
|
||||
|
||||
@ -366,11 +366,11 @@ void EditorPropertyArray::update_property() {
|
||||
Button *edit = memnew(Button);
|
||||
edit->set_icon(get_theme_icon(SNAME("Edit"), SNAME("EditorIcons")));
|
||||
hbox->add_child(edit);
|
||||
edit->connect("pressed", callable_mp(this, &EditorPropertyArray::_change_type), varray(edit, i + offset));
|
||||
edit->connect("pressed", callable_mp(this, &EditorPropertyArray::_change_type).bind(edit, i + offset));
|
||||
} else {
|
||||
Button *remove = memnew(Button);
|
||||
remove->set_icon(get_theme_icon(SNAME("Remove"), SNAME("EditorIcons")));
|
||||
remove->connect("pressed", callable_mp(this, &EditorPropertyArray::_remove_pressed), varray(i + offset));
|
||||
remove->connect("pressed", callable_mp(this, &EditorPropertyArray::_remove_pressed).bind(i + offset));
|
||||
hbox->add_child(remove);
|
||||
}
|
||||
|
||||
@ -1136,7 +1136,7 @@ void EditorPropertyDictionary::update_property() {
|
||||
Button *edit = memnew(Button);
|
||||
edit->set_icon(get_theme_icon(SNAME("Edit"), SNAME("EditorIcons")));
|
||||
hbox->add_child(edit);
|
||||
edit->connect("pressed", callable_mp(this, &EditorPropertyDictionary::_change_type), varray(edit, change_index));
|
||||
edit->connect("pressed", callable_mp(this, &EditorPropertyDictionary::_change_type).bind(edit, change_index));
|
||||
|
||||
prop->update_property();
|
||||
|
||||
@ -1375,7 +1375,7 @@ void EditorPropertyLocalizableString::update_property() {
|
||||
Button *edit = memnew(Button);
|
||||
edit->set_icon(get_theme_icon(SNAME("Remove"), SNAME("EditorIcons")));
|
||||
hbox->add_child(edit);
|
||||
edit->connect("pressed", callable_mp(this, &EditorPropertyLocalizableString::_remove_item), varray(edit, remove_index));
|
||||
edit->connect("pressed", callable_mp(this, &EditorPropertyLocalizableString::_remove_item).bind(edit, remove_index));
|
||||
|
||||
prop->update_property();
|
||||
}
|
||||
|
@ -871,7 +871,7 @@ void EditorResourcePicker::_ensure_resource_menu() {
|
||||
edit_menu = memnew(PopupMenu);
|
||||
add_child(edit_menu);
|
||||
edit_menu->connect("id_pressed", callable_mp(this, &EditorResourcePicker::_edit_menu_cbk));
|
||||
edit_menu->connect("popup_hide", callable_mp((BaseButton *)edit_button, &BaseButton::set_pressed), varray(false));
|
||||
edit_menu->connect("popup_hide", callable_mp((BaseButton *)edit_button, &BaseButton::set_pressed).bind(false));
|
||||
}
|
||||
|
||||
EditorResourcePicker::EditorResourcePicker(bool p_hide_assign_button_controls) {
|
||||
|
@ -51,8 +51,8 @@ void EditorRunNative::_notification(int p_what) {
|
||||
im->resize(16 * EDSCALE, 16 * EDSCALE);
|
||||
Ref<ImageTexture> small_icon = ImageTexture::create_from_image(im);
|
||||
MenuButton *mb = memnew(MenuButton);
|
||||
mb->get_popup()->connect("id_pressed", callable_mp(this, &EditorRunNative::run_native), varray(i));
|
||||
mb->connect("pressed", callable_mp(this, &EditorRunNative::run_native), varray(-1, i));
|
||||
mb->get_popup()->connect("id_pressed", callable_mp(this, &EditorRunNative::run_native).bind(i));
|
||||
mb->connect("pressed", callable_mp(this, &EditorRunNative::run_native).bind(-1, i));
|
||||
mb->set_icon(small_icon);
|
||||
add_child(mb);
|
||||
menus[i] = mb;
|
||||
|
@ -356,7 +356,7 @@ Control *EditorToaster::popup(Control *p_control, Severity p_severity, double p_
|
||||
break;
|
||||
}
|
||||
panel->set_modulate(Color(1, 1, 1, 0));
|
||||
panel->connect("draw", callable_bind(callable_mp(this, &EditorToaster::_draw_progress), panel));
|
||||
panel->connect("draw", callable_mp(this, &EditorToaster::_draw_progress).bind(panel));
|
||||
|
||||
// Horizontal container.
|
||||
HBoxContainer *hbox_container = memnew(HBoxContainer);
|
||||
@ -372,8 +372,8 @@ Control *EditorToaster::popup(Control *p_control, Severity p_severity, double p_
|
||||
Button *close_button = memnew(Button);
|
||||
close_button->set_flat(true);
|
||||
close_button->set_icon(get_theme_icon(SNAME("Close"), SNAME("EditorIcons")));
|
||||
close_button->connect("pressed", callable_bind(callable_mp(this, &EditorToaster::close), panel));
|
||||
close_button->connect("theme_changed", callable_bind(callable_mp(this, &EditorToaster::_close_button_theme_changed), close_button));
|
||||
close_button->connect("pressed", callable_mp(this, &EditorToaster::close).bind(panel));
|
||||
close_button->connect("theme_changed", callable_mp(this, &EditorToaster::_close_button_theme_changed).bind(close_button));
|
||||
hbox_container->add_child(close_button);
|
||||
}
|
||||
|
||||
@ -522,7 +522,7 @@ EditorToaster::EditorToaster() {
|
||||
main_button->set_modulate(Color(0.5, 0.5, 0.5));
|
||||
main_button->set_disabled(true);
|
||||
main_button->set_flat(true);
|
||||
main_button->connect("pressed", callable_mp(this, &EditorToaster::_set_notifications_enabled), varray(true));
|
||||
main_button->connect("pressed", callable_mp(this, &EditorToaster::_set_notifications_enabled).bind(true));
|
||||
main_button->connect("pressed", callable_mp(this, &EditorToaster::_repop_old));
|
||||
main_button->connect("draw", callable_mp(this, &EditorToaster::_draw_button));
|
||||
add_child(main_button);
|
||||
@ -536,7 +536,7 @@ EditorToaster::EditorToaster() {
|
||||
disable_notifications_button = memnew(Button);
|
||||
disable_notifications_button->set_tooltip(TTR("Silence the notifications."));
|
||||
disable_notifications_button->set_flat(true);
|
||||
disable_notifications_button->connect("pressed", callable_mp(this, &EditorToaster::_set_notifications_enabled), varray(false));
|
||||
disable_notifications_button->connect("pressed", callable_mp(this, &EditorToaster::_set_notifications_enabled).bind(false));
|
||||
disable_notifications_panel->add_child(disable_notifications_button);
|
||||
|
||||
// Other
|
||||
|
@ -868,13 +868,13 @@ ExportTemplateManager::ExportTemplateManager() {
|
||||
current_open_button->set_text(TTR("Open Folder"));
|
||||
current_open_button->set_tooltip(TTR("Open the folder containing installed templates for the current version."));
|
||||
current_installed_hb->add_child(current_open_button);
|
||||
current_open_button->connect("pressed", callable_mp(this, &ExportTemplateManager::_open_template_folder), varray(VERSION_FULL_CONFIG));
|
||||
current_open_button->connect("pressed", callable_mp(this, &ExportTemplateManager::_open_template_folder).bind(VERSION_FULL_CONFIG));
|
||||
|
||||
current_uninstall_button = memnew(Button);
|
||||
current_uninstall_button->set_text(TTR("Uninstall"));
|
||||
current_uninstall_button->set_tooltip(TTR("Uninstall templates for the current version."));
|
||||
current_installed_hb->add_child(current_uninstall_button);
|
||||
current_uninstall_button->connect("pressed", callable_mp(this, &ExportTemplateManager::_uninstall_template), varray(VERSION_FULL_CONFIG));
|
||||
current_uninstall_button->connect("pressed", callable_mp(this, &ExportTemplateManager::_uninstall_template).bind(VERSION_FULL_CONFIG));
|
||||
|
||||
main_vb->add_child(memnew(HSeparator));
|
||||
|
||||
@ -990,7 +990,7 @@ ExportTemplateManager::ExportTemplateManager() {
|
||||
install_file_dialog->set_access(FileDialog::ACCESS_FILESYSTEM);
|
||||
install_file_dialog->set_file_mode(FileDialog::FILE_MODE_OPEN_FILE);
|
||||
install_file_dialog->add_filter("*.tpz", TTR("Godot Export Templates"));
|
||||
install_file_dialog->connect("file_selected", callable_mp(this, &ExportTemplateManager::_install_file_selected), varray(false));
|
||||
install_file_dialog->connect("file_selected", callable_mp(this, &ExportTemplateManager::_install_file_selected).bind(false));
|
||||
add_child(install_file_dialog);
|
||||
|
||||
hide_dialog_accept = memnew(AcceptDialog);
|
||||
|
@ -381,7 +381,7 @@ void FileSystemDock::_notification(int p_what) {
|
||||
file_list_popup->connect("id_pressed", callable_mp(this, &FileSystemDock::_file_list_rmb_option));
|
||||
tree_popup->connect("id_pressed", callable_mp(this, &FileSystemDock::_tree_rmb_option));
|
||||
|
||||
current_path->connect("text_submitted", callable_mp(this, &FileSystemDock::_navigate_to_path), make_binds(false));
|
||||
current_path->connect("text_submitted", callable_mp(this, &FileSystemDock::_navigate_to_path).bind(false));
|
||||
|
||||
always_show_folders = bool(EditorSettings::get_singleton()->get("docks/filesystem/always_show_folders"));
|
||||
|
||||
@ -3079,7 +3079,7 @@ FileSystemDock::FileSystemDock() {
|
||||
tree_search_box = memnew(LineEdit);
|
||||
tree_search_box->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
tree_search_box->set_placeholder(TTR("Filter Files"));
|
||||
tree_search_box->connect("text_changed", callable_mp(this, &FileSystemDock::_search_changed), varray(tree_search_box));
|
||||
tree_search_box->connect("text_changed", callable_mp(this, &FileSystemDock::_search_changed).bind(tree_search_box));
|
||||
toolbar2_hbc->add_child(tree_search_box);
|
||||
|
||||
tree_button_sort = _create_file_menu_button();
|
||||
@ -3124,7 +3124,7 @@ FileSystemDock::FileSystemDock() {
|
||||
file_list_search_box = memnew(LineEdit);
|
||||
file_list_search_box->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
file_list_search_box->set_placeholder(TTR("Filter Files"));
|
||||
file_list_search_box->connect("text_changed", callable_mp(this, &FileSystemDock::_search_changed), varray(file_list_search_box));
|
||||
file_list_search_box->connect("text_changed", callable_mp(this, &FileSystemDock::_search_changed).bind(file_list_search_box));
|
||||
path_hb->add_child(file_list_search_box);
|
||||
|
||||
file_list_button_sort = _create_file_menu_button();
|
||||
@ -3172,7 +3172,7 @@ FileSystemDock::FileSystemDock() {
|
||||
move_dialog = memnew(EditorDirDialog);
|
||||
move_dialog->set_ok_button_text(TTR("Move"));
|
||||
add_child(move_dialog);
|
||||
move_dialog->connect("dir_selected", callable_mp(this, &FileSystemDock::_move_operation_confirm), make_binds(false));
|
||||
move_dialog->connect("dir_selected", callable_mp(this, &FileSystemDock::_move_operation_confirm).bind(false));
|
||||
|
||||
rename_dialog = memnew(ConfirmationDialog);
|
||||
VBoxContainer *rename_dialog_vb = memnew(VBoxContainer);
|
||||
|
@ -473,7 +473,7 @@ GroupDialog::GroupDialog() {
|
||||
add_group_button = memnew(Button);
|
||||
add_group_button->set_text(TTR("Add"));
|
||||
chbc->add_child(add_group_button);
|
||||
add_group_button->connect("pressed", callable_mp(this, &GroupDialog::_add_group_pressed), varray(String()));
|
||||
add_group_button->connect("pressed", callable_mp(this, &GroupDialog::_add_group_pressed).bind(String()));
|
||||
|
||||
VBoxContainer *vbc_add = memnew(VBoxContainer);
|
||||
hbc->add_child(vbc_add);
|
||||
@ -737,7 +737,7 @@ GroupsEditor::GroupsEditor() {
|
||||
add = memnew(Button);
|
||||
add->set_text(TTR("Add"));
|
||||
hbc->add_child(add);
|
||||
add->connect("pressed", callable_mp(this, &GroupsEditor::_add_group), varray(String()));
|
||||
add->connect("pressed", callable_mp(this, &GroupsEditor::_add_group).bind(String()));
|
||||
|
||||
tree = memnew(Tree);
|
||||
tree->set_hide_root(true);
|
||||
|
@ -645,7 +645,7 @@ InspectorDock::InspectorDock(EditorData &p_editor_data) {
|
||||
open_docs_button->set_tooltip(TTR("Open documentation for this object."));
|
||||
open_docs_button->set_shortcut(ED_SHORTCUT("property_editor/open_help", TTR("Open Documentation")));
|
||||
subresource_hb->add_child(open_docs_button);
|
||||
open_docs_button->connect("pressed", callable_mp(this, &InspectorDock::_menu_option), varray(OBJECT_REQUEST_HELP));
|
||||
open_docs_button->connect("pressed", callable_mp(this, &InspectorDock::_menu_option).bind(OBJECT_REQUEST_HELP));
|
||||
|
||||
new_resource_dialog = memnew(CreateDialog);
|
||||
EditorNode::get_singleton()->get_gui_base()->add_child(new_resource_dialog);
|
||||
|
@ -716,19 +716,19 @@ AbstractPolygon2DEditor::AbstractPolygon2DEditor(bool p_wip_destructive) {
|
||||
button_create = memnew(Button);
|
||||
button_create->set_flat(true);
|
||||
add_child(button_create);
|
||||
button_create->connect("pressed", callable_mp(this, &AbstractPolygon2DEditor::_menu_option), varray(MODE_CREATE));
|
||||
button_create->connect("pressed", callable_mp(this, &AbstractPolygon2DEditor::_menu_option).bind(MODE_CREATE));
|
||||
button_create->set_toggle_mode(true);
|
||||
|
||||
button_edit = memnew(Button);
|
||||
button_edit->set_flat(true);
|
||||
add_child(button_edit);
|
||||
button_edit->connect("pressed", callable_mp(this, &AbstractPolygon2DEditor::_menu_option), varray(MODE_EDIT));
|
||||
button_edit->connect("pressed", callable_mp(this, &AbstractPolygon2DEditor::_menu_option).bind(MODE_EDIT));
|
||||
button_edit->set_toggle_mode(true);
|
||||
|
||||
button_delete = memnew(Button);
|
||||
button_delete->set_flat(true);
|
||||
add_child(button_delete);
|
||||
button_delete->connect("pressed", callable_mp(this, &AbstractPolygon2DEditor::_menu_option), varray(MODE_DELETE));
|
||||
button_delete->connect("pressed", callable_mp(this, &AbstractPolygon2DEditor::_menu_option).bind(MODE_DELETE));
|
||||
button_delete->set_toggle_mode(true);
|
||||
|
||||
create_resource = memnew(ConfirmationDialog);
|
||||
|
@ -612,7 +612,7 @@ AnimationNodeBlendSpace1DEditor::AnimationNodeBlendSpace1DEditor() {
|
||||
top_hb->add_child(tool_blend);
|
||||
tool_blend->set_pressed(true);
|
||||
tool_blend->set_tooltip(TTR("Set the blending position within the space"));
|
||||
tool_blend->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace1DEditor::_tool_switch), varray(3));
|
||||
tool_blend->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace1DEditor::_tool_switch).bind(3));
|
||||
|
||||
tool_select = memnew(Button);
|
||||
tool_select->set_flat(true);
|
||||
@ -620,7 +620,7 @@ AnimationNodeBlendSpace1DEditor::AnimationNodeBlendSpace1DEditor() {
|
||||
tool_select->set_button_group(bg);
|
||||
top_hb->add_child(tool_select);
|
||||
tool_select->set_tooltip(TTR("Select and move points, create points with RMB."));
|
||||
tool_select->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace1DEditor::_tool_switch), varray(0));
|
||||
tool_select->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace1DEditor::_tool_switch).bind(0));
|
||||
|
||||
tool_create = memnew(Button);
|
||||
tool_create->set_flat(true);
|
||||
@ -628,7 +628,7 @@ AnimationNodeBlendSpace1DEditor::AnimationNodeBlendSpace1DEditor() {
|
||||
tool_create->set_button_group(bg);
|
||||
top_hb->add_child(tool_create);
|
||||
tool_create->set_tooltip(TTR("Create points."));
|
||||
tool_create->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace1DEditor::_tool_switch), varray(1));
|
||||
tool_create->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace1DEditor::_tool_switch).bind(1));
|
||||
|
||||
tool_erase_sep = memnew(VSeparator);
|
||||
top_hb->add_child(tool_erase_sep);
|
||||
@ -675,7 +675,7 @@ AnimationNodeBlendSpace1DEditor::AnimationNodeBlendSpace1DEditor() {
|
||||
open_editor = memnew(Button);
|
||||
edit_hb->add_child(open_editor);
|
||||
open_editor->set_text(TTR("Open Editor"));
|
||||
open_editor->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace1DEditor::_open_editor), varray(), CONNECT_DEFERRED);
|
||||
open_editor->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace1DEditor::_open_editor), CONNECT_DEFERRED);
|
||||
|
||||
edit_hb->hide();
|
||||
open_editor->hide();
|
||||
|
@ -832,7 +832,7 @@ AnimationNodeBlendSpace2DEditor::AnimationNodeBlendSpace2DEditor() {
|
||||
top_hb->add_child(tool_blend);
|
||||
tool_blend->set_pressed(true);
|
||||
tool_blend->set_tooltip(TTR("Set the blending position within the space"));
|
||||
tool_blend->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace2DEditor::_tool_switch), varray(3));
|
||||
tool_blend->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace2DEditor::_tool_switch).bind(3));
|
||||
|
||||
tool_select = memnew(Button);
|
||||
tool_select->set_flat(true);
|
||||
@ -840,7 +840,7 @@ AnimationNodeBlendSpace2DEditor::AnimationNodeBlendSpace2DEditor() {
|
||||
tool_select->set_button_group(bg);
|
||||
top_hb->add_child(tool_select);
|
||||
tool_select->set_tooltip(TTR("Select and move points, create points with RMB."));
|
||||
tool_select->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace2DEditor::_tool_switch), varray(0));
|
||||
tool_select->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace2DEditor::_tool_switch).bind(0));
|
||||
|
||||
tool_create = memnew(Button);
|
||||
tool_create->set_flat(true);
|
||||
@ -848,7 +848,7 @@ AnimationNodeBlendSpace2DEditor::AnimationNodeBlendSpace2DEditor() {
|
||||
tool_create->set_button_group(bg);
|
||||
top_hb->add_child(tool_create);
|
||||
tool_create->set_tooltip(TTR("Create points."));
|
||||
tool_create->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace2DEditor::_tool_switch), varray(1));
|
||||
tool_create->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace2DEditor::_tool_switch).bind(1));
|
||||
|
||||
tool_triangle = memnew(Button);
|
||||
tool_triangle->set_flat(true);
|
||||
@ -856,7 +856,7 @@ AnimationNodeBlendSpace2DEditor::AnimationNodeBlendSpace2DEditor() {
|
||||
tool_triangle->set_button_group(bg);
|
||||
top_hb->add_child(tool_triangle);
|
||||
tool_triangle->set_tooltip(TTR("Create triangles by connecting points."));
|
||||
tool_triangle->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace2DEditor::_tool_switch), varray(2));
|
||||
tool_triangle->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace2DEditor::_tool_switch).bind(2));
|
||||
|
||||
tool_erase_sep = memnew(VSeparator);
|
||||
top_hb->add_child(tool_erase_sep);
|
||||
@ -933,7 +933,7 @@ AnimationNodeBlendSpace2DEditor::AnimationNodeBlendSpace2DEditor() {
|
||||
open_editor = memnew(Button);
|
||||
edit_hb->add_child(open_editor);
|
||||
open_editor->set_text(TTR("Open Editor"));
|
||||
open_editor->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace2DEditor::_open_editor), varray(), CONNECT_DEFERRED);
|
||||
open_editor->connect("pressed", callable_mp(this, &AnimationNodeBlendSpace2DEditor::_open_editor), CONNECT_DEFERRED);
|
||||
edit_hb->hide();
|
||||
open_editor->hide();
|
||||
|
||||
|
@ -147,11 +147,11 @@ void AnimationNodeBlendTreeEditor::_update_graph() {
|
||||
name->set_expand_to_text_length_enabled(true);
|
||||
node->add_child(name);
|
||||
node->set_slot(0, false, 0, Color(), true, 0, get_theme_color(SNAME("font_color"), SNAME("Label")));
|
||||
name->connect("text_submitted", callable_mp(this, &AnimationNodeBlendTreeEditor::_node_renamed), varray(agnode), CONNECT_DEFERRED);
|
||||
name->connect("focus_exited", callable_mp(this, &AnimationNodeBlendTreeEditor::_node_renamed_focus_out), varray(name, agnode), CONNECT_DEFERRED);
|
||||
name->connect("text_submitted", callable_mp(this, &AnimationNodeBlendTreeEditor::_node_renamed).bind(agnode), CONNECT_DEFERRED);
|
||||
name->connect("focus_exited", callable_mp(this, &AnimationNodeBlendTreeEditor::_node_renamed_focus_out).bind(name, agnode), CONNECT_DEFERRED);
|
||||
base = 1;
|
||||
node->set_show_close_button(true);
|
||||
node->connect("close_request", callable_mp(this, &AnimationNodeBlendTreeEditor::_delete_request), varray(E), CONNECT_DEFERRED);
|
||||
node->connect("close_request", callable_mp(this, &AnimationNodeBlendTreeEditor::_delete_request).bind(E), CONNECT_DEFERRED);
|
||||
}
|
||||
|
||||
for (int i = 0; i < agnode->get_input_count(); i++) {
|
||||
@ -179,7 +179,7 @@ void AnimationNodeBlendTreeEditor::_update_graph() {
|
||||
}
|
||||
}
|
||||
|
||||
node->connect("dragged", callable_mp(this, &AnimationNodeBlendTreeEditor::_node_dragged), varray(E));
|
||||
node->connect("dragged", callable_mp(this, &AnimationNodeBlendTreeEditor::_node_dragged).bind(E));
|
||||
|
||||
if (AnimationTreeEditor::get_singleton()->can_edit(agnode)) {
|
||||
node->add_child(memnew(HSeparator));
|
||||
@ -187,7 +187,7 @@ void AnimationNodeBlendTreeEditor::_update_graph() {
|
||||
open_in_editor->set_text(TTR("Open Editor"));
|
||||
open_in_editor->set_icon(get_theme_icon(SNAME("Edit"), SNAME("EditorIcons")));
|
||||
node->add_child(open_in_editor);
|
||||
open_in_editor->connect("pressed", callable_mp(this, &AnimationNodeBlendTreeEditor::_open_in_editor), varray(E), CONNECT_DEFERRED);
|
||||
open_in_editor->connect("pressed", callable_mp(this, &AnimationNodeBlendTreeEditor::_open_in_editor).bind(E), CONNECT_DEFERRED);
|
||||
open_in_editor->set_h_size_flags(SIZE_SHRINK_CENTER);
|
||||
}
|
||||
|
||||
@ -197,7 +197,7 @@ void AnimationNodeBlendTreeEditor::_update_graph() {
|
||||
edit_filters->set_text(TTR("Edit Filters"));
|
||||
edit_filters->set_icon(get_theme_icon(SNAME("AnimationFilter"), SNAME("EditorIcons")));
|
||||
node->add_child(edit_filters);
|
||||
edit_filters->connect("pressed", callable_mp(this, &AnimationNodeBlendTreeEditor::_edit_filters), varray(E), CONNECT_DEFERRED);
|
||||
edit_filters->connect("pressed", callable_mp(this, &AnimationNodeBlendTreeEditor::_edit_filters).bind(E), CONNECT_DEFERRED);
|
||||
edit_filters->set_h_size_flags(SIZE_SHRINK_CENTER);
|
||||
}
|
||||
|
||||
@ -236,7 +236,7 @@ void AnimationNodeBlendTreeEditor::_update_graph() {
|
||||
animations[E] = pb;
|
||||
node->add_child(pb);
|
||||
|
||||
mb->get_popup()->connect("index_pressed", callable_mp(this, &AnimationNodeBlendTreeEditor::_anim_selected), varray(options, E), CONNECT_DEFERRED);
|
||||
mb->get_popup()->connect("index_pressed", callable_mp(this, &AnimationNodeBlendTreeEditor::_anim_selected).bind(options, E), CONNECT_DEFERRED);
|
||||
}
|
||||
|
||||
Ref<StyleBoxFlat> sb = node->get_theme_stylebox(SNAME("frame"), SNAME("GraphNode"));
|
||||
@ -961,8 +961,8 @@ AnimationNodeBlendTreeEditor::AnimationNodeBlendTreeEditor() {
|
||||
graph->add_valid_right_disconnect_type(0);
|
||||
graph->add_valid_left_disconnect_type(0);
|
||||
graph->set_v_size_flags(SIZE_EXPAND_FILL);
|
||||
graph->connect("connection_request", callable_mp(this, &AnimationNodeBlendTreeEditor::_connection_request), varray(), CONNECT_DEFERRED);
|
||||
graph->connect("disconnection_request", callable_mp(this, &AnimationNodeBlendTreeEditor::_disconnection_request), varray(), CONNECT_DEFERRED);
|
||||
graph->connect("connection_request", callable_mp(this, &AnimationNodeBlendTreeEditor::_connection_request), CONNECT_DEFERRED);
|
||||
graph->connect("disconnection_request", callable_mp(this, &AnimationNodeBlendTreeEditor::_disconnection_request), CONNECT_DEFERRED);
|
||||
graph->connect("node_selected", callable_mp(this, &AnimationNodeBlendTreeEditor::_node_selected));
|
||||
graph->connect("scroll_offset_changed", callable_mp(this, &AnimationNodeBlendTreeEditor::_scroll_changed));
|
||||
graph->connect("delete_nodes_request", callable_mp(this, &AnimationNodeBlendTreeEditor::_delete_nodes_request));
|
||||
@ -983,7 +983,7 @@ AnimationNodeBlendTreeEditor::AnimationNodeBlendTreeEditor() {
|
||||
add_node->set_text(TTR("Add Node..."));
|
||||
graph->get_zoom_hbox()->move_child(add_node, 0);
|
||||
add_node->get_popup()->connect("id_pressed", callable_mp(this, &AnimationNodeBlendTreeEditor::_add_node));
|
||||
add_node->connect("about_to_popup", callable_mp(this, &AnimationNodeBlendTreeEditor::_update_options_menu), varray(false));
|
||||
add_node->connect("about_to_popup", callable_mp(this, &AnimationNodeBlendTreeEditor::_update_options_menu).bind(false));
|
||||
|
||||
add_options.push_back(AddOption("Animation", "AnimationNodeAnimation"));
|
||||
add_options.push_back(AddOption("OneShot", "AnimationNodeOneShot", 2));
|
||||
|
@ -1633,7 +1633,7 @@ AnimationPlayerEditor::AnimationPlayerEditor(AnimationPlayerEditorPlugin *p_plug
|
||||
onion_toggle->set_flat(true);
|
||||
onion_toggle->set_toggle_mode(true);
|
||||
onion_toggle->set_tooltip(TTR("Enable Onion Skinning"));
|
||||
onion_toggle->connect("pressed", callable_mp(this, &AnimationPlayerEditor::_onion_skinning_menu), varray(ONION_SKINNING_ENABLE));
|
||||
onion_toggle->connect("pressed", callable_mp(this, &AnimationPlayerEditor::_onion_skinning_menu).bind(ONION_SKINNING_ENABLE));
|
||||
hb->add_child(onion_toggle);
|
||||
|
||||
onion_skinning = memnew(MenuButton);
|
||||
@ -1720,7 +1720,7 @@ AnimationPlayerEditor::AnimationPlayerEditor(AnimationPlayerEditorPlugin *p_plug
|
||||
|
||||
animation->connect("item_selected", callable_mp(this, &AnimationPlayerEditor::_animation_selected));
|
||||
|
||||
frame->connect("value_changed", callable_mp(this, &AnimationPlayerEditor::_seek_value_changed), make_binds(true, false));
|
||||
frame->connect("value_changed", callable_mp(this, &AnimationPlayerEditor::_seek_value_changed).bind(true, false));
|
||||
scale->connect("text_submitted", callable_mp(this, &AnimationPlayerEditor::_scale_changed));
|
||||
|
||||
last_active = false;
|
||||
|
@ -1899,7 +1899,7 @@ AnimationNodeStateMachineEditor::AnimationNodeStateMachineEditor() {
|
||||
tool_select->set_button_group(bg);
|
||||
tool_select->set_pressed(true);
|
||||
tool_select->set_tooltip(TTR("Select and move nodes.\nRMB: Add node at position clicked.\nShift+LMB+Drag: Connects the selected node with another node or creates a new node if you select an area without nodes."));
|
||||
tool_select->connect("pressed", callable_mp(this, &AnimationNodeStateMachineEditor::_update_mode), varray(), CONNECT_DEFERRED);
|
||||
tool_select->connect("pressed", callable_mp(this, &AnimationNodeStateMachineEditor::_update_mode), CONNECT_DEFERRED);
|
||||
|
||||
tool_create = memnew(Button);
|
||||
tool_create->set_flat(true);
|
||||
@ -1907,7 +1907,7 @@ AnimationNodeStateMachineEditor::AnimationNodeStateMachineEditor() {
|
||||
tool_create->set_toggle_mode(true);
|
||||
tool_create->set_button_group(bg);
|
||||
tool_create->set_tooltip(TTR("Create new nodes."));
|
||||
tool_create->connect("pressed", callable_mp(this, &AnimationNodeStateMachineEditor::_update_mode), varray(), CONNECT_DEFERRED);
|
||||
tool_create->connect("pressed", callable_mp(this, &AnimationNodeStateMachineEditor::_update_mode), CONNECT_DEFERRED);
|
||||
|
||||
tool_connect = memnew(Button);
|
||||
tool_connect->set_flat(true);
|
||||
@ -1915,7 +1915,7 @@ AnimationNodeStateMachineEditor::AnimationNodeStateMachineEditor() {
|
||||
tool_connect->set_toggle_mode(true);
|
||||
tool_connect->set_button_group(bg);
|
||||
tool_connect->set_tooltip(TTR("Connect nodes."));
|
||||
tool_connect->connect("pressed", callable_mp(this, &AnimationNodeStateMachineEditor::_update_mode), varray(), CONNECT_DEFERRED);
|
||||
tool_connect->connect("pressed", callable_mp(this, &AnimationNodeStateMachineEditor::_update_mode), CONNECT_DEFERRED);
|
||||
|
||||
tool_erase_hb = memnew(HBoxContainer);
|
||||
top_hb->add_child(tool_erase_hb);
|
||||
@ -1938,7 +1938,7 @@ AnimationNodeStateMachineEditor::AnimationNodeStateMachineEditor() {
|
||||
tool_erase = memnew(Button);
|
||||
tool_erase->set_flat(true);
|
||||
tool_erase->set_tooltip(TTR("Remove selected node or transition."));
|
||||
tool_erase->connect("pressed", callable_mp(this, &AnimationNodeStateMachineEditor::_erase_selected), varray(false));
|
||||
tool_erase->connect("pressed", callable_mp(this, &AnimationNodeStateMachineEditor::_erase_selected).bind(false));
|
||||
tool_erase->set_disabled(true);
|
||||
tool_erase_hb->add_child(tool_erase);
|
||||
|
||||
|
@ -86,7 +86,7 @@ void AnimationTreeEditor::_update_path() {
|
||||
b->set_button_group(group);
|
||||
b->set_pressed(true);
|
||||
b->set_focus_mode(FOCUS_NONE);
|
||||
b->connect("pressed", callable_mp(this, &AnimationTreeEditor::_path_button_pressed), varray(-1));
|
||||
b->connect("pressed", callable_mp(this, &AnimationTreeEditor::_path_button_pressed).bind(-1));
|
||||
path_hb->add_child(b);
|
||||
for (int i = 0; i < button_path.size(); i++) {
|
||||
b = memnew(Button);
|
||||
@ -96,7 +96,7 @@ void AnimationTreeEditor::_update_path() {
|
||||
path_hb->add_child(b);
|
||||
b->set_pressed(true);
|
||||
b->set_focus_mode(FOCUS_NONE);
|
||||
b->connect("pressed", callable_mp(this, &AnimationTreeEditor::_path_button_pressed), varray(i));
|
||||
b->connect("pressed", callable_mp(this, &AnimationTreeEditor::_path_button_pressed).bind(i));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -253,7 +253,7 @@ void EditorAssetLibraryItemDescription::add_preview(int p_id, bool p_video, cons
|
||||
preview.button = memnew(Button);
|
||||
preview.button->set_icon(previews->get_theme_icon(SNAME("ThumbnailWait"), SNAME("EditorIcons")));
|
||||
preview.button->set_toggle_mode(true);
|
||||
preview.button->connect("pressed", callable_mp(this, &EditorAssetLibraryItemDescription::_preview_click), varray(p_id));
|
||||
preview.button->connect("pressed", callable_mp(this, &EditorAssetLibraryItemDescription::_preview_click).bind(p_id));
|
||||
preview_hb->add_child(preview.button);
|
||||
if (!p_video) {
|
||||
preview.image = previews->get_theme_icon(SNAME("ThumbnailWait"), SNAME("EditorIcons"));
|
||||
@ -887,7 +887,7 @@ void EditorAssetLibrary::_request_image(ObjectID p_for, String p_image_url, Imag
|
||||
iq.queue_id = ++last_queue_id;
|
||||
iq.active = false;
|
||||
|
||||
iq.request->connect("request_completed", callable_mp(this, &EditorAssetLibrary::_image_request_completed), varray(iq.queue_id));
|
||||
iq.request->connect("request_completed", callable_mp(this, &EditorAssetLibrary::_image_request_completed).bind(iq.queue_id));
|
||||
|
||||
image_queue[iq.queue_id] = iq;
|
||||
|
||||
@ -1006,7 +1006,7 @@ HBoxContainer *EditorAssetLibrary::_make_pages(int p_page, int p_page_count, int
|
||||
Button *first = memnew(Button);
|
||||
first->set_text(TTR("First", "Pagination"));
|
||||
if (p_page != 0) {
|
||||
first->connect("pressed", callable_mp(this, &EditorAssetLibrary::_search), varray(0));
|
||||
first->connect("pressed", callable_mp(this, &EditorAssetLibrary::_search).bind(0));
|
||||
} else {
|
||||
first->set_disabled(true);
|
||||
first->set_focus_mode(Control::FOCUS_NONE);
|
||||
@ -1016,7 +1016,7 @@ HBoxContainer *EditorAssetLibrary::_make_pages(int p_page, int p_page_count, int
|
||||
Button *prev = memnew(Button);
|
||||
prev->set_text(TTR("Previous", "Pagination"));
|
||||
if (p_page > 0) {
|
||||
prev->connect("pressed", callable_mp(this, &EditorAssetLibrary::_search), varray(p_page - 1));
|
||||
prev->connect("pressed", callable_mp(this, &EditorAssetLibrary::_search).bind(p_page - 1));
|
||||
} else {
|
||||
prev->set_disabled(true);
|
||||
prev->set_focus_mode(Control::FOCUS_NONE);
|
||||
@ -1037,7 +1037,7 @@ HBoxContainer *EditorAssetLibrary::_make_pages(int p_page, int p_page_count, int
|
||||
Button *current = memnew(Button);
|
||||
// Add padding to make page number buttons easier to click.
|
||||
current->set_text(vformat(" %d ", i + 1));
|
||||
current->connect("pressed", callable_mp(this, &EditorAssetLibrary::_search), varray(i));
|
||||
current->connect("pressed", callable_mp(this, &EditorAssetLibrary::_search).bind(i));
|
||||
|
||||
hbc->add_child(current);
|
||||
}
|
||||
@ -1046,7 +1046,7 @@ HBoxContainer *EditorAssetLibrary::_make_pages(int p_page, int p_page_count, int
|
||||
Button *next = memnew(Button);
|
||||
next->set_text(TTR("Next", "Pagination"));
|
||||
if (p_page < p_page_count - 1) {
|
||||
next->connect("pressed", callable_mp(this, &EditorAssetLibrary::_search), varray(p_page + 1));
|
||||
next->connect("pressed", callable_mp(this, &EditorAssetLibrary::_search).bind(p_page + 1));
|
||||
} else {
|
||||
next->set_disabled(true);
|
||||
next->set_focus_mode(Control::FOCUS_NONE);
|
||||
@ -1057,7 +1057,7 @@ HBoxContainer *EditorAssetLibrary::_make_pages(int p_page, int p_page_count, int
|
||||
Button *last = memnew(Button);
|
||||
last->set_text(TTR("Last", "Pagination"));
|
||||
if (p_page != p_page_count - 1) {
|
||||
last->connect("pressed", callable_mp(this, &EditorAssetLibrary::_search), varray(p_page_count - 1));
|
||||
last->connect("pressed", callable_mp(this, &EditorAssetLibrary::_search).bind(p_page_count - 1));
|
||||
} else {
|
||||
last->set_disabled(true);
|
||||
last->set_focus_mode(Control::FOCUS_NONE);
|
||||
|
@ -262,7 +262,7 @@ void BoneMapper::recreate_editor() {
|
||||
for (int i = 0; i < len; i++) {
|
||||
if (profile->get_group(i) == profile->get_group_name(current_group_idx)) {
|
||||
BoneMapperButton *mb = memnew(BoneMapperButton(profile->get_bone_name(i), profile->is_require(i), current_bone_idx == i));
|
||||
mb->connect("pressed", callable_mp(this, &BoneMapper::set_current_bone_idx), varray(i), CONNECT_DEFERRED);
|
||||
mb->connect("pressed", callable_mp(this, &BoneMapper::set_current_bone_idx).bind(i), CONNECT_DEFERRED);
|
||||
mb->set_h_grow_direction(GROW_DIRECTION_BOTH);
|
||||
mb->set_v_grow_direction(GROW_DIRECTION_BOTH);
|
||||
Vector2 vc = profile->get_handle_offset(i);
|
||||
|
@ -4977,8 +4977,8 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
SceneTreeDock::get_singleton()->connect("node_created", callable_mp(this, &CanvasItemEditor::_node_created));
|
||||
SceneTreeDock::get_singleton()->connect("add_node_used", callable_mp(this, &CanvasItemEditor::_reset_create_position));
|
||||
|
||||
EditorNode::get_singleton()->call_deferred(SNAME("connect"), "play_pressed", Callable(this, "_update_override_camera_button"), make_binds(true));
|
||||
EditorNode::get_singleton()->call_deferred(SNAME("connect"), "stop_pressed", Callable(this, "_update_override_camera_button"), make_binds(false));
|
||||
EditorNode::get_singleton()->call_deferred(SNAME("connect"), "play_pressed", Callable(this, "_update_override_camera_button").bind(true));
|
||||
EditorNode::get_singleton()->call_deferred(SNAME("connect"), "stop_pressed", Callable(this, "_update_override_camera_button").bind(false));
|
||||
|
||||
// A fluid container for all toolbars.
|
||||
HFlowContainer *main_flow = memnew(HFlowContainer);
|
||||
@ -5072,7 +5072,7 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
select_button->set_flat(true);
|
||||
main_menu_hbox->add_child(select_button);
|
||||
select_button->set_toggle_mode(true);
|
||||
select_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select), make_binds(TOOL_SELECT));
|
||||
select_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select).bind(TOOL_SELECT));
|
||||
select_button->set_pressed(true);
|
||||
select_button->set_shortcut(ED_SHORTCUT("canvas_item_editor/select_mode", TTR("Select Mode"), Key::Q));
|
||||
select_button->set_shortcut_context(this);
|
||||
@ -5084,7 +5084,7 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
move_button->set_flat(true);
|
||||
main_menu_hbox->add_child(move_button);
|
||||
move_button->set_toggle_mode(true);
|
||||
move_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select), make_binds(TOOL_MOVE));
|
||||
move_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select).bind(TOOL_MOVE));
|
||||
move_button->set_shortcut(ED_SHORTCUT("canvas_item_editor/move_mode", TTR("Move Mode"), Key::W));
|
||||
move_button->set_shortcut_context(this);
|
||||
move_button->set_tooltip(TTR("Move Mode"));
|
||||
@ -5093,7 +5093,7 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
rotate_button->set_flat(true);
|
||||
main_menu_hbox->add_child(rotate_button);
|
||||
rotate_button->set_toggle_mode(true);
|
||||
rotate_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select), make_binds(TOOL_ROTATE));
|
||||
rotate_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select).bind(TOOL_ROTATE));
|
||||
rotate_button->set_shortcut(ED_SHORTCUT("canvas_item_editor/rotate_mode", TTR("Rotate Mode"), Key::E));
|
||||
rotate_button->set_shortcut_context(this);
|
||||
rotate_button->set_tooltip(TTR("Rotate Mode"));
|
||||
@ -5102,7 +5102,7 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
scale_button->set_flat(true);
|
||||
main_menu_hbox->add_child(scale_button);
|
||||
scale_button->set_toggle_mode(true);
|
||||
scale_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select), make_binds(TOOL_SCALE));
|
||||
scale_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select).bind(TOOL_SCALE));
|
||||
scale_button->set_shortcut(ED_SHORTCUT("canvas_item_editor/scale_mode", TTR("Scale Mode"), Key::S));
|
||||
scale_button->set_shortcut_context(this);
|
||||
scale_button->set_tooltip(TTR("Shift: Scale proportionally."));
|
||||
@ -5113,21 +5113,21 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
list_select_button->set_flat(true);
|
||||
main_menu_hbox->add_child(list_select_button);
|
||||
list_select_button->set_toggle_mode(true);
|
||||
list_select_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select), make_binds(TOOL_LIST_SELECT));
|
||||
list_select_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select).bind(TOOL_LIST_SELECT));
|
||||
list_select_button->set_tooltip(TTR("Show list of selectable nodes at position clicked."));
|
||||
|
||||
pivot_button = memnew(Button);
|
||||
pivot_button->set_flat(true);
|
||||
main_menu_hbox->add_child(pivot_button);
|
||||
pivot_button->set_toggle_mode(true);
|
||||
pivot_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select), make_binds(TOOL_EDIT_PIVOT));
|
||||
pivot_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select).bind(TOOL_EDIT_PIVOT));
|
||||
pivot_button->set_tooltip(TTR("Click to change object's rotation pivot."));
|
||||
|
||||
pan_button = memnew(Button);
|
||||
pan_button->set_flat(true);
|
||||
main_menu_hbox->add_child(pan_button);
|
||||
pan_button->set_toggle_mode(true);
|
||||
pan_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select), make_binds(TOOL_PAN));
|
||||
pan_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select).bind(TOOL_PAN));
|
||||
pan_button->set_shortcut(ED_SHORTCUT("canvas_item_editor/pan_mode", TTR("Pan Mode"), Key::G));
|
||||
pan_button->set_shortcut_context(this);
|
||||
pan_button->set_tooltip(TTR("You can also use Pan View shortcut (Space by default) to pan in any mode."));
|
||||
@ -5136,7 +5136,7 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
ruler_button->set_flat(true);
|
||||
main_menu_hbox->add_child(ruler_button);
|
||||
ruler_button->set_toggle_mode(true);
|
||||
ruler_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select), make_binds(TOOL_RULER));
|
||||
ruler_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_button_tool_select).bind(TOOL_RULER));
|
||||
ruler_button->set_shortcut(ED_SHORTCUT("canvas_item_editor/ruler_mode", TTR("Ruler Mode"), Key::R));
|
||||
ruler_button->set_shortcut_context(this);
|
||||
ruler_button->set_tooltip(TTR("Ruler Mode"));
|
||||
@ -5198,7 +5198,7 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
lock_button->set_flat(true);
|
||||
main_menu_hbox->add_child(lock_button);
|
||||
|
||||
lock_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback), varray(LOCK_SELECTED));
|
||||
lock_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback).bind(LOCK_SELECTED));
|
||||
lock_button->set_tooltip(TTR("Lock selected node, preventing selection and movement."));
|
||||
// Define the shortcut globally (without a context) so that it works if the Scene tree dock is currently focused.
|
||||
lock_button->set_shortcut(ED_SHORTCUT("editor/lock_selected_nodes", TTR("Lock Selected Node(s)"), KeyModifierMask::CMD | Key::L));
|
||||
@ -5206,7 +5206,7 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
unlock_button = memnew(Button);
|
||||
unlock_button->set_flat(true);
|
||||
main_menu_hbox->add_child(unlock_button);
|
||||
unlock_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback), varray(UNLOCK_SELECTED));
|
||||
unlock_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback).bind(UNLOCK_SELECTED));
|
||||
unlock_button->set_tooltip(TTR("Unlock selected node, allowing selection and movement."));
|
||||
// Define the shortcut globally (without a context) so that it works if the Scene tree dock is currently focused.
|
||||
unlock_button->set_shortcut(ED_SHORTCUT("editor/unlock_selected_nodes", TTR("Unlock Selected Node(s)"), KeyModifierMask::CMD | KeyModifierMask::SHIFT | Key::L));
|
||||
@ -5214,7 +5214,7 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
group_button = memnew(Button);
|
||||
group_button->set_flat(true);
|
||||
main_menu_hbox->add_child(group_button);
|
||||
group_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback), varray(GROUP_SELECTED));
|
||||
group_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback).bind(GROUP_SELECTED));
|
||||
group_button->set_tooltip(TTR("Makes sure the object's children are not selectable."));
|
||||
// Define the shortcut globally (without a context) so that it works if the Scene tree dock is currently focused.
|
||||
group_button->set_shortcut(ED_SHORTCUT("editor/group_selected_nodes", TTR("Group Selected Node(s)"), KeyModifierMask::CMD | Key::G));
|
||||
@ -5222,7 +5222,7 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
ungroup_button = memnew(Button);
|
||||
ungroup_button->set_flat(true);
|
||||
main_menu_hbox->add_child(ungroup_button);
|
||||
ungroup_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback), varray(UNGROUP_SELECTED));
|
||||
ungroup_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback).bind(UNGROUP_SELECTED));
|
||||
ungroup_button->set_tooltip(TTR("Restores the object's children's ability to be selected."));
|
||||
// Define the shortcut globally (without a context) so that it works if the Scene tree dock is currently focused.
|
||||
ungroup_button->set_shortcut(ED_SHORTCUT("editor/ungroup_selected_nodes", TTR("Ungroup Selected Node(s)"), KeyModifierMask::CMD | KeyModifierMask::SHIFT | Key::G));
|
||||
@ -5311,7 +5311,7 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
key_loc_button->set_toggle_mode(true);
|
||||
key_loc_button->set_pressed(true);
|
||||
key_loc_button->set_focus_mode(FOCUS_NONE);
|
||||
key_loc_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback), varray(ANIM_INSERT_POS));
|
||||
key_loc_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback).bind(ANIM_INSERT_POS));
|
||||
key_loc_button->set_tooltip(TTR("Translation mask for inserting keys."));
|
||||
animation_hb->add_child(key_loc_button);
|
||||
|
||||
@ -5320,7 +5320,7 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
key_rot_button->set_toggle_mode(true);
|
||||
key_rot_button->set_pressed(true);
|
||||
key_rot_button->set_focus_mode(FOCUS_NONE);
|
||||
key_rot_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback), varray(ANIM_INSERT_ROT));
|
||||
key_rot_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback).bind(ANIM_INSERT_ROT));
|
||||
key_rot_button->set_tooltip(TTR("Rotation mask for inserting keys."));
|
||||
animation_hb->add_child(key_rot_button);
|
||||
|
||||
@ -5328,14 +5328,14 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
key_scale_button->set_flat(true);
|
||||
key_scale_button->set_toggle_mode(true);
|
||||
key_scale_button->set_focus_mode(FOCUS_NONE);
|
||||
key_scale_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback), varray(ANIM_INSERT_SCALE));
|
||||
key_scale_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback).bind(ANIM_INSERT_SCALE));
|
||||
key_scale_button->set_tooltip(TTR("Scale mask for inserting keys."));
|
||||
animation_hb->add_child(key_scale_button);
|
||||
|
||||
key_insert_button = memnew(Button);
|
||||
key_insert_button->set_flat(true);
|
||||
key_insert_button->set_focus_mode(FOCUS_NONE);
|
||||
key_insert_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback), varray(ANIM_INSERT_KEY));
|
||||
key_insert_button->connect("pressed", callable_mp(this, &CanvasItemEditor::_popup_callback).bind(ANIM_INSERT_KEY));
|
||||
key_insert_button->set_tooltip(TTR("Insert keys (based on mask)."));
|
||||
key_insert_button->set_shortcut(ED_SHORTCUT("canvas_item_editor/anim_insert_key", TTR("Insert Key"), Key::INSERT));
|
||||
key_insert_button->set_shortcut_context(this);
|
||||
@ -5376,7 +5376,7 @@ CanvasItemEditor::CanvasItemEditor() {
|
||||
add_child(selection_menu);
|
||||
selection_menu->set_min_size(Vector2(100, 0));
|
||||
selection_menu->connect("id_pressed", callable_mp(this, &CanvasItemEditor::_selection_result_pressed));
|
||||
selection_menu->connect("popup_hide", callable_mp(this, &CanvasItemEditor::_selection_menu_hide), varray(), CONNECT_DEFERRED);
|
||||
selection_menu->connect("popup_hide", callable_mp(this, &CanvasItemEditor::_selection_menu_hide), CONNECT_DEFERRED);
|
||||
|
||||
add_node_menu = memnew(PopupMenu);
|
||||
add_child(add_node_menu);
|
||||
@ -5915,7 +5915,7 @@ CanvasItemEditorViewport::CanvasItemEditorViewport(CanvasItemEditor *p_canvas_it
|
||||
CheckBox *check = memnew(CheckBox);
|
||||
btn_group->add_child(check);
|
||||
check->set_text(texture_node_types[i]);
|
||||
check->connect("button_down", callable_mp(this, &CanvasItemEditorViewport::_on_select_type), varray(check));
|
||||
check->connect("button_down", callable_mp(this, &CanvasItemEditorViewport::_on_select_type).bind(check));
|
||||
check->set_button_group(button_group);
|
||||
}
|
||||
|
||||
|
@ -307,7 +307,7 @@ Ref<Texture2D> EditorMaterialPreviewPlugin::generate(const Ref<Resource> &p_from
|
||||
if (material->get_shader_mode() == Shader::MODE_SPATIAL) {
|
||||
RS::get_singleton()->mesh_surface_set_material(sphere, 0, material->get_rid());
|
||||
|
||||
RS::get_singleton()->connect(SNAME("frame_pre_draw"), callable_mp(const_cast<EditorMaterialPreviewPlugin *>(this), &EditorMaterialPreviewPlugin::_generate_frame_started), Vector<Variant>(), Object::CONNECT_ONESHOT);
|
||||
RS::get_singleton()->connect(SNAME("frame_pre_draw"), callable_mp(const_cast<EditorMaterialPreviewPlugin *>(this), &EditorMaterialPreviewPlugin::_generate_frame_started), Object::CONNECT_ONESHOT);
|
||||
|
||||
preview_done.wait();
|
||||
|
||||
@ -702,7 +702,7 @@ Ref<Texture2D> EditorMeshPreviewPlugin::generate(const Ref<Resource> &p_from, co
|
||||
xform.origin.z -= rot_aabb.size.z * 2;
|
||||
RS::get_singleton()->instance_set_transform(mesh_instance, xform);
|
||||
|
||||
RS::get_singleton()->connect(SNAME("frame_pre_draw"), callable_mp(const_cast<EditorMeshPreviewPlugin *>(this), &EditorMeshPreviewPlugin::_generate_frame_started), Vector<Variant>(), Object::CONNECT_ONESHOT);
|
||||
RS::get_singleton()->connect(SNAME("frame_pre_draw"), callable_mp(const_cast<EditorMeshPreviewPlugin *>(this), &EditorMeshPreviewPlugin::_generate_frame_started), Object::CONNECT_ONESHOT);
|
||||
|
||||
preview_done.wait();
|
||||
|
||||
@ -812,7 +812,7 @@ Ref<Texture2D> EditorFontPreviewPlugin::generate_from_path(const String &p_path,
|
||||
const float fg = c.get_luminance() < 0.5 ? 1.0 : 0.0;
|
||||
sampled_font->draw_string(canvas_item, pos, sample, HORIZONTAL_ALIGNMENT_LEFT, -1.f, 50, Color(fg, fg, fg));
|
||||
|
||||
RS::get_singleton()->connect(SNAME("frame_pre_draw"), callable_mp(const_cast<EditorFontPreviewPlugin *>(this), &EditorFontPreviewPlugin::_generate_frame_started), Vector<Variant>(), Object::CONNECT_ONESHOT);
|
||||
RS::get_singleton()->connect(SNAME("frame_pre_draw"), callable_mp(const_cast<EditorFontPreviewPlugin *>(this), &EditorFontPreviewPlugin::_generate_frame_started), Object::CONNECT_ONESHOT);
|
||||
|
||||
preview_done.wait();
|
||||
|
||||
|
@ -307,7 +307,7 @@ void EditorPropertyFontMetaOverride::update_property() {
|
||||
Button *remove = memnew(Button);
|
||||
remove->set_icon(get_theme_icon(SNAME("Remove"), SNAME("EditorIcons")));
|
||||
hbox->add_child(remove);
|
||||
remove->connect("pressed", callable_mp(this, &EditorPropertyFontMetaOverride::_remove), varray(remove, name));
|
||||
remove->connect("pressed", callable_mp(this, &EditorPropertyFontMetaOverride::_remove).bind(remove, name));
|
||||
|
||||
prop->update_property();
|
||||
}
|
||||
@ -783,7 +783,7 @@ void EditorPropertyOTFeatures::update_property() {
|
||||
Button *remove = memnew(Button);
|
||||
remove->set_icon(get_theme_icon(SNAME("Remove"), SNAME("EditorIcons")));
|
||||
hbox->add_child(remove);
|
||||
remove->connect("pressed", callable_mp(this, &EditorPropertyOTFeatures::_remove), varray(remove, name_tag));
|
||||
remove->connect("pressed", callable_mp(this, &EditorPropertyOTFeatures::_remove).bind(remove, name_tag));
|
||||
|
||||
prop->update_property();
|
||||
}
|
||||
|
@ -85,7 +85,7 @@ void GradientEditor::reverse_gradient() {
|
||||
}
|
||||
|
||||
GradientEditor::GradientEditor() {
|
||||
GradientEdit::get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker), varray(GradientEdit::get_picker()));
|
||||
GradientEdit::get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker).bind(GradientEdit::get_picker()));
|
||||
editing = false;
|
||||
}
|
||||
|
||||
|
@ -201,13 +201,13 @@ MaterialEditor::MaterialEditor() {
|
||||
sphere_switch->set_toggle_mode(true);
|
||||
sphere_switch->set_pressed(true);
|
||||
vb_shape->add_child(sphere_switch);
|
||||
sphere_switch->connect("pressed", callable_mp(this, &MaterialEditor::_button_pressed), varray(sphere_switch));
|
||||
sphere_switch->connect("pressed", callable_mp(this, &MaterialEditor::_button_pressed).bind(sphere_switch));
|
||||
|
||||
box_switch = memnew(TextureButton);
|
||||
box_switch->set_toggle_mode(true);
|
||||
box_switch->set_pressed(false);
|
||||
vb_shape->add_child(box_switch);
|
||||
box_switch->connect("pressed", callable_mp(this, &MaterialEditor::_button_pressed), varray(box_switch));
|
||||
box_switch->connect("pressed", callable_mp(this, &MaterialEditor::_button_pressed).bind(box_switch));
|
||||
|
||||
layout_3d->add_spacer();
|
||||
|
||||
@ -217,12 +217,12 @@ MaterialEditor::MaterialEditor() {
|
||||
light_1_switch = memnew(TextureButton);
|
||||
light_1_switch->set_toggle_mode(true);
|
||||
vb_light->add_child(light_1_switch);
|
||||
light_1_switch->connect("pressed", callable_mp(this, &MaterialEditor::_button_pressed), varray(light_1_switch));
|
||||
light_1_switch->connect("pressed", callable_mp(this, &MaterialEditor::_button_pressed).bind(light_1_switch));
|
||||
|
||||
light_2_switch = memnew(TextureButton);
|
||||
light_2_switch->set_toggle_mode(true);
|
||||
vb_light->add_child(light_2_switch);
|
||||
light_2_switch->connect("pressed", callable_mp(this, &MaterialEditor::_button_pressed), varray(light_2_switch));
|
||||
light_2_switch->connect("pressed", callable_mp(this, &MaterialEditor::_button_pressed).bind(light_2_switch));
|
||||
|
||||
first_enter = true;
|
||||
|
||||
|
@ -147,12 +147,12 @@ MeshEditor::MeshEditor() {
|
||||
light_1_switch = memnew(TextureButton);
|
||||
light_1_switch->set_toggle_mode(true);
|
||||
vb_light->add_child(light_1_switch);
|
||||
light_1_switch->connect("pressed", callable_mp(this, &MeshEditor::_button_pressed), varray(light_1_switch));
|
||||
light_1_switch->connect("pressed", callable_mp(this, &MeshEditor::_button_pressed).bind(light_1_switch));
|
||||
|
||||
light_2_switch = memnew(TextureButton);
|
||||
light_2_switch->set_toggle_mode(true);
|
||||
vb_light->add_child(light_2_switch);
|
||||
light_2_switch->connect("pressed", callable_mp(this, &MeshEditor::_button_pressed), varray(light_2_switch));
|
||||
light_2_switch->connect("pressed", callable_mp(this, &MeshEditor::_button_pressed).bind(light_2_switch));
|
||||
|
||||
first_enter = true;
|
||||
|
||||
|
@ -289,8 +289,8 @@ MeshLibraryEditor::MeshLibraryEditor() {
|
||||
cd_update = memnew(ConfirmationDialog);
|
||||
add_child(cd_update);
|
||||
cd_update->set_ok_button_text(TTR("Apply without Transforms"));
|
||||
cd_update->get_ok_button()->connect("pressed", callable_mp(this, &MeshLibraryEditor::_menu_update_confirm), varray(false));
|
||||
cd_update->add_button(TTR("Apply with Transforms"))->connect("pressed", callable_mp(this, &MeshLibraryEditor::_menu_update_confirm), varray(true));
|
||||
cd_update->get_ok_button()->connect("pressed", callable_mp(this, &MeshLibraryEditor::_menu_update_confirm).bind(false));
|
||||
cd_update->add_button(TTR("Apply with Transforms"))->connect("pressed", callable_mp(this, &MeshLibraryEditor::_menu_update_confirm).bind(true));
|
||||
}
|
||||
|
||||
void MeshLibraryEditorPlugin::edit(Object *p_node) {
|
||||
|
@ -291,7 +291,7 @@ MultiMeshEditor::MultiMeshEditor() {
|
||||
Button *b = memnew(Button);
|
||||
hbc->add_child(b);
|
||||
b->set_text("..");
|
||||
b->connect("pressed", callable_mp(this, &MultiMeshEditor::_browse), make_binds(false));
|
||||
b->connect("pressed", callable_mp(this, &MultiMeshEditor::_browse).bind(false));
|
||||
|
||||
vbc->add_margin_child(TTR("Target Surface:"), hbc);
|
||||
|
||||
@ -303,7 +303,7 @@ MultiMeshEditor::MultiMeshEditor() {
|
||||
hbc->add_child(b);
|
||||
b->set_text("..");
|
||||
vbc->add_margin_child(TTR("Source Mesh:"), hbc);
|
||||
b->connect("pressed", callable_mp(this, &MultiMeshEditor::_browse), make_binds(true));
|
||||
b->connect("pressed", callable_mp(this, &MultiMeshEditor::_browse).bind(true));
|
||||
|
||||
populate_axis = memnew(OptionButton);
|
||||
populate_axis->add_item(TTR("X-Axis"));
|
||||
|
@ -4616,7 +4616,7 @@ void Node3DEditorViewport::register_shortcut_action(const String &p_path, const
|
||||
Ref<Shortcut> sc = ED_SHORTCUT(p_path, p_name, p_keycode);
|
||||
shortcut_changed_callback(sc, p_path);
|
||||
// Connect to the change event on the shortcut so the input binding can be updated.
|
||||
sc->connect("changed", callable_mp(this, &Node3DEditorViewport::shortcut_changed_callback), varray(sc, p_path));
|
||||
sc->connect("changed", callable_mp(this, &Node3DEditorViewport::shortcut_changed_callback).bind(sc, p_path));
|
||||
}
|
||||
|
||||
// Update the action in the InputMap to the provided shortcut events.
|
||||
@ -7182,8 +7182,8 @@ void Node3DEditor::_notification(int p_what) {
|
||||
SceneTreeDock::get_singleton()->get_tree_editor()->connect("node_changed", callable_mp(this, &Node3DEditor::_refresh_menu_icons));
|
||||
editor_selection->connect("selection_changed", callable_mp(this, &Node3DEditor::_selection_changed));
|
||||
|
||||
EditorNode::get_singleton()->connect("stop_pressed", callable_mp(this, &Node3DEditor::_update_camera_override_button), make_binds(false));
|
||||
EditorNode::get_singleton()->connect("play_pressed", callable_mp(this, &Node3DEditor::_update_camera_override_button), make_binds(true));
|
||||
EditorNode::get_singleton()->connect("stop_pressed", callable_mp(this, &Node3DEditor::_update_camera_override_button).bind(false));
|
||||
EditorNode::get_singleton()->connect("play_pressed", callable_mp(this, &Node3DEditor::_update_camera_override_button).bind(true));
|
||||
|
||||
_update_preview_environment();
|
||||
|
||||
@ -7722,8 +7722,6 @@ Node3DEditor::Node3DEditor() {
|
||||
HBoxContainer *main_menu_hbox = memnew(HBoxContainer);
|
||||
main_flow->add_child(main_menu_hbox);
|
||||
|
||||
Vector<Variant> button_binds;
|
||||
button_binds.resize(1);
|
||||
String sct;
|
||||
|
||||
// Add some margin to the left for better aesthetics.
|
||||
@ -7738,8 +7736,7 @@ Node3DEditor::Node3DEditor() {
|
||||
tool_button[TOOL_MODE_SELECT]->set_toggle_mode(true);
|
||||
tool_button[TOOL_MODE_SELECT]->set_flat(true);
|
||||
tool_button[TOOL_MODE_SELECT]->set_pressed(true);
|
||||
button_binds.write[0] = MENU_TOOL_SELECT;
|
||||
tool_button[TOOL_MODE_SELECT]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed), button_binds);
|
||||
tool_button[TOOL_MODE_SELECT]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed).bind(MENU_TOOL_SELECT));
|
||||
tool_button[TOOL_MODE_SELECT]->set_shortcut(ED_SHORTCUT("spatial_editor/tool_select", TTR("Select Mode"), Key::Q));
|
||||
tool_button[TOOL_MODE_SELECT]->set_shortcut_context(this);
|
||||
tool_button[TOOL_MODE_SELECT]->set_tooltip(keycode_get_string((Key)KeyModifierMask::CMD) + TTR("Drag: Rotate selected node around pivot.") + "\n" + TTR("Alt+RMB: Show list of all nodes at position clicked, including locked."));
|
||||
@ -7749,8 +7746,8 @@ Node3DEditor::Node3DEditor() {
|
||||
main_menu_hbox->add_child(tool_button[TOOL_MODE_MOVE]);
|
||||
tool_button[TOOL_MODE_MOVE]->set_toggle_mode(true);
|
||||
tool_button[TOOL_MODE_MOVE]->set_flat(true);
|
||||
button_binds.write[0] = MENU_TOOL_MOVE;
|
||||
tool_button[TOOL_MODE_MOVE]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed), button_binds);
|
||||
|
||||
tool_button[TOOL_MODE_MOVE]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed).bind(MENU_TOOL_MOVE));
|
||||
tool_button[TOOL_MODE_MOVE]->set_shortcut(ED_SHORTCUT("spatial_editor/tool_move", TTR("Move Mode"), Key::W));
|
||||
tool_button[TOOL_MODE_MOVE]->set_shortcut_context(this);
|
||||
|
||||
@ -7758,8 +7755,7 @@ Node3DEditor::Node3DEditor() {
|
||||
main_menu_hbox->add_child(tool_button[TOOL_MODE_ROTATE]);
|
||||
tool_button[TOOL_MODE_ROTATE]->set_toggle_mode(true);
|
||||
tool_button[TOOL_MODE_ROTATE]->set_flat(true);
|
||||
button_binds.write[0] = MENU_TOOL_ROTATE;
|
||||
tool_button[TOOL_MODE_ROTATE]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed), button_binds);
|
||||
tool_button[TOOL_MODE_ROTATE]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed).bind(MENU_TOOL_ROTATE));
|
||||
tool_button[TOOL_MODE_ROTATE]->set_shortcut(ED_SHORTCUT("spatial_editor/tool_rotate", TTR("Rotate Mode"), Key::E));
|
||||
tool_button[TOOL_MODE_ROTATE]->set_shortcut_context(this);
|
||||
|
||||
@ -7767,8 +7763,7 @@ Node3DEditor::Node3DEditor() {
|
||||
main_menu_hbox->add_child(tool_button[TOOL_MODE_SCALE]);
|
||||
tool_button[TOOL_MODE_SCALE]->set_toggle_mode(true);
|
||||
tool_button[TOOL_MODE_SCALE]->set_flat(true);
|
||||
button_binds.write[0] = MENU_TOOL_SCALE;
|
||||
tool_button[TOOL_MODE_SCALE]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed), button_binds);
|
||||
tool_button[TOOL_MODE_SCALE]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed).bind(MENU_TOOL_SCALE));
|
||||
tool_button[TOOL_MODE_SCALE]->set_shortcut(ED_SHORTCUT("spatial_editor/tool_scale", TTR("Scale Mode"), Key::R));
|
||||
tool_button[TOOL_MODE_SCALE]->set_shortcut_context(this);
|
||||
|
||||
@ -7778,15 +7773,13 @@ Node3DEditor::Node3DEditor() {
|
||||
main_menu_hbox->add_child(tool_button[TOOL_MODE_LIST_SELECT]);
|
||||
tool_button[TOOL_MODE_LIST_SELECT]->set_toggle_mode(true);
|
||||
tool_button[TOOL_MODE_LIST_SELECT]->set_flat(true);
|
||||
button_binds.write[0] = MENU_TOOL_LIST_SELECT;
|
||||
tool_button[TOOL_MODE_LIST_SELECT]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed), button_binds);
|
||||
tool_button[TOOL_MODE_LIST_SELECT]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed).bind(MENU_TOOL_LIST_SELECT));
|
||||
tool_button[TOOL_MODE_LIST_SELECT]->set_tooltip(TTR("Show list of selectable nodes at position clicked."));
|
||||
|
||||
tool_button[TOOL_LOCK_SELECTED] = memnew(Button);
|
||||
main_menu_hbox->add_child(tool_button[TOOL_LOCK_SELECTED]);
|
||||
tool_button[TOOL_LOCK_SELECTED]->set_flat(true);
|
||||
button_binds.write[0] = MENU_LOCK_SELECTED;
|
||||
tool_button[TOOL_LOCK_SELECTED]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed), button_binds);
|
||||
tool_button[TOOL_LOCK_SELECTED]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed).bind(MENU_LOCK_SELECTED));
|
||||
tool_button[TOOL_LOCK_SELECTED]->set_tooltip(TTR("Lock selected node, preventing selection and movement."));
|
||||
// Define the shortcut globally (without a context) so that it works if the Scene tree dock is currently focused.
|
||||
tool_button[TOOL_LOCK_SELECTED]->set_shortcut(ED_SHORTCUT("editor/lock_selected_nodes", TTR("Lock Selected Node(s)"), KeyModifierMask::CMD | Key::L));
|
||||
@ -7794,8 +7787,7 @@ Node3DEditor::Node3DEditor() {
|
||||
tool_button[TOOL_UNLOCK_SELECTED] = memnew(Button);
|
||||
main_menu_hbox->add_child(tool_button[TOOL_UNLOCK_SELECTED]);
|
||||
tool_button[TOOL_UNLOCK_SELECTED]->set_flat(true);
|
||||
button_binds.write[0] = MENU_UNLOCK_SELECTED;
|
||||
tool_button[TOOL_UNLOCK_SELECTED]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed), button_binds);
|
||||
tool_button[TOOL_UNLOCK_SELECTED]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed).bind(MENU_UNLOCK_SELECTED));
|
||||
tool_button[TOOL_UNLOCK_SELECTED]->set_tooltip(TTR("Unlock selected node, allowing selection and movement."));
|
||||
// Define the shortcut globally (without a context) so that it works if the Scene tree dock is currently focused.
|
||||
tool_button[TOOL_UNLOCK_SELECTED]->set_shortcut(ED_SHORTCUT("editor/unlock_selected_nodes", TTR("Unlock Selected Node(s)"), KeyModifierMask::CMD | KeyModifierMask::SHIFT | Key::L));
|
||||
@ -7803,8 +7795,7 @@ Node3DEditor::Node3DEditor() {
|
||||
tool_button[TOOL_GROUP_SELECTED] = memnew(Button);
|
||||
main_menu_hbox->add_child(tool_button[TOOL_GROUP_SELECTED]);
|
||||
tool_button[TOOL_GROUP_SELECTED]->set_flat(true);
|
||||
button_binds.write[0] = MENU_GROUP_SELECTED;
|
||||
tool_button[TOOL_GROUP_SELECTED]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed), button_binds);
|
||||
tool_button[TOOL_GROUP_SELECTED]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed).bind(MENU_GROUP_SELECTED));
|
||||
tool_button[TOOL_GROUP_SELECTED]->set_tooltip(TTR("Makes sure the object's children are not selectable."));
|
||||
// Define the shortcut globally (without a context) so that it works if the Scene tree dock is currently focused.
|
||||
tool_button[TOOL_GROUP_SELECTED]->set_shortcut(ED_SHORTCUT("editor/group_selected_nodes", TTR("Group Selected Node(s)"), KeyModifierMask::CMD | Key::G));
|
||||
@ -7812,8 +7803,7 @@ Node3DEditor::Node3DEditor() {
|
||||
tool_button[TOOL_UNGROUP_SELECTED] = memnew(Button);
|
||||
main_menu_hbox->add_child(tool_button[TOOL_UNGROUP_SELECTED]);
|
||||
tool_button[TOOL_UNGROUP_SELECTED]->set_flat(true);
|
||||
button_binds.write[0] = MENU_UNGROUP_SELECTED;
|
||||
tool_button[TOOL_UNGROUP_SELECTED]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed), button_binds);
|
||||
tool_button[TOOL_UNGROUP_SELECTED]->connect("pressed", callable_mp(this, &Node3DEditor::_menu_item_pressed).bind(MENU_UNGROUP_SELECTED));
|
||||
tool_button[TOOL_UNGROUP_SELECTED]->set_tooltip(TTR("Restores the object's children's ability to be selected."));
|
||||
// Define the shortcut globally (without a context) so that it works if the Scene tree dock is currently focused.
|
||||
tool_button[TOOL_UNGROUP_SELECTED]->set_shortcut(ED_SHORTCUT("editor/ungroup_selected_nodes", TTR("Ungroup Selected Node(s)"), KeyModifierMask::CMD | KeyModifierMask::SHIFT | Key::G));
|
||||
@ -7824,8 +7814,7 @@ Node3DEditor::Node3DEditor() {
|
||||
main_menu_hbox->add_child(tool_option_button[TOOL_OPT_LOCAL_COORDS]);
|
||||
tool_option_button[TOOL_OPT_LOCAL_COORDS]->set_toggle_mode(true);
|
||||
tool_option_button[TOOL_OPT_LOCAL_COORDS]->set_flat(true);
|
||||
button_binds.write[0] = MENU_TOOL_LOCAL_COORDS;
|
||||
tool_option_button[TOOL_OPT_LOCAL_COORDS]->connect("toggled", callable_mp(this, &Node3DEditor::_menu_item_toggled), button_binds);
|
||||
tool_option_button[TOOL_OPT_LOCAL_COORDS]->connect("toggled", callable_mp(this, &Node3DEditor::_menu_item_toggled).bind(MENU_TOOL_LOCAL_COORDS));
|
||||
tool_option_button[TOOL_OPT_LOCAL_COORDS]->set_shortcut(ED_SHORTCUT("spatial_editor/local_coords", TTR("Use Local Space"), Key::T));
|
||||
tool_option_button[TOOL_OPT_LOCAL_COORDS]->set_shortcut_context(this);
|
||||
|
||||
@ -7833,8 +7822,7 @@ Node3DEditor::Node3DEditor() {
|
||||
main_menu_hbox->add_child(tool_option_button[TOOL_OPT_USE_SNAP]);
|
||||
tool_option_button[TOOL_OPT_USE_SNAP]->set_toggle_mode(true);
|
||||
tool_option_button[TOOL_OPT_USE_SNAP]->set_flat(true);
|
||||
button_binds.write[0] = MENU_TOOL_USE_SNAP;
|
||||
tool_option_button[TOOL_OPT_USE_SNAP]->connect("toggled", callable_mp(this, &Node3DEditor::_menu_item_toggled), button_binds);
|
||||
tool_option_button[TOOL_OPT_USE_SNAP]->connect("toggled", callable_mp(this, &Node3DEditor::_menu_item_toggled).bind(MENU_TOOL_USE_SNAP));
|
||||
tool_option_button[TOOL_OPT_USE_SNAP]->set_shortcut(ED_SHORTCUT("spatial_editor/snap", TTR("Use Snap"), Key::Y));
|
||||
tool_option_button[TOOL_OPT_USE_SNAP]->set_shortcut_context(this);
|
||||
|
||||
@ -7845,8 +7833,7 @@ Node3DEditor::Node3DEditor() {
|
||||
tool_option_button[TOOL_OPT_OVERRIDE_CAMERA]->set_toggle_mode(true);
|
||||
tool_option_button[TOOL_OPT_OVERRIDE_CAMERA]->set_flat(true);
|
||||
tool_option_button[TOOL_OPT_OVERRIDE_CAMERA]->set_disabled(true);
|
||||
button_binds.write[0] = MENU_TOOL_OVERRIDE_CAMERA;
|
||||
tool_option_button[TOOL_OPT_OVERRIDE_CAMERA]->connect("toggled", callable_mp(this, &Node3DEditor::_menu_item_toggled), button_binds);
|
||||
tool_option_button[TOOL_OPT_OVERRIDE_CAMERA]->connect("toggled", callable_mp(this, &Node3DEditor::_menu_item_toggled).bind(MENU_TOOL_OVERRIDE_CAMERA));
|
||||
_update_camera_override_button(false);
|
||||
|
||||
main_menu_hbox->add_child(memnew(VSeparator));
|
||||
@ -7854,7 +7841,7 @@ Node3DEditor::Node3DEditor() {
|
||||
sun_button->set_tooltip(TTR("Toggle preview sunlight.\nIf a DirectionalLight3D node is added to the scene, preview sunlight is disabled."));
|
||||
sun_button->set_toggle_mode(true);
|
||||
sun_button->set_flat(true);
|
||||
sun_button->connect("pressed", callable_mp(this, &Node3DEditor::_update_preview_environment), varray(), CONNECT_DEFERRED);
|
||||
sun_button->connect("pressed", callable_mp(this, &Node3DEditor::_update_preview_environment), CONNECT_DEFERRED);
|
||||
sun_button->set_disabled(true);
|
||||
|
||||
main_menu_hbox->add_child(sun_button);
|
||||
@ -7863,7 +7850,7 @@ Node3DEditor::Node3DEditor() {
|
||||
environ_button->set_tooltip(TTR("Toggle preview environment.\nIf a WorldEnvironment node is added to the scene, preview environment is disabled."));
|
||||
environ_button->set_toggle_mode(true);
|
||||
environ_button->set_flat(true);
|
||||
environ_button->connect("pressed", callable_mp(this, &Node3DEditor::_update_preview_environment), varray(), CONNECT_DEFERRED);
|
||||
environ_button->connect("pressed", callable_mp(this, &Node3DEditor::_update_preview_environment), CONNECT_DEFERRED);
|
||||
environ_button->set_disabled(true);
|
||||
|
||||
main_menu_hbox->add_child(environ_button);
|
||||
@ -8050,7 +8037,7 @@ Node3DEditor::Node3DEditor() {
|
||||
settings_vbc->add_margin_child(TTR("View Z-Far:"), settings_zfar);
|
||||
|
||||
for (uint32_t i = 0; i < VIEWPORTS_COUNT; ++i) {
|
||||
settings_dialog->connect("confirmed", callable_mp(viewports[i], &Node3DEditorViewport::_view_settings_confirmed), varray(0.0));
|
||||
settings_dialog->connect("confirmed", callable_mp(viewports[i], &Node3DEditorViewport::_view_settings_confirmed).bind(0.0));
|
||||
}
|
||||
|
||||
/* XFORM DIALOG */
|
||||
@ -8212,7 +8199,7 @@ void fragment() {
|
||||
sun_color->set_edit_alpha(false);
|
||||
sun_vb->add_margin_child(TTR("Sun Color"), sun_color);
|
||||
sun_color->connect("color_changed", callable_mp(this, &Node3DEditor::_preview_settings_changed).unbind(1));
|
||||
sun_color->get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker), varray(sun_color->get_picker()));
|
||||
sun_color->get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker).bind(sun_color->get_picker()));
|
||||
|
||||
sun_energy = memnew(EditorSpinSlider);
|
||||
sun_vb->add_margin_child(TTR("Sun Energy"), sun_energy);
|
||||
@ -8228,7 +8215,7 @@ void fragment() {
|
||||
sun_add_to_scene = memnew(Button);
|
||||
sun_add_to_scene->set_text(TTR("Add Sun to Scene"));
|
||||
sun_add_to_scene->set_tooltip(TTR("Adds a DirectionalLight3D node matching the preview sun settings to the current scene.\nHold Shift while clicking to also add the preview environment to the current scene."));
|
||||
sun_add_to_scene->connect("pressed", callable_mp(this, &Node3DEditor::_add_sun_to_scene), varray(false));
|
||||
sun_add_to_scene->connect("pressed", callable_mp(this, &Node3DEditor::_add_sun_to_scene).bind(false));
|
||||
sun_vb->add_spacer();
|
||||
sun_vb->add_child(sun_add_to_scene);
|
||||
|
||||
@ -8258,12 +8245,12 @@ void fragment() {
|
||||
environ_sky_color = memnew(ColorPickerButton);
|
||||
environ_sky_color->set_edit_alpha(false);
|
||||
environ_sky_color->connect("color_changed", callable_mp(this, &Node3DEditor::_preview_settings_changed).unbind(1));
|
||||
environ_sky_color->get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker), varray(environ_sky_color->get_picker()));
|
||||
environ_sky_color->get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker).bind(environ_sky_color->get_picker()));
|
||||
environ_vb->add_margin_child(TTR("Sky Color"), environ_sky_color);
|
||||
environ_ground_color = memnew(ColorPickerButton);
|
||||
environ_ground_color->connect("color_changed", callable_mp(this, &Node3DEditor::_preview_settings_changed).unbind(1));
|
||||
environ_ground_color->set_edit_alpha(false);
|
||||
environ_ground_color->get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker), varray(environ_ground_color->get_picker()));
|
||||
environ_ground_color->get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker).bind(environ_ground_color->get_picker()));
|
||||
environ_vb->add_margin_child(TTR("Ground Color"), environ_ground_color);
|
||||
environ_energy = memnew(EditorSpinSlider);
|
||||
environ_energy->connect("value_changed", callable_mp(this, &Node3DEditor::_preview_settings_changed).unbind(1));
|
||||
@ -8275,29 +8262,29 @@ void fragment() {
|
||||
environ_ao_button = memnew(Button);
|
||||
environ_ao_button->set_text(TTR("AO"));
|
||||
environ_ao_button->set_toggle_mode(true);
|
||||
environ_ao_button->connect("pressed", callable_mp(this, &Node3DEditor::_preview_settings_changed), varray(), CONNECT_DEFERRED);
|
||||
environ_ao_button->connect("pressed", callable_mp(this, &Node3DEditor::_preview_settings_changed), CONNECT_DEFERRED);
|
||||
fx_vb->add_child(environ_ao_button);
|
||||
environ_glow_button = memnew(Button);
|
||||
environ_glow_button->set_text(TTR("Glow"));
|
||||
environ_glow_button->set_toggle_mode(true);
|
||||
environ_glow_button->connect("pressed", callable_mp(this, &Node3DEditor::_preview_settings_changed), varray(), CONNECT_DEFERRED);
|
||||
environ_glow_button->connect("pressed", callable_mp(this, &Node3DEditor::_preview_settings_changed), CONNECT_DEFERRED);
|
||||
fx_vb->add_child(environ_glow_button);
|
||||
environ_tonemap_button = memnew(Button);
|
||||
environ_tonemap_button->set_text(TTR("Tonemap"));
|
||||
environ_tonemap_button->set_toggle_mode(true);
|
||||
environ_tonemap_button->connect("pressed", callable_mp(this, &Node3DEditor::_preview_settings_changed), varray(), CONNECT_DEFERRED);
|
||||
environ_tonemap_button->connect("pressed", callable_mp(this, &Node3DEditor::_preview_settings_changed), CONNECT_DEFERRED);
|
||||
fx_vb->add_child(environ_tonemap_button);
|
||||
environ_gi_button = memnew(Button);
|
||||
environ_gi_button->set_text(TTR("GI"));
|
||||
environ_gi_button->set_toggle_mode(true);
|
||||
environ_gi_button->connect("pressed", callable_mp(this, &Node3DEditor::_preview_settings_changed), varray(), CONNECT_DEFERRED);
|
||||
environ_gi_button->connect("pressed", callable_mp(this, &Node3DEditor::_preview_settings_changed), CONNECT_DEFERRED);
|
||||
fx_vb->add_child(environ_gi_button);
|
||||
environ_vb->add_margin_child(TTR("Post Process"), fx_vb);
|
||||
|
||||
environ_add_to_scene = memnew(Button);
|
||||
environ_add_to_scene->set_text(TTR("Add Environment to Scene"));
|
||||
environ_add_to_scene->set_tooltip(TTR("Adds a WorldEnvironment node matching the preview environment settings to the current scene.\nHold Shift while clicking to also add the preview sun to the current scene."));
|
||||
environ_add_to_scene->connect("pressed", callable_mp(this, &Node3DEditor::_add_environment_to_scene), varray(false));
|
||||
environ_add_to_scene->connect("pressed", callable_mp(this, &Node3DEditor::_add_environment_to_scene).bind(false));
|
||||
environ_vb->add_spacer();
|
||||
environ_vb->add_child(environ_add_to_scene);
|
||||
|
||||
|
@ -537,7 +537,7 @@ Path2DEditor::Path2DEditor() {
|
||||
curve_edit->set_toggle_mode(true);
|
||||
curve_edit->set_focus_mode(Control::FOCUS_NONE);
|
||||
curve_edit->set_tooltip(TTR("Select Points") + "\n" + TTR("Shift+Drag: Select Control Points") + "\n" + keycode_get_string((Key)KeyModifierMask::CMD) + TTR("Click: Add Point") + "\n" + TTR("Left Click: Split Segment (in curve)") + "\n" + TTR("Right Click: Delete Point"));
|
||||
curve_edit->connect("pressed", callable_mp(this, &Path2DEditor::_mode_selected), varray(MODE_EDIT));
|
||||
curve_edit->connect("pressed", callable_mp(this, &Path2DEditor::_mode_selected).bind(MODE_EDIT));
|
||||
base_hb->add_child(curve_edit);
|
||||
|
||||
curve_edit_curve = memnew(Button);
|
||||
@ -545,7 +545,7 @@ Path2DEditor::Path2DEditor() {
|
||||
curve_edit_curve->set_toggle_mode(true);
|
||||
curve_edit_curve->set_focus_mode(Control::FOCUS_NONE);
|
||||
curve_edit_curve->set_tooltip(TTR("Select Control Points (Shift+Drag)"));
|
||||
curve_edit_curve->connect("pressed", callable_mp(this, &Path2DEditor::_mode_selected), varray(MODE_EDIT_CURVE));
|
||||
curve_edit_curve->connect("pressed", callable_mp(this, &Path2DEditor::_mode_selected).bind(MODE_EDIT_CURVE));
|
||||
base_hb->add_child(curve_edit_curve);
|
||||
|
||||
curve_create = memnew(Button);
|
||||
@ -553,7 +553,7 @@ Path2DEditor::Path2DEditor() {
|
||||
curve_create->set_toggle_mode(true);
|
||||
curve_create->set_focus_mode(Control::FOCUS_NONE);
|
||||
curve_create->set_tooltip(TTR("Add Point (in empty space)"));
|
||||
curve_create->connect("pressed", callable_mp(this, &Path2DEditor::_mode_selected), varray(MODE_CREATE));
|
||||
curve_create->connect("pressed", callable_mp(this, &Path2DEditor::_mode_selected).bind(MODE_CREATE));
|
||||
base_hb->add_child(curve_create);
|
||||
|
||||
curve_del = memnew(Button);
|
||||
@ -561,14 +561,14 @@ Path2DEditor::Path2DEditor() {
|
||||
curve_del->set_toggle_mode(true);
|
||||
curve_del->set_focus_mode(Control::FOCUS_NONE);
|
||||
curve_del->set_tooltip(TTR("Delete Point"));
|
||||
curve_del->connect("pressed", callable_mp(this, &Path2DEditor::_mode_selected), varray(MODE_DELETE));
|
||||
curve_del->connect("pressed", callable_mp(this, &Path2DEditor::_mode_selected).bind(MODE_DELETE));
|
||||
base_hb->add_child(curve_del);
|
||||
|
||||
curve_close = memnew(Button);
|
||||
curve_close->set_flat(true);
|
||||
curve_close->set_focus_mode(Control::FOCUS_NONE);
|
||||
curve_close->set_tooltip(TTR("Close Curve"));
|
||||
curve_close->connect("pressed", callable_mp(this, &Path2DEditor::_mode_selected), varray(ACTION_CLOSE));
|
||||
curve_close->connect("pressed", callable_mp(this, &Path2DEditor::_mode_selected).bind(ACTION_CLOSE));
|
||||
base_hb->add_child(curve_close);
|
||||
|
||||
PopupMenu *menu;
|
||||
|
@ -557,9 +557,9 @@ void Path3DEditorPlugin::_update_theme() {
|
||||
void Path3DEditorPlugin::_notification(int p_what) {
|
||||
switch (p_what) {
|
||||
case NOTIFICATION_ENTER_TREE: {
|
||||
curve_create->connect("pressed", callable_mp(this, &Path3DEditorPlugin::_mode_changed), make_binds(0));
|
||||
curve_edit->connect("pressed", callable_mp(this, &Path3DEditorPlugin::_mode_changed), make_binds(1));
|
||||
curve_del->connect("pressed", callable_mp(this, &Path3DEditorPlugin::_mode_changed), make_binds(2));
|
||||
curve_create->connect("pressed", callable_mp(this, &Path3DEditorPlugin::_mode_changed).bind(0));
|
||||
curve_edit->connect("pressed", callable_mp(this, &Path3DEditorPlugin::_mode_changed).bind(1));
|
||||
curve_del->connect("pressed", callable_mp(this, &Path3DEditorPlugin::_mode_changed).bind(2));
|
||||
curve_close->connect("pressed", callable_mp(this, &Path3DEditorPlugin::_close_curve));
|
||||
|
||||
_update_theme();
|
||||
|
@ -192,7 +192,7 @@ void Polygon2DEditor::_update_bone_list() {
|
||||
cb->set_pressed(true);
|
||||
}
|
||||
|
||||
cb->connect("pressed", callable_mp(this, &Polygon2DEditor::_bone_paint_selected), varray(i));
|
||||
cb->connect("pressed", callable_mp(this, &Polygon2DEditor::_bone_paint_selected).bind(i));
|
||||
}
|
||||
|
||||
uv_edit_draw->update();
|
||||
@ -1238,7 +1238,7 @@ Polygon2DEditor::Polygon2DEditor() {
|
||||
button_uv->set_flat(true);
|
||||
add_child(button_uv);
|
||||
button_uv->set_tooltip(TTR("Open Polygon 2D UV editor."));
|
||||
button_uv->connect("pressed", callable_mp(this, &Polygon2DEditor::_menu_option), varray(MODE_EDIT_UV));
|
||||
button_uv->connect("pressed", callable_mp(this, &Polygon2DEditor::_menu_option).bind(MODE_EDIT_UV));
|
||||
|
||||
uv_mode = UV_MODE_EDIT_POINT;
|
||||
uv_edit = memnew(AcceptDialog);
|
||||
@ -1276,10 +1276,10 @@ Polygon2DEditor::Polygon2DEditor() {
|
||||
uv_edit_mode[2]->set_button_group(uv_edit_group);
|
||||
uv_edit_mode[3]->set_button_group(uv_edit_group);
|
||||
|
||||
uv_edit_mode[0]->connect("pressed", callable_mp(this, &Polygon2DEditor::_uv_edit_mode_select), varray(0));
|
||||
uv_edit_mode[1]->connect("pressed", callable_mp(this, &Polygon2DEditor::_uv_edit_mode_select), varray(1));
|
||||
uv_edit_mode[2]->connect("pressed", callable_mp(this, &Polygon2DEditor::_uv_edit_mode_select), varray(2));
|
||||
uv_edit_mode[3]->connect("pressed", callable_mp(this, &Polygon2DEditor::_uv_edit_mode_select), varray(3));
|
||||
uv_edit_mode[0]->connect("pressed", callable_mp(this, &Polygon2DEditor::_uv_edit_mode_select).bind(0));
|
||||
uv_edit_mode[1]->connect("pressed", callable_mp(this, &Polygon2DEditor::_uv_edit_mode_select).bind(1));
|
||||
uv_edit_mode[2]->connect("pressed", callable_mp(this, &Polygon2DEditor::_uv_edit_mode_select).bind(2));
|
||||
uv_edit_mode[3]->connect("pressed", callable_mp(this, &Polygon2DEditor::_uv_edit_mode_select).bind(3));
|
||||
|
||||
uv_mode_hb->add_child(memnew(VSeparator));
|
||||
|
||||
@ -1289,7 +1289,7 @@ Polygon2DEditor::Polygon2DEditor() {
|
||||
uv_button[i]->set_flat(true);
|
||||
uv_button[i]->set_toggle_mode(true);
|
||||
uv_mode_hb->add_child(uv_button[i]);
|
||||
uv_button[i]->connect("pressed", callable_mp(this, &Polygon2DEditor::_uv_mode), varray(i));
|
||||
uv_button[i]->connect("pressed", callable_mp(this, &Polygon2DEditor::_uv_mode).bind(i));
|
||||
uv_button[i]->set_focus_mode(FOCUS_NONE);
|
||||
}
|
||||
|
||||
|
@ -532,13 +532,13 @@ Polygon3DEditor::Polygon3DEditor() {
|
||||
button_create = memnew(Button);
|
||||
button_create->set_flat(true);
|
||||
add_child(button_create);
|
||||
button_create->connect("pressed", callable_mp(this, &Polygon3DEditor::_menu_option), varray(MODE_CREATE));
|
||||
button_create->connect("pressed", callable_mp(this, &Polygon3DEditor::_menu_option).bind(MODE_CREATE));
|
||||
button_create->set_toggle_mode(true);
|
||||
|
||||
button_edit = memnew(Button);
|
||||
button_edit->set_flat(true);
|
||||
add_child(button_edit);
|
||||
button_edit->connect("pressed", callable_mp(this, &Polygon3DEditor::_menu_option), varray(MODE_EDIT));
|
||||
button_edit->connect("pressed", callable_mp(this, &Polygon3DEditor::_menu_option).bind(MODE_EDIT));
|
||||
button_edit->set_toggle_mode(true);
|
||||
|
||||
mode = MODE_EDIT;
|
||||
|
@ -882,7 +882,7 @@ void ScriptEditor::_queue_close_tabs() {
|
||||
// Maybe there are unsaved changes.
|
||||
if (se->is_unsaved()) {
|
||||
_ask_close_current_unsaved_tab(se);
|
||||
erase_tab_confirm->connect(SceneStringNames::get_singleton()->visibility_changed, callable_mp(this, &ScriptEditor::_queue_close_tabs), varray(), CONNECT_ONESHOT);
|
||||
erase_tab_confirm->connect(SceneStringNames::get_singleton()->visibility_changed, callable_mp(this, &ScriptEditor::_queue_close_tabs), CONNECT_ONESHOT);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -3685,7 +3685,7 @@ ScriptEditor::ScriptEditor() {
|
||||
script_list->set_v_size_flags(SIZE_EXPAND_FILL);
|
||||
script_split->set_split_offset(70 * EDSCALE);
|
||||
_sort_list_on_update = true;
|
||||
script_list->connect("gui_input", callable_mp(this, &ScriptEditor::_script_list_gui_input), varray(), CONNECT_DEFERRED);
|
||||
script_list->connect("gui_input", callable_mp(this, &ScriptEditor::_script_list_gui_input), CONNECT_DEFERRED);
|
||||
script_list->set_allow_rmb_select(true);
|
||||
script_list->set_drag_forwarding(this);
|
||||
|
||||
@ -3853,14 +3853,14 @@ ScriptEditor::ScriptEditor() {
|
||||
site_search = memnew(Button);
|
||||
site_search->set_flat(true);
|
||||
site_search->set_text(TTR("Online Docs"));
|
||||
site_search->connect("pressed", callable_mp(this, &ScriptEditor::_menu_option), varray(SEARCH_WEBSITE));
|
||||
site_search->connect("pressed", callable_mp(this, &ScriptEditor::_menu_option).bind(SEARCH_WEBSITE));
|
||||
menu_hb->add_child(site_search);
|
||||
site_search->set_tooltip(TTR("Open Godot online documentation."));
|
||||
|
||||
help_search = memnew(Button);
|
||||
help_search->set_flat(true);
|
||||
help_search->set_text(TTR("Search Help"));
|
||||
help_search->connect("pressed", callable_mp(this, &ScriptEditor::_menu_option), varray(SEARCH_HELP));
|
||||
help_search->connect("pressed", callable_mp(this, &ScriptEditor::_menu_option).bind(SEARCH_HELP));
|
||||
menu_hb->add_child(help_search);
|
||||
help_search->set_tooltip(TTR("Search the reference documentation."));
|
||||
|
||||
@ -3885,7 +3885,7 @@ ScriptEditor::ScriptEditor() {
|
||||
erase_tab_confirm = memnew(ConfirmationDialog);
|
||||
erase_tab_confirm->set_ok_button_text(TTR("Save"));
|
||||
erase_tab_confirm->add_button(TTR("Discard"), DisplayServer::get_singleton()->get_swap_cancel_ok(), "discard");
|
||||
erase_tab_confirm->connect("confirmed", callable_mp(this, &ScriptEditor::_close_current_tab), varray(true));
|
||||
erase_tab_confirm->connect("confirmed", callable_mp(this, &ScriptEditor::_close_current_tab).bind(true));
|
||||
erase_tab_confirm->connect("custom_action", callable_mp(this, &ScriptEditor::_close_discard_current_tab));
|
||||
add_child(erase_tab_confirm);
|
||||
|
||||
@ -3939,8 +3939,8 @@ ScriptEditor::ScriptEditor() {
|
||||
help_search_dialog->connect("go_to_help", callable_mp(this, &ScriptEditor::_help_class_goto));
|
||||
|
||||
find_in_files_dialog = memnew(FindInFilesDialog);
|
||||
find_in_files_dialog->connect(FindInFilesDialog::SIGNAL_FIND_REQUESTED, callable_mp(this, &ScriptEditor::_start_find_in_files), varray(false));
|
||||
find_in_files_dialog->connect(FindInFilesDialog::SIGNAL_REPLACE_REQUESTED, callable_mp(this, &ScriptEditor::_start_find_in_files), varray(true));
|
||||
find_in_files_dialog->connect(FindInFilesDialog::SIGNAL_FIND_REQUESTED, callable_mp(this, &ScriptEditor::_start_find_in_files).bind(false));
|
||||
find_in_files_dialog->connect(FindInFilesDialog::SIGNAL_REPLACE_REQUESTED, callable_mp(this, &ScriptEditor::_start_find_in_files).bind(true));
|
||||
add_child(find_in_files_dialog);
|
||||
find_in_files = memnew(FindInFilesPanel);
|
||||
find_in_files_button = EditorNode::get_singleton()->add_bottom_panel_item(TTR("Search Results"), find_in_files);
|
||||
|
@ -1456,7 +1456,7 @@ void ScriptTextEditor::clear_breakpoints() {
|
||||
void ScriptTextEditor::set_tooltip_request_func(const Callable &p_toolip_callback) {
|
||||
Variant args[1] = { this };
|
||||
const Variant *argp[] = { &args[0] };
|
||||
code_editor->get_text_editor()->set_tooltip_request_func(p_toolip_callback.bind(argp, 1));
|
||||
code_editor->get_text_editor()->set_tooltip_request_func(p_toolip_callback.bindp(argp, 1));
|
||||
}
|
||||
|
||||
void ScriptTextEditor::set_debugger_active(bool p_active) {
|
||||
@ -1862,7 +1862,7 @@ void ScriptTextEditor::_enable_code_editor() {
|
||||
color_picker = memnew(ColorPicker);
|
||||
color_picker->set_deferred_mode(true);
|
||||
color_picker->connect("color_changed", callable_mp(this, &ScriptTextEditor::_color_changed));
|
||||
color_panel->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker), varray(color_picker));
|
||||
color_panel->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker).bind(color_picker));
|
||||
|
||||
color_panel->add_child(color_picker);
|
||||
|
||||
|
@ -1424,7 +1424,7 @@ ShaderEditorPlugin::ShaderEditorPlugin() {
|
||||
button = EditorNode::get_singleton()->add_bottom_panel_item(TTR("Shader Editor"), main_split);
|
||||
|
||||
// Defer connect because Editor class is not in the binding system yet.
|
||||
EditorNode::get_singleton()->call_deferred("connect", "resource_saved", callable_mp(this, &ShaderEditorPlugin::_resource_saved), varray(), CONNECT_DEFERRED);
|
||||
EditorNode::get_singleton()->call_deferred("connect", "resource_saved", callable_mp(this, &ShaderEditorPlugin::_resource_saved), CONNECT_DEFERRED);
|
||||
|
||||
shader_create_dialog = memnew(ShaderCreateDialog);
|
||||
vb->add_child(shader_create_dialog);
|
||||
|
@ -282,7 +282,7 @@ ShaderFileEditor::ShaderFileEditor() {
|
||||
stage_hb->add_child(button);
|
||||
stages[i] = button;
|
||||
button->set_button_group(bg);
|
||||
button->connect("pressed", callable_mp(this, &ShaderFileEditor::_version_selected), varray(i));
|
||||
button->connect("pressed", callable_mp(this, &ShaderFileEditor::_version_selected).bind(i));
|
||||
}
|
||||
|
||||
error_text = memnew(RichTextLabel);
|
||||
|
@ -782,7 +782,7 @@ void Skeleton3DEditor::create_editors() {
|
||||
key_insert_button = memnew(Button);
|
||||
key_insert_button->set_flat(true);
|
||||
key_insert_button->set_focus_mode(FOCUS_NONE);
|
||||
key_insert_button->connect("pressed", callable_mp(this, &Skeleton3DEditor::insert_keys), varray(false));
|
||||
key_insert_button->connect("pressed", callable_mp(this, &Skeleton3DEditor::insert_keys).bind(false));
|
||||
key_insert_button->set_tooltip(TTR("Insert key of bone poses already exist track."));
|
||||
key_insert_button->set_shortcut(ED_SHORTCUT("skeleton_3d_editor/insert_key_to_existing_tracks", TTR("Insert Key (Existing Tracks)"), Key::INSERT));
|
||||
animation_hb->add_child(key_insert_button);
|
||||
@ -790,7 +790,7 @@ void Skeleton3DEditor::create_editors() {
|
||||
key_insert_all_button = memnew(Button);
|
||||
key_insert_all_button->set_flat(true);
|
||||
key_insert_all_button->set_focus_mode(FOCUS_NONE);
|
||||
key_insert_all_button->connect("pressed", callable_mp(this, &Skeleton3DEditor::insert_keys), varray(true));
|
||||
key_insert_all_button->connect("pressed", callable_mp(this, &Skeleton3DEditor::insert_keys).bind(true));
|
||||
key_insert_all_button->set_tooltip(TTR("Insert key of all bone poses."));
|
||||
key_insert_all_button->set_shortcut(ED_SHORTCUT("skeleton_3d_editor/insert_key_of_all_bones", TTR("Insert Key (All Bones)"), KeyModifierMask::CMD + Key::INSERT));
|
||||
animation_hb->add_child(key_insert_all_button);
|
||||
@ -836,7 +836,7 @@ void Skeleton3DEditor::_notification(int p_what) {
|
||||
key_scale_button->set_icon(get_theme_icon(SNAME("KeyScale"), SNAME("EditorIcons")));
|
||||
key_insert_button->set_icon(get_theme_icon(SNAME("Key"), SNAME("EditorIcons")));
|
||||
key_insert_all_button->set_icon(get_theme_icon(SNAME("NewKey"), SNAME("EditorIcons")));
|
||||
get_tree()->connect("node_removed", callable_mp(this, &Skeleton3DEditor::_node_removed), Vector<Variant>(), Object::CONNECT_ONESHOT);
|
||||
get_tree()->connect("node_removed", callable_mp(this, &Skeleton3DEditor::_node_removed), Object::CONNECT_ONESHOT);
|
||||
break;
|
||||
}
|
||||
case NOTIFICATION_ENTER_TREE: {
|
||||
|
@ -1306,7 +1306,7 @@ SpriteFramesEditor::SpriteFramesEditor() {
|
||||
empty2->connect("pressed", callable_mp(this, &SpriteFramesEditor::_empty2_pressed));
|
||||
move_up->connect("pressed", callable_mp(this, &SpriteFramesEditor::_up_pressed));
|
||||
move_down->connect("pressed", callable_mp(this, &SpriteFramesEditor::_down_pressed));
|
||||
file->connect("files_selected", callable_mp(this, &SpriteFramesEditor::_file_load_request), make_binds(-1));
|
||||
file->connect("files_selected", callable_mp(this, &SpriteFramesEditor::_file_load_request).bind(-1));
|
||||
loading_scene = false;
|
||||
sel = -1;
|
||||
|
||||
@ -1333,7 +1333,7 @@ SpriteFramesEditor::SpriteFramesEditor() {
|
||||
split_sheet_h->set_max(128);
|
||||
split_sheet_h->set_step(1);
|
||||
split_sheet_hb->add_child(split_sheet_h);
|
||||
split_sheet_h->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed), varray(PARAM_FRAME_COUNT));
|
||||
split_sheet_h->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed).bind(PARAM_FRAME_COUNT));
|
||||
|
||||
split_sheet_hb->add_child(memnew(Label(TTR("Vertical:"))));
|
||||
split_sheet_v = memnew(SpinBox);
|
||||
@ -1341,7 +1341,7 @@ SpriteFramesEditor::SpriteFramesEditor() {
|
||||
split_sheet_v->set_max(128);
|
||||
split_sheet_v->set_step(1);
|
||||
split_sheet_hb->add_child(split_sheet_v);
|
||||
split_sheet_v->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed), varray(PARAM_FRAME_COUNT));
|
||||
split_sheet_v->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed).bind(PARAM_FRAME_COUNT));
|
||||
|
||||
split_sheet_hb->add_child(memnew(VSeparator));
|
||||
split_sheet_hb->add_child(memnew(Label(TTR("Size:"))));
|
||||
@ -1349,13 +1349,13 @@ SpriteFramesEditor::SpriteFramesEditor() {
|
||||
split_sheet_size_x->set_min(1);
|
||||
split_sheet_size_x->set_step(1);
|
||||
split_sheet_size_x->set_suffix("px");
|
||||
split_sheet_size_x->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed), varray(PARAM_SIZE));
|
||||
split_sheet_size_x->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed).bind(PARAM_SIZE));
|
||||
split_sheet_hb->add_child(split_sheet_size_x);
|
||||
split_sheet_size_y = memnew(SpinBox);
|
||||
split_sheet_size_y->set_min(1);
|
||||
split_sheet_size_y->set_step(1);
|
||||
split_sheet_size_y->set_suffix("px");
|
||||
split_sheet_size_y->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed), varray(PARAM_SIZE));
|
||||
split_sheet_size_y->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed).bind(PARAM_SIZE));
|
||||
split_sheet_hb->add_child(split_sheet_size_y);
|
||||
|
||||
split_sheet_hb->add_child(memnew(VSeparator));
|
||||
@ -1364,13 +1364,13 @@ SpriteFramesEditor::SpriteFramesEditor() {
|
||||
split_sheet_sep_x->set_min(0);
|
||||
split_sheet_sep_x->set_step(1);
|
||||
split_sheet_sep_x->set_suffix("px");
|
||||
split_sheet_sep_x->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed), varray(PARAM_USE_CURRENT));
|
||||
split_sheet_sep_x->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed).bind(PARAM_USE_CURRENT));
|
||||
split_sheet_hb->add_child(split_sheet_sep_x);
|
||||
split_sheet_sep_y = memnew(SpinBox);
|
||||
split_sheet_sep_y->set_min(0);
|
||||
split_sheet_sep_y->set_step(1);
|
||||
split_sheet_sep_y->set_suffix("px");
|
||||
split_sheet_sep_y->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed), varray(PARAM_USE_CURRENT));
|
||||
split_sheet_sep_y->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed).bind(PARAM_USE_CURRENT));
|
||||
split_sheet_hb->add_child(split_sheet_sep_y);
|
||||
|
||||
split_sheet_hb->add_child(memnew(VSeparator));
|
||||
@ -1379,13 +1379,13 @@ SpriteFramesEditor::SpriteFramesEditor() {
|
||||
split_sheet_offset_x->set_min(0);
|
||||
split_sheet_offset_x->set_step(1);
|
||||
split_sheet_offset_x->set_suffix("px");
|
||||
split_sheet_offset_x->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed), varray(PARAM_USE_CURRENT));
|
||||
split_sheet_offset_x->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed).bind(PARAM_USE_CURRENT));
|
||||
split_sheet_hb->add_child(split_sheet_offset_x);
|
||||
split_sheet_offset_y = memnew(SpinBox);
|
||||
split_sheet_offset_y->set_min(0);
|
||||
split_sheet_offset_y->set_step(1);
|
||||
split_sheet_offset_y->set_suffix("px");
|
||||
split_sheet_offset_y->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed), varray(PARAM_USE_CURRENT));
|
||||
split_sheet_offset_y->connect("value_changed", callable_mp(this, &SpriteFramesEditor::_sheet_spin_changed).bind(PARAM_USE_CURRENT));
|
||||
split_sheet_hb->add_child(split_sheet_offset_y);
|
||||
|
||||
split_sheet_hb->add_spacer();
|
||||
|
@ -275,7 +275,7 @@ void TextEditor::update_settings() {
|
||||
void TextEditor::set_tooltip_request_func(const Callable &p_toolip_callback) {
|
||||
Variant args[1] = { this };
|
||||
const Variant *argp[] = { &args[0] };
|
||||
code_editor->get_text_editor()->set_tooltip_request_func(p_toolip_callback.bind(argp, 1));
|
||||
code_editor->get_text_editor()->set_tooltip_request_func(p_toolip_callback.bindp(argp, 1));
|
||||
}
|
||||
|
||||
Control *TextEditor::get_edit_menu() {
|
||||
|
@ -239,7 +239,7 @@ void TextureRegionEditor::_region_draw() {
|
||||
hscroll->set_value((hscroll->get_min() + hscroll->get_max() - hscroll->get_page()) / 2);
|
||||
vscroll->set_value((vscroll->get_min() + vscroll->get_max() - vscroll->get_page()) / 2);
|
||||
// This ensures that the view is updated correctly.
|
||||
callable_bind(callable_mp(this, &TextureRegionEditor::_pan_callback), Vector2(1, 0)).call_deferred(nullptr, 0);
|
||||
callable_mp(this, &TextureRegionEditor::_pan_callback).bind(Vector2(1, 0)).call_deferredp(nullptr, 0);
|
||||
request_center = false;
|
||||
}
|
||||
|
||||
@ -1153,7 +1153,7 @@ bool EditorInspectorPluginTextureRegion::parse_property(Object *p_object, const
|
||||
if (((Object::cast_to<Sprite2D>(p_object) || Object::cast_to<Sprite3D>(p_object) || Object::cast_to<NinePatchRect>(p_object) || Object::cast_to<StyleBoxTexture>(p_object)) && p_path == "region_rect") || (Object::cast_to<AtlasTexture>(p_object) && p_path == "region")) {
|
||||
Button *button = EditorInspector::create_inspector_action_button(TTR("Edit Region"));
|
||||
button->set_icon(texture_region_editor->get_theme_icon(SNAME("RegionEdit"), SNAME("EditorIcons")));
|
||||
button->connect("pressed", callable_mp(this, &EditorInspectorPluginTextureRegion::_region_edit), varray(p_object));
|
||||
button->connect("pressed", callable_mp(this, &EditorInspectorPluginTextureRegion::_region_edit).bind(p_object));
|
||||
add_property_editor(p_path, button, true);
|
||||
}
|
||||
}
|
||||
|
@ -1103,15 +1103,15 @@ ThemeItemImportTree::ThemeItemImportTree() {
|
||||
select_all_items_button->set_flat(true);
|
||||
select_all_items_button->set_tooltip(select_all_items_tooltip);
|
||||
button_set->add_child(select_all_items_button);
|
||||
select_all_items_button->connect("pressed", callable_mp(this, &ThemeItemImportTree::_select_all_data_type_pressed), varray(i));
|
||||
select_all_items_button->connect("pressed", callable_mp(this, &ThemeItemImportTree::_select_all_data_type_pressed).bind(i));
|
||||
select_full_items_button->set_flat(true);
|
||||
select_full_items_button->set_tooltip(select_full_items_tooltip);
|
||||
button_set->add_child(select_full_items_button);
|
||||
select_full_items_button->connect("pressed", callable_mp(this, &ThemeItemImportTree::_select_full_data_type_pressed), varray(i));
|
||||
select_full_items_button->connect("pressed", callable_mp(this, &ThemeItemImportTree::_select_full_data_type_pressed).bind(i));
|
||||
deselect_all_items_button->set_flat(true);
|
||||
deselect_all_items_button->set_tooltip(deselect_all_items_tooltip);
|
||||
button_set->add_child(deselect_all_items_button);
|
||||
deselect_all_items_button->connect("pressed", callable_mp(this, &ThemeItemImportTree::_deselect_all_data_type_pressed), varray(i));
|
||||
deselect_all_items_button->connect("pressed", callable_mp(this, &ThemeItemImportTree::_deselect_all_data_type_pressed).bind(i));
|
||||
|
||||
total_selected_items_label->set_horizontal_alignment(HORIZONTAL_ALIGNMENT_RIGHT);
|
||||
total_selected_items_label->hide();
|
||||
@ -1142,12 +1142,12 @@ ThemeItemImportTree::ThemeItemImportTree() {
|
||||
import_collapse_types_button->set_flat(true);
|
||||
import_collapse_types_button->set_tooltip(TTR("Collapse types."));
|
||||
import_buttons->add_child(import_collapse_types_button);
|
||||
import_collapse_types_button->connect("pressed", callable_mp(this, &ThemeItemImportTree::_toggle_type_items), varray(true));
|
||||
import_collapse_types_button->connect("pressed", callable_mp(this, &ThemeItemImportTree::_toggle_type_items).bind(true));
|
||||
import_expand_types_button = memnew(Button);
|
||||
import_expand_types_button->set_flat(true);
|
||||
import_expand_types_button->set_tooltip(TTR("Expand types."));
|
||||
import_buttons->add_child(import_expand_types_button);
|
||||
import_expand_types_button->connect("pressed", callable_mp(this, &ThemeItemImportTree::_toggle_type_items), varray(false));
|
||||
import_expand_types_button->connect("pressed", callable_mp(this, &ThemeItemImportTree::_toggle_type_items).bind(false));
|
||||
|
||||
import_buttons->add_child(memnew(VSeparator));
|
||||
|
||||
@ -1938,7 +1938,7 @@ ThemeItemEditorDialog::ThemeItemEditorDialog(ThemeTypeEditor *p_theme_type_edito
|
||||
edit_add_type_hb->add_child(edit_add_type_value);
|
||||
edit_add_type_button = memnew(Button);
|
||||
edit_add_type_hb->add_child(edit_add_type_button);
|
||||
edit_add_type_button->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_add_theme_type), varray(""));
|
||||
edit_add_type_button->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_add_theme_type).bind(""));
|
||||
|
||||
VBoxContainer *edit_items_vb = memnew(VBoxContainer);
|
||||
edit_items_vb->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
@ -1956,42 +1956,42 @@ ThemeItemEditorDialog::ThemeItemEditorDialog(ThemeTypeEditor *p_theme_type_edito
|
||||
edit_items_add_color->set_flat(true);
|
||||
edit_items_add_color->set_disabled(true);
|
||||
edit_items_toolbar->add_child(edit_items_add_color);
|
||||
edit_items_add_color->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_open_add_theme_item_dialog), varray(Theme::DATA_TYPE_COLOR));
|
||||
edit_items_add_color->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_open_add_theme_item_dialog).bind(Theme::DATA_TYPE_COLOR));
|
||||
|
||||
edit_items_add_constant = memnew(Button);
|
||||
edit_items_add_constant->set_tooltip(TTR("Add Constant Item"));
|
||||
edit_items_add_constant->set_flat(true);
|
||||
edit_items_add_constant->set_disabled(true);
|
||||
edit_items_toolbar->add_child(edit_items_add_constant);
|
||||
edit_items_add_constant->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_open_add_theme_item_dialog), varray(Theme::DATA_TYPE_CONSTANT));
|
||||
edit_items_add_constant->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_open_add_theme_item_dialog).bind(Theme::DATA_TYPE_CONSTANT));
|
||||
|
||||
edit_items_add_font = memnew(Button);
|
||||
edit_items_add_font->set_tooltip(TTR("Add Font Item"));
|
||||
edit_items_add_font->set_flat(true);
|
||||
edit_items_add_font->set_disabled(true);
|
||||
edit_items_toolbar->add_child(edit_items_add_font);
|
||||
edit_items_add_font->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_open_add_theme_item_dialog), varray(Theme::DATA_TYPE_FONT));
|
||||
edit_items_add_font->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_open_add_theme_item_dialog).bind(Theme::DATA_TYPE_FONT));
|
||||
|
||||
edit_items_add_font_size = memnew(Button);
|
||||
edit_items_add_font_size->set_tooltip(TTR("Add Font Size Item"));
|
||||
edit_items_add_font_size->set_flat(true);
|
||||
edit_items_add_font_size->set_disabled(true);
|
||||
edit_items_toolbar->add_child(edit_items_add_font_size);
|
||||
edit_items_add_font_size->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_open_add_theme_item_dialog), varray(Theme::DATA_TYPE_FONT_SIZE));
|
||||
edit_items_add_font_size->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_open_add_theme_item_dialog).bind(Theme::DATA_TYPE_FONT_SIZE));
|
||||
|
||||
edit_items_add_icon = memnew(Button);
|
||||
edit_items_add_icon->set_tooltip(TTR("Add Icon Item"));
|
||||
edit_items_add_icon->set_flat(true);
|
||||
edit_items_add_icon->set_disabled(true);
|
||||
edit_items_toolbar->add_child(edit_items_add_icon);
|
||||
edit_items_add_icon->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_open_add_theme_item_dialog), varray(Theme::DATA_TYPE_ICON));
|
||||
edit_items_add_icon->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_open_add_theme_item_dialog).bind(Theme::DATA_TYPE_ICON));
|
||||
|
||||
edit_items_add_stylebox = memnew(Button);
|
||||
edit_items_add_stylebox->set_tooltip(TTR("Add StyleBox Item"));
|
||||
edit_items_add_stylebox->set_flat(true);
|
||||
edit_items_add_stylebox->set_disabled(true);
|
||||
edit_items_toolbar->add_child(edit_items_add_stylebox);
|
||||
edit_items_add_stylebox->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_open_add_theme_item_dialog), varray(Theme::DATA_TYPE_STYLEBOX));
|
||||
edit_items_add_stylebox->connect("pressed", callable_mp(this, &ThemeItemEditorDialog::_open_add_theme_item_dialog).bind(Theme::DATA_TYPE_STYLEBOX));
|
||||
|
||||
edit_items_toolbar->add_child(memnew(VSeparator));
|
||||
|
||||
@ -2271,11 +2271,11 @@ VBoxContainer *ThemeTypeEditor::_create_item_list(Theme::DataType p_data_type) {
|
||||
LineEdit *item_add_edit = memnew(LineEdit);
|
||||
item_add_edit->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
item_add_hb->add_child(item_add_edit);
|
||||
item_add_edit->connect("text_submitted", callable_mp(this, &ThemeTypeEditor::_item_add_lineedit_cbk), varray(p_data_type, item_add_edit));
|
||||
item_add_edit->connect("text_submitted", callable_mp(this, &ThemeTypeEditor::_item_add_lineedit_cbk).bind(p_data_type, item_add_edit));
|
||||
Button *item_add_button = memnew(Button);
|
||||
item_add_button->set_text(TTR("Add"));
|
||||
item_add_hb->add_child(item_add_button);
|
||||
item_add_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_item_add_cbk), varray(p_data_type, item_add_edit));
|
||||
item_add_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_item_add_cbk).bind(p_data_type, item_add_edit));
|
||||
|
||||
return items_list;
|
||||
}
|
||||
@ -2418,7 +2418,7 @@ HBoxContainer *ThemeTypeEditor::_create_property_control(Theme::DataType p_data_
|
||||
item_name_edit->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
item_name_edit->set_text(p_item_name);
|
||||
item_name_container->add_child(item_name_edit);
|
||||
item_name_edit->connect("text_submitted", callable_mp(this, &ThemeTypeEditor::_item_rename_entered), varray(p_data_type, p_item_name, item_name_container));
|
||||
item_name_edit->connect("text_submitted", callable_mp(this, &ThemeTypeEditor::_item_rename_entered).bind(p_data_type, p_item_name, item_name_container));
|
||||
item_name_edit->hide();
|
||||
|
||||
Button *item_rename_button = memnew(Button);
|
||||
@ -2426,21 +2426,21 @@ HBoxContainer *ThemeTypeEditor::_create_property_control(Theme::DataType p_data_
|
||||
item_rename_button->set_tooltip(TTR("Rename Item"));
|
||||
item_rename_button->set_flat(true);
|
||||
item_name_container->add_child(item_rename_button);
|
||||
item_rename_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_item_rename_cbk), varray(p_data_type, p_item_name, item_name_container));
|
||||
item_rename_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_item_rename_cbk).bind(p_data_type, p_item_name, item_name_container));
|
||||
|
||||
Button *item_remove_button = memnew(Button);
|
||||
item_remove_button->set_icon(get_theme_icon(SNAME("Remove"), SNAME("EditorIcons")));
|
||||
item_remove_button->set_tooltip(TTR("Remove Item"));
|
||||
item_remove_button->set_flat(true);
|
||||
item_name_container->add_child(item_remove_button);
|
||||
item_remove_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_item_remove_cbk), varray(p_data_type, p_item_name));
|
||||
item_remove_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_item_remove_cbk).bind(p_data_type, p_item_name));
|
||||
|
||||
Button *item_rename_confirm_button = memnew(Button);
|
||||
item_rename_confirm_button->set_icon(get_theme_icon(SNAME("ImportCheck"), SNAME("EditorIcons")));
|
||||
item_rename_confirm_button->set_tooltip(TTR("Confirm Item Rename"));
|
||||
item_rename_confirm_button->set_flat(true);
|
||||
item_name_container->add_child(item_rename_confirm_button);
|
||||
item_rename_confirm_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_item_rename_confirmed), varray(p_data_type, p_item_name, item_name_container));
|
||||
item_rename_confirm_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_item_rename_confirmed).bind(p_data_type, p_item_name, item_name_container));
|
||||
item_rename_confirm_button->hide();
|
||||
|
||||
Button *item_rename_cancel_button = memnew(Button);
|
||||
@ -2448,7 +2448,7 @@ HBoxContainer *ThemeTypeEditor::_create_property_control(Theme::DataType p_data_
|
||||
item_rename_cancel_button->set_tooltip(TTR("Cancel Item Rename"));
|
||||
item_rename_cancel_button->set_flat(true);
|
||||
item_name_container->add_child(item_rename_cancel_button);
|
||||
item_rename_cancel_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_item_rename_canceled), varray(p_data_type, p_item_name, item_name_container));
|
||||
item_rename_cancel_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_item_rename_canceled).bind(p_data_type, p_item_name, item_name_container));
|
||||
item_rename_cancel_button->hide();
|
||||
} else {
|
||||
item_name->add_theme_color_override("font_color", get_theme_color(SNAME("disabled_font_color"), SNAME("Editor")));
|
||||
@ -2458,7 +2458,7 @@ HBoxContainer *ThemeTypeEditor::_create_property_control(Theme::DataType p_data_
|
||||
item_override_button->set_tooltip(TTR("Override Item"));
|
||||
item_override_button->set_flat(true);
|
||||
item_name_container->add_child(item_override_button);
|
||||
item_override_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_item_override_cbk), varray(p_data_type, p_item_name));
|
||||
item_override_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_item_override_cbk).bind(p_data_type, p_item_name));
|
||||
}
|
||||
|
||||
return item_control;
|
||||
@ -2491,8 +2491,8 @@ void ThemeTypeEditor::_update_type_items() {
|
||||
|
||||
if (E.value) {
|
||||
item_editor->set_pick_color(edited_theme->get_color(E.key, edited_type));
|
||||
item_editor->connect("color_changed", callable_mp(this, &ThemeTypeEditor::_color_item_changed), varray(E.key));
|
||||
item_editor->get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker), varray(item_editor->get_picker()));
|
||||
item_editor->connect("color_changed", callable_mp(this, &ThemeTypeEditor::_color_item_changed).bind(E.key));
|
||||
item_editor->get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker).bind(item_editor->get_picker()));
|
||||
} else {
|
||||
item_editor->set_pick_color(Theme::get_default()->get_color(E.key, edited_type));
|
||||
item_editor->set_disabled(true);
|
||||
@ -2525,7 +2525,7 @@ void ThemeTypeEditor::_update_type_items() {
|
||||
|
||||
if (E.value) {
|
||||
item_editor->set_value(edited_theme->get_constant(E.key, edited_type));
|
||||
item_editor->connect("value_changed", callable_mp(this, &ThemeTypeEditor::_constant_item_changed), varray(E.key));
|
||||
item_editor->connect("value_changed", callable_mp(this, &ThemeTypeEditor::_constant_item_changed).bind(E.key));
|
||||
} else {
|
||||
item_editor->set_value(Theme::get_default()->get_constant(E.key, edited_type));
|
||||
item_editor->set_editable(false);
|
||||
@ -2559,7 +2559,7 @@ void ThemeTypeEditor::_update_type_items() {
|
||||
item_editor->set_edited_resource(Ref<Resource>());
|
||||
}
|
||||
item_editor->connect("resource_selected", callable_mp(this, &ThemeTypeEditor::_edit_resource_item));
|
||||
item_editor->connect("resource_changed", callable_mp(this, &ThemeTypeEditor::_font_item_changed), varray(E.key));
|
||||
item_editor->connect("resource_changed", callable_mp(this, &ThemeTypeEditor::_font_item_changed).bind(E.key));
|
||||
} else {
|
||||
if (Theme::get_default()->has_font(E.key, edited_type)) {
|
||||
item_editor->set_edited_resource(Theme::get_default()->get_font(E.key, edited_type));
|
||||
@ -2596,7 +2596,7 @@ void ThemeTypeEditor::_update_type_items() {
|
||||
|
||||
if (E.value) {
|
||||
item_editor->set_value(edited_theme->get_font_size(E.key, edited_type));
|
||||
item_editor->connect("value_changed", callable_mp(this, &ThemeTypeEditor::_font_size_item_changed), varray(E.key));
|
||||
item_editor->connect("value_changed", callable_mp(this, &ThemeTypeEditor::_font_size_item_changed).bind(E.key));
|
||||
} else {
|
||||
item_editor->set_value(Theme::get_default()->get_font_size(E.key, edited_type));
|
||||
item_editor->set_editable(false);
|
||||
@ -2630,7 +2630,7 @@ void ThemeTypeEditor::_update_type_items() {
|
||||
item_editor->set_edited_resource(Ref<Resource>());
|
||||
}
|
||||
item_editor->connect("resource_selected", callable_mp(this, &ThemeTypeEditor::_edit_resource_item));
|
||||
item_editor->connect("resource_changed", callable_mp(this, &ThemeTypeEditor::_icon_item_changed), varray(E.key));
|
||||
item_editor->connect("resource_changed", callable_mp(this, &ThemeTypeEditor::_icon_item_changed).bind(E.key));
|
||||
} else {
|
||||
if (Theme::get_default()->has_icon(E.key, edited_type)) {
|
||||
item_editor->set_edited_resource(Theme::get_default()->get_icon(E.key, edited_type));
|
||||
@ -2677,7 +2677,7 @@ void ThemeTypeEditor::_update_type_items() {
|
||||
item_editor->set_edited_resource(Ref<Resource>());
|
||||
}
|
||||
item_editor->connect("resource_selected", callable_mp(this, &ThemeTypeEditor::_edit_resource_item));
|
||||
item_editor->connect("resource_changed", callable_mp(this, &ThemeTypeEditor::_stylebox_item_changed), varray(leading_stylebox.item_name));
|
||||
item_editor->connect("resource_changed", callable_mp(this, &ThemeTypeEditor::_stylebox_item_changed).bind(leading_stylebox.item_name));
|
||||
|
||||
stylebox_items_list->add_child(item_control);
|
||||
stylebox_items_list->add_child(memnew(HSeparator));
|
||||
@ -2702,7 +2702,7 @@ void ThemeTypeEditor::_update_type_items() {
|
||||
item_editor->set_edited_resource(Ref<Resource>());
|
||||
}
|
||||
item_editor->connect("resource_selected", callable_mp(this, &ThemeTypeEditor::_edit_resource_item));
|
||||
item_editor->connect("resource_changed", callable_mp(this, &ThemeTypeEditor::_stylebox_item_changed), varray(E.key));
|
||||
item_editor->connect("resource_changed", callable_mp(this, &ThemeTypeEditor::_stylebox_item_changed).bind(E.key));
|
||||
|
||||
Button *pin_leader_button = memnew(Button);
|
||||
pin_leader_button->set_flat(true);
|
||||
@ -2710,7 +2710,7 @@ void ThemeTypeEditor::_update_type_items() {
|
||||
pin_leader_button->set_icon(get_theme_icon(SNAME("Pin"), SNAME("EditorIcons")));
|
||||
pin_leader_button->set_tooltip(TTR("Pin this StyleBox as a main style. Editing its properties will update the same properties in all other StyleBoxes of this type."));
|
||||
item_control->add_child(pin_leader_button);
|
||||
pin_leader_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_on_pin_leader_button_pressed), varray(item_editor, E.key));
|
||||
pin_leader_button->connect("pressed", callable_mp(this, &ThemeTypeEditor::_on_pin_leader_button_pressed).bind(item_editor, E.key));
|
||||
} else {
|
||||
if (Theme::get_default()->has_stylebox(E.key, edited_type)) {
|
||||
item_editor->set_edited_resource(Theme::get_default()->get_stylebox(E.key, edited_type));
|
||||
@ -3522,8 +3522,8 @@ void ThemeEditor::_preview_scene_dialog_cbk(const String &p_path) {
|
||||
}
|
||||
|
||||
_add_preview_tab(preview_tab, p_path.get_file(), get_theme_icon(SNAME("PackedScene"), SNAME("EditorIcons")));
|
||||
preview_tab->connect("scene_invalidated", callable_mp(this, &ThemeEditor::_remove_preview_tab_invalid), varray(preview_tab));
|
||||
preview_tab->connect("scene_reloaded", callable_mp(this, &ThemeEditor::_update_preview_tab), varray(preview_tab));
|
||||
preview_tab->connect("scene_invalidated", callable_mp(this, &ThemeEditor::_remove_preview_tab_invalid).bind(preview_tab));
|
||||
preview_tab->connect("scene_reloaded", callable_mp(this, &ThemeEditor::_update_preview_tab).bind(preview_tab));
|
||||
}
|
||||
|
||||
void ThemeEditor::_add_preview_tab(ThemeEditorPreview *p_preview_tab, const String &p_preview_name, const Ref<Texture2D> &p_icon) {
|
||||
@ -3617,13 +3617,13 @@ ThemeEditor::ThemeEditor() {
|
||||
Button *theme_save_button = memnew(Button);
|
||||
theme_save_button->set_text(TTR("Save"));
|
||||
theme_save_button->set_flat(true);
|
||||
theme_save_button->connect("pressed", callable_mp(this, &ThemeEditor::_theme_save_button_cbk), varray(false));
|
||||
theme_save_button->connect("pressed", callable_mp(this, &ThemeEditor::_theme_save_button_cbk).bind(false));
|
||||
top_menu->add_child(theme_save_button);
|
||||
|
||||
Button *theme_save_as_button = memnew(Button);
|
||||
theme_save_as_button->set_text(TTR("Save As..."));
|
||||
theme_save_as_button->set_flat(true);
|
||||
theme_save_as_button->connect("pressed", callable_mp(this, &ThemeEditor::_theme_save_button_cbk), varray(true));
|
||||
theme_save_as_button->connect("pressed", callable_mp(this, &ThemeEditor::_theme_save_button_cbk).bind(true));
|
||||
top_menu->add_child(theme_save_as_button);
|
||||
|
||||
top_menu->add_child(memnew(VSeparator));
|
||||
|
@ -2198,7 +2198,7 @@ TileMapEditorTilesPlugin::TileMapEditorTilesPlugin() {
|
||||
sources_list->connect("item_selected", callable_mp(this, &TileMapEditorTilesPlugin::_update_fix_selected_and_hovered).unbind(1));
|
||||
sources_list->connect("item_selected", callable_mp(this, &TileMapEditorTilesPlugin::_update_source_display).unbind(1));
|
||||
sources_list->connect("item_selected", callable_mp(TilesEditorPlugin::get_singleton(), &TilesEditorPlugin::set_sources_lists_current));
|
||||
sources_list->connect("visibility_changed", callable_mp(TilesEditorPlugin::get_singleton(), &TilesEditorPlugin::synchronize_sources_list), varray(sources_list, source_sort_button));
|
||||
sources_list->connect("visibility_changed", callable_mp(TilesEditorPlugin::get_singleton(), &TilesEditorPlugin::synchronize_sources_list).bind(sources_list, source_sort_button));
|
||||
sources_list->add_user_signal(MethodInfo("sort_request"));
|
||||
sources_list->connect("sort_request", callable_mp(this, &TileMapEditorTilesPlugin::_update_tile_set_sources_list));
|
||||
split_container_left_side->add_child(sources_list);
|
||||
|
@ -340,7 +340,7 @@ TileProxiesManagerDialog::TileProxiesManagerDialog() {
|
||||
source_level_list->set_v_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
source_level_list->set_select_mode(ItemList::SELECT_MULTI);
|
||||
source_level_list->set_allow_rmb_select(true);
|
||||
source_level_list->connect("item_clicked", callable_mp(this, &TileProxiesManagerDialog::_right_clicked), varray(source_level_list));
|
||||
source_level_list->connect("item_clicked", callable_mp(this, &TileProxiesManagerDialog::_right_clicked).bind(source_level_list));
|
||||
vbox_container->add_child(source_level_list);
|
||||
|
||||
Label *coords_level_label = memnew(Label);
|
||||
@ -351,7 +351,7 @@ TileProxiesManagerDialog::TileProxiesManagerDialog() {
|
||||
coords_level_list->set_v_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
coords_level_list->set_select_mode(ItemList::SELECT_MULTI);
|
||||
coords_level_list->set_allow_rmb_select(true);
|
||||
coords_level_list->connect("item_clicked", callable_mp(this, &TileProxiesManagerDialog::_right_clicked), varray(coords_level_list));
|
||||
coords_level_list->connect("item_clicked", callable_mp(this, &TileProxiesManagerDialog::_right_clicked).bind(coords_level_list));
|
||||
vbox_container->add_child(coords_level_list);
|
||||
|
||||
Label *alternative_level_label = memnew(Label);
|
||||
@ -362,7 +362,7 @@ TileProxiesManagerDialog::TileProxiesManagerDialog() {
|
||||
alternative_level_list->set_v_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
alternative_level_list->set_select_mode(ItemList::SELECT_MULTI);
|
||||
alternative_level_list->set_allow_rmb_select(true);
|
||||
alternative_level_list->connect("item_clicked", callable_mp(this, &TileProxiesManagerDialog::_right_clicked), varray(alternative_level_list));
|
||||
alternative_level_list->connect("item_clicked", callable_mp(this, &TileProxiesManagerDialog::_right_clicked).bind(alternative_level_list));
|
||||
vbox_container->add_child(alternative_level_list);
|
||||
|
||||
popup_menu = memnew(PopupMenu);
|
||||
|
@ -913,7 +913,7 @@ void TileSetAtlasSourceEditor::_update_atlas_view() {
|
||||
button->add_theme_style_override("hover", memnew(StyleBoxEmpty));
|
||||
button->add_theme_style_override("focus", memnew(StyleBoxEmpty));
|
||||
button->add_theme_style_override("pressed", memnew(StyleBoxEmpty));
|
||||
button->connect("pressed", callable_mp(tile_set_atlas_source, &TileSetAtlasSource::create_alternative_tile), varray(tile_id, TileSetSource::INVALID_TILE_ALTERNATIVE));
|
||||
button->connect("pressed", callable_mp(tile_set_atlas_source, &TileSetAtlasSource::create_alternative_tile).bind(tile_id, TileSetSource::INVALID_TILE_ALTERNATIVE));
|
||||
button->set_rect(Rect2(Vector2(pos.x, pos.y + (y_increment - texture_region_base_size.y) / 2.0), Vector2(texture_region_base_size_min, texture_region_base_size_min)));
|
||||
button->set_expand_icon(true);
|
||||
|
||||
|
@ -710,9 +710,9 @@ TileSetEditor::TileSetEditor() {
|
||||
sources_list->set_v_size_flags(SIZE_EXPAND_FILL);
|
||||
sources_list->connect("item_selected", callable_mp(this, &TileSetEditor::_source_selected));
|
||||
sources_list->connect("item_selected", callable_mp(TilesEditorPlugin::get_singleton(), &TilesEditorPlugin::set_sources_lists_current));
|
||||
sources_list->connect("visibility_changed", callable_mp(TilesEditorPlugin::get_singleton(), &TilesEditorPlugin::synchronize_sources_list), varray(sources_list, source_sort_button));
|
||||
sources_list->connect("visibility_changed", callable_mp(TilesEditorPlugin::get_singleton(), &TilesEditorPlugin::synchronize_sources_list).bind(sources_list, source_sort_button));
|
||||
sources_list->add_user_signal(MethodInfo("sort_request"));
|
||||
sources_list->connect("sort_request", callable_mp(this, &TileSetEditor::_update_sources_list), varray(-1));
|
||||
sources_list->connect("sort_request", callable_mp(this, &TileSetEditor::_update_sources_list).bind(-1));
|
||||
sources_list->set_texture_filter(CanvasItem::TEXTURE_FILTER_NEAREST);
|
||||
sources_list->set_drag_forwarding(this);
|
||||
split_container_left_side->add_child(sources_list);
|
||||
|
@ -116,7 +116,7 @@ void TilesEditorPlugin::_thread() {
|
||||
// Add the viewport at the last moment to avoid rendering too early.
|
||||
EditorNode::get_singleton()->add_child(viewport);
|
||||
|
||||
RS::get_singleton()->connect(SNAME("frame_pre_draw"), callable_mp(const_cast<TilesEditorPlugin *>(this), &TilesEditorPlugin::_preview_frame_started), Vector<Variant>(), Object::CONNECT_ONESHOT);
|
||||
RS::get_singleton()->connect(SNAME("frame_pre_draw"), callable_mp(const_cast<TilesEditorPlugin *>(this), &TilesEditorPlugin::_preview_frame_started), Object::CONNECT_ONESHOT);
|
||||
|
||||
pattern_preview_done.wait();
|
||||
|
||||
@ -127,7 +127,7 @@ void TilesEditorPlugin::_thread() {
|
||||
const Variant *args_ptr[] = { &args[0], &args[1] };
|
||||
Variant r;
|
||||
Callable::CallError error;
|
||||
item.callback.call(args_ptr, 2, r, error);
|
||||
item.callback.callp(args_ptr, 2, r, error);
|
||||
|
||||
viewport->queue_delete();
|
||||
} else {
|
||||
|
@ -199,7 +199,7 @@ void VisualShaderGraphPlugin::set_input_port_default_value(VisualShader::Type p_
|
||||
|
||||
Callable ce = callable_mp(editor, &VisualShaderEditor::_draw_color_over_button);
|
||||
if (!button->is_connected("draw", ce)) {
|
||||
button->connect("draw", ce, varray(button, p_value));
|
||||
button->connect("draw", ce.bind(button, p_value));
|
||||
}
|
||||
} break;
|
||||
case Variant::BOOL: {
|
||||
@ -423,7 +423,7 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
size = resizable_node->get_size();
|
||||
|
||||
node->set_resizable(true);
|
||||
node->connect("resize_request", callable_mp(editor, &VisualShaderEditor::_node_resized), varray((int)p_type, p_id));
|
||||
node->connect("resize_request", callable_mp(editor, &VisualShaderEditor::_node_resized).bind((int)p_type, p_id));
|
||||
}
|
||||
if (is_expression) {
|
||||
expression = expression_node->get_expression();
|
||||
@ -435,10 +435,10 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
|
||||
if (p_id >= 2) {
|
||||
node->set_show_close_button(true);
|
||||
node->connect("close_request", callable_mp(editor, &VisualShaderEditor::_delete_node_request), varray(p_type, p_id), CONNECT_DEFERRED);
|
||||
node->connect("close_request", callable_mp(editor, &VisualShaderEditor::_delete_node_request).bind(p_type, p_id), CONNECT_DEFERRED);
|
||||
}
|
||||
|
||||
node->connect("dragged", callable_mp(editor, &VisualShaderEditor::_node_dragged), varray(p_id));
|
||||
node->connect("dragged", callable_mp(editor, &VisualShaderEditor::_node_dragged).bind(p_id));
|
||||
|
||||
Control *custom_editor = nullptr;
|
||||
int port_offset = 1;
|
||||
@ -485,8 +485,8 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
register_uniform_name(p_id, uniform_name);
|
||||
uniform_name->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
uniform_name->set_text(uniform->get_uniform_name());
|
||||
uniform_name->connect("text_submitted", callable_mp(editor, &VisualShaderEditor::_uniform_line_edit_changed), varray(p_id));
|
||||
uniform_name->connect("focus_exited", callable_mp(editor, &VisualShaderEditor::_uniform_line_edit_focus_out), varray(uniform_name, p_id));
|
||||
uniform_name->connect("text_submitted", callable_mp(editor, &VisualShaderEditor::_uniform_line_edit_changed).bind(p_id));
|
||||
uniform_name->connect("focus_exited", callable_mp(editor, &VisualShaderEditor::_uniform_line_edit_focus_out).bind(uniform_name, p_id));
|
||||
|
||||
if (vsnode->get_output_port_count() == 1 && vsnode->get_output_port_name(0) == "") {
|
||||
hb = memnew(HBoxContainer);
|
||||
@ -526,7 +526,7 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
|
||||
Callable ce = callable_mp(graph_plugin, &VisualShaderGraphPlugin::update_curve);
|
||||
if (curve->get_texture().is_valid() && !curve->get_texture()->is_connected("changed", ce)) {
|
||||
curve->get_texture()->connect("changed", ce, varray(p_id));
|
||||
curve->get_texture()->connect("changed", ce.bind(p_id));
|
||||
}
|
||||
|
||||
CurveEditor *curve_editor = memnew(CurveEditor);
|
||||
@ -544,7 +544,7 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
|
||||
Callable ce = callable_mp(graph_plugin, &VisualShaderGraphPlugin::update_curve_xyz);
|
||||
if (curve_xyz->get_texture().is_valid() && !curve_xyz->get_texture()->is_connected("changed", ce)) {
|
||||
curve_xyz->get_texture()->connect("changed", ce, varray(p_id));
|
||||
curve_xyz->get_texture()->connect("changed", ce.bind(p_id));
|
||||
}
|
||||
|
||||
CurveEditor *curve_editor_x = memnew(CurveEditor);
|
||||
@ -607,14 +607,14 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
|
||||
Button *add_input_btn = memnew(Button);
|
||||
add_input_btn->set_text(TTR("Add Input"));
|
||||
add_input_btn->connect("pressed", callable_mp(editor, &VisualShaderEditor::_add_input_port), varray(p_id, group_node->get_free_input_port_id(), VisualShaderNode::PORT_TYPE_VECTOR_3D, input_port_name), CONNECT_DEFERRED);
|
||||
add_input_btn->connect("pressed", callable_mp(editor, &VisualShaderEditor::_add_input_port).bind(p_id, group_node->get_free_input_port_id(), VisualShaderNode::PORT_TYPE_VECTOR_3D, input_port_name), CONNECT_DEFERRED);
|
||||
hb2->add_child(add_input_btn);
|
||||
|
||||
hb2->add_spacer();
|
||||
|
||||
Button *add_output_btn = memnew(Button);
|
||||
add_output_btn->set_text(TTR("Add Output"));
|
||||
add_output_btn->connect("pressed", callable_mp(editor, &VisualShaderEditor::_add_output_port), varray(p_id, group_node->get_free_output_port_id(), VisualShaderNode::PORT_TYPE_VECTOR_3D, output_port_name), CONNECT_DEFERRED);
|
||||
add_output_btn->connect("pressed", callable_mp(editor, &VisualShaderEditor::_add_output_port).bind(p_id, group_node->get_free_output_port_id(), VisualShaderNode::PORT_TYPE_VECTOR_3D, output_port_name), CONNECT_DEFERRED);
|
||||
hb2->add_child(add_output_btn);
|
||||
|
||||
node->add_child(hb2);
|
||||
@ -722,7 +722,7 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
Button *button = memnew(Button);
|
||||
hb->add_child(button);
|
||||
register_default_input_button(p_id, i, button);
|
||||
button->connect("pressed", callable_mp(editor, &VisualShaderEditor::_edit_port_default_input), varray(button, p_id, i));
|
||||
button->connect("pressed", callable_mp(editor, &VisualShaderEditor::_edit_port_default_input).bind(button, p_id, i));
|
||||
if (default_value.get_type() != Variant::NIL) { // only a label
|
||||
set_input_port_default_value(p_type, p_id, i, default_value);
|
||||
} else {
|
||||
@ -747,20 +747,20 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
type_box->add_item(TTR("Sampler"));
|
||||
type_box->select(group_node->get_input_port_type(i));
|
||||
type_box->set_custom_minimum_size(Size2(100 * EDSCALE, 0));
|
||||
type_box->connect("item_selected", callable_mp(editor, &VisualShaderEditor::_change_input_port_type), varray(p_id, i), CONNECT_DEFERRED);
|
||||
type_box->connect("item_selected", callable_mp(editor, &VisualShaderEditor::_change_input_port_type).bind(p_id, i), CONNECT_DEFERRED);
|
||||
|
||||
LineEdit *name_box = memnew(LineEdit);
|
||||
hb->add_child(name_box);
|
||||
name_box->set_custom_minimum_size(Size2(65 * EDSCALE, 0));
|
||||
name_box->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
name_box->set_text(name_left);
|
||||
name_box->connect("text_submitted", callable_mp(editor, &VisualShaderEditor::_change_input_port_name), varray(name_box, p_id, i), CONNECT_DEFERRED);
|
||||
name_box->connect("focus_exited", callable_mp(editor, &VisualShaderEditor::_port_name_focus_out), varray(name_box, p_id, i, false), CONNECT_DEFERRED);
|
||||
name_box->connect("text_submitted", callable_mp(editor, &VisualShaderEditor::_change_input_port_name).bind(name_box, p_id, i), CONNECT_DEFERRED);
|
||||
name_box->connect("focus_exited", callable_mp(editor, &VisualShaderEditor::_port_name_focus_out).bind(name_box, p_id, i, false), CONNECT_DEFERRED);
|
||||
|
||||
Button *remove_btn = memnew(Button);
|
||||
remove_btn->set_icon(EditorNode::get_singleton()->get_gui_base()->get_theme_icon(SNAME("Remove"), SNAME("EditorIcons")));
|
||||
remove_btn->set_tooltip(TTR("Remove") + " " + name_left);
|
||||
remove_btn->connect("pressed", callable_mp(editor, &VisualShaderEditor::_remove_input_port), varray(p_id, i), CONNECT_DEFERRED);
|
||||
remove_btn->connect("pressed", callable_mp(editor, &VisualShaderEditor::_remove_input_port).bind(p_id, i), CONNECT_DEFERRED);
|
||||
hb->add_child(remove_btn);
|
||||
} else {
|
||||
Label *label = memnew(Label);
|
||||
@ -787,7 +787,7 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
Button *remove_btn = memnew(Button);
|
||||
remove_btn->set_icon(EditorNode::get_singleton()->get_gui_base()->get_theme_icon(SNAME("Remove"), SNAME("EditorIcons")));
|
||||
remove_btn->set_tooltip(TTR("Remove") + " " + name_left);
|
||||
remove_btn->connect("pressed", callable_mp(editor, &VisualShaderEditor::_remove_output_port), varray(p_id, i), CONNECT_DEFERRED);
|
||||
remove_btn->connect("pressed", callable_mp(editor, &VisualShaderEditor::_remove_output_port).bind(p_id, i), CONNECT_DEFERRED);
|
||||
hb->add_child(remove_btn);
|
||||
|
||||
LineEdit *name_box = memnew(LineEdit);
|
||||
@ -795,8 +795,8 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
name_box->set_custom_minimum_size(Size2(65 * EDSCALE, 0));
|
||||
name_box->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
name_box->set_text(name_right);
|
||||
name_box->connect("text_submitted", callable_mp(editor, &VisualShaderEditor::_change_output_port_name), varray(name_box, p_id, i), CONNECT_DEFERRED);
|
||||
name_box->connect("focus_exited", callable_mp(editor, &VisualShaderEditor::_port_name_focus_out), varray(name_box, p_id, i, true), CONNECT_DEFERRED);
|
||||
name_box->connect("text_submitted", callable_mp(editor, &VisualShaderEditor::_change_output_port_name).bind(name_box, p_id, i), CONNECT_DEFERRED);
|
||||
name_box->connect("focus_exited", callable_mp(editor, &VisualShaderEditor::_port_name_focus_out).bind(name_box, p_id, i, true), CONNECT_DEFERRED);
|
||||
|
||||
OptionButton *type_box = memnew(OptionButton);
|
||||
hb->add_child(type_box);
|
||||
@ -809,7 +809,7 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
type_box->add_item(TTR("Transform"));
|
||||
type_box->select(group_node->get_output_port_type(i));
|
||||
type_box->set_custom_minimum_size(Size2(100 * EDSCALE, 0));
|
||||
type_box->connect("item_selected", callable_mp(editor, &VisualShaderEditor::_change_output_port_type), varray(p_id, i), CONNECT_DEFERRED);
|
||||
type_box->connect("item_selected", callable_mp(editor, &VisualShaderEditor::_change_output_port_type).bind(p_id, i), CONNECT_DEFERRED);
|
||||
} else {
|
||||
Label *label = memnew(Label);
|
||||
label->set_text(name_right);
|
||||
@ -827,7 +827,7 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
expand->set_pressed_texture(editor->get_theme_icon(SNAME("GuiTreeArrowRight"), SNAME("EditorIcons")));
|
||||
expand->set_v_size_flags(Control::SIZE_SHRINK_CENTER);
|
||||
expand->set_pressed(vsnode->_is_output_port_expanded(i));
|
||||
expand->connect("pressed", callable_mp(editor, &VisualShaderEditor::_expand_output_port), varray(p_id, i, !vsnode->_is_output_port_expanded(i)), CONNECT_DEFERRED);
|
||||
expand->connect("pressed", callable_mp(editor, &VisualShaderEditor::_expand_output_port).bind(p_id, i, !vsnode->_is_output_port_expanded(i)), CONNECT_DEFERRED);
|
||||
hb->add_child(expand);
|
||||
}
|
||||
if (vsnode->has_output_port_preview(i) && port_right != VisualShaderNode::PORT_TYPE_TRANSFORM && port_right != VisualShaderNode::PORT_TYPE_SAMPLER) {
|
||||
@ -839,7 +839,7 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
|
||||
register_output_port(p_id, j, preview);
|
||||
|
||||
preview->connect("pressed", callable_mp(editor, &VisualShaderEditor::_preview_select_port), varray(p_id, j), CONNECT_DEFERRED);
|
||||
preview->connect("pressed", callable_mp(editor, &VisualShaderEditor::_preview_select_port).bind(p_id, j), CONNECT_DEFERRED);
|
||||
hb->add_child(preview);
|
||||
}
|
||||
}
|
||||
@ -1021,7 +1021,7 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id) {
|
||||
expression_box->set_context_menu_enabled(false);
|
||||
expression_box->set_draw_line_numbers(true);
|
||||
|
||||
expression_box->connect("focus_exited", callable_mp(editor, &VisualShaderEditor::_expression_focus_out), varray(expression_box, p_id));
|
||||
expression_box->connect("focus_exited", callable_mp(editor, &VisualShaderEditor::_expression_focus_out).bind(expression_box, p_id));
|
||||
}
|
||||
|
||||
if (is_comment) {
|
||||
@ -4666,13 +4666,13 @@ VisualShaderEditor::VisualShaderEditor() {
|
||||
graph->add_valid_right_disconnect_type(VisualShaderNode::PORT_TYPE_SAMPLER);
|
||||
//graph->add_valid_left_disconnect_type(0);
|
||||
graph->set_v_size_flags(SIZE_EXPAND_FILL);
|
||||
graph->connect("connection_request", callable_mp(this, &VisualShaderEditor::_connection_request), varray(), CONNECT_DEFERRED);
|
||||
graph->connect("disconnection_request", callable_mp(this, &VisualShaderEditor::_disconnection_request), varray(), CONNECT_DEFERRED);
|
||||
graph->connect("connection_request", callable_mp(this, &VisualShaderEditor::_connection_request), CONNECT_DEFERRED);
|
||||
graph->connect("disconnection_request", callable_mp(this, &VisualShaderEditor::_disconnection_request), CONNECT_DEFERRED);
|
||||
graph->connect("node_selected", callable_mp(this, &VisualShaderEditor::_node_selected));
|
||||
graph->connect("scroll_offset_changed", callable_mp(this, &VisualShaderEditor::_scroll_changed));
|
||||
graph->connect("duplicate_nodes_request", callable_mp(this, &VisualShaderEditor::_duplicate_nodes));
|
||||
graph->connect("copy_nodes_request", callable_mp(this, &VisualShaderEditor::_copy_nodes), varray(false));
|
||||
graph->connect("paste_nodes_request", callable_mp(this, &VisualShaderEditor::_paste_nodes), varray(false, Point2()));
|
||||
graph->connect("copy_nodes_request", callable_mp(this, &VisualShaderEditor::_copy_nodes).bind(false));
|
||||
graph->connect("paste_nodes_request", callable_mp(this, &VisualShaderEditor::_paste_nodes).bind(false, Point2()));
|
||||
graph->connect("delete_nodes_request", callable_mp(this, &VisualShaderEditor::_delete_nodes_request));
|
||||
graph->connect("gui_input", callable_mp(this, &VisualShaderEditor::_graph_gui_input));
|
||||
graph->connect("connection_to_empty", callable_mp(this, &VisualShaderEditor::_connection_to_empty));
|
||||
@ -4775,7 +4775,7 @@ VisualShaderEditor::VisualShaderEditor() {
|
||||
add_node->set_text(TTR("Add Node..."));
|
||||
graph->get_zoom_hbox()->add_child(add_node);
|
||||
graph->get_zoom_hbox()->move_child(add_node, 0);
|
||||
add_node->connect("pressed", callable_mp(this, &VisualShaderEditor::_show_members_dialog), varray(false, VisualShaderNode::PORT_TYPE_MAX, VisualShaderNode::PORT_TYPE_MAX));
|
||||
add_node->connect("pressed", callable_mp(this, &VisualShaderEditor::_show_members_dialog).bind(false, VisualShaderNode::PORT_TYPE_MAX, VisualShaderNode::PORT_TYPE_MAX));
|
||||
|
||||
varying_button = memnew(Button);
|
||||
varying_button->set_flat(true);
|
||||
|
@ -1348,8 +1348,8 @@ void ProjectList::create_project_item_control(int p_index) {
|
||||
Color font_color = get_theme_color(SNAME("font_color"), SNAME("Tree"));
|
||||
|
||||
ProjectListItemControl *hb = memnew(ProjectListItemControl);
|
||||
hb->connect("draw", callable_mp(this, &ProjectList::_panel_draw), varray(hb));
|
||||
hb->connect("gui_input", callable_mp(this, &ProjectList::_panel_input), varray(hb));
|
||||
hb->connect("draw", callable_mp(this, &ProjectList::_panel_draw).bind(hb));
|
||||
hb->connect("gui_input", callable_mp(this, &ProjectList::_panel_input).bind(hb));
|
||||
hb->add_theme_constant_override("separation", 10 * EDSCALE);
|
||||
hb->set_tooltip(item.description);
|
||||
|
||||
@ -1360,7 +1360,7 @@ void ProjectList::create_project_item_control(int p_index) {
|
||||
favorite->set_normal_texture(favorite_icon);
|
||||
// This makes the project's "hover" style display correctly when hovering the favorite icon.
|
||||
favorite->set_mouse_filter(MOUSE_FILTER_PASS);
|
||||
favorite->connect("pressed", callable_mp(this, &ProjectList::_favorite_pressed), varray(hb));
|
||||
favorite->connect("pressed", callable_mp(this, &ProjectList::_favorite_pressed).bind(hb));
|
||||
favorite_box->add_child(favorite);
|
||||
favorite_box->set_alignment(BoxContainer::ALIGNMENT_CENTER);
|
||||
hb->add_child(favorite_box);
|
||||
@ -1433,7 +1433,7 @@ void ProjectList::create_project_item_control(int p_index) {
|
||||
path_hb->add_child(show);
|
||||
|
||||
if (!item.missing) {
|
||||
show->connect("pressed", callable_mp(this, &ProjectList::_show_project), varray(item.path));
|
||||
show->connect("pressed", callable_mp(this, &ProjectList::_show_project).bind(item.path));
|
||||
show->set_tooltip(TTR("Show in File Manager"));
|
||||
} else {
|
||||
show->set_tooltip(TTR("Error: Project is missing on the filesystem."));
|
||||
@ -2451,7 +2451,7 @@ void ProjectManager::_files_dropped(PackedStringArray p_files) {
|
||||
}
|
||||
if (confirm) {
|
||||
multi_scan_ask->get_ok_button()->disconnect("pressed", callable_mp(this, &ProjectManager::_scan_multiple_folders));
|
||||
multi_scan_ask->get_ok_button()->connect("pressed", callable_mp(this, &ProjectManager::_scan_multiple_folders), varray(folders));
|
||||
multi_scan_ask->get_ok_button()->connect("pressed", callable_mp(this, &ProjectManager::_scan_multiple_folders).bind(folders));
|
||||
multi_scan_ask->set_text(
|
||||
vformat(TTR("Are you sure to scan %s folders for existing Godot projects?\nThis could take a while."), folders.size()));
|
||||
multi_scan_ask->popup_centered();
|
||||
|
@ -827,7 +827,7 @@ bool CustomPropertyEditor::edit(Object *p_owner, const String &p_name, Variant::
|
||||
value_vbox->add_child(color_picker);
|
||||
color_picker->hide();
|
||||
color_picker->connect("color_changed", callable_mp(this, &CustomPropertyEditor::_color_changed));
|
||||
color_picker->connect("show", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker), varray(color_picker));
|
||||
color_picker->connect("show", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker).bind(color_picker));
|
||||
}
|
||||
|
||||
color_picker->show();
|
||||
@ -1813,7 +1813,7 @@ CustomPropertyEditor::CustomPropertyEditor() {
|
||||
checks20[i]->set_focus_mode(Control::FOCUS_NONE);
|
||||
checks20gc->add_child(checks20[i]);
|
||||
checks20[i]->hide();
|
||||
checks20[i]->connect("pressed", callable_mp(this, &CustomPropertyEditor::_action_pressed), make_binds(i));
|
||||
checks20[i]->connect("pressed", callable_mp(this, &CustomPropertyEditor::_action_pressed).bind(i));
|
||||
checks20[i]->set_tooltip(vformat(TTR("Bit %d, val %d."), i, 1 << i));
|
||||
}
|
||||
|
||||
@ -1890,9 +1890,7 @@ CustomPropertyEditor::CustomPropertyEditor() {
|
||||
action_buttons[i] = memnew(Button);
|
||||
action_buttons[i]->hide();
|
||||
action_hboxes->add_child(action_buttons[i]);
|
||||
Vector<Variant> binds;
|
||||
binds.push_back(i);
|
||||
action_buttons[i]->connect("pressed", callable_mp(this, &CustomPropertyEditor::_action_pressed), binds);
|
||||
action_buttons[i]->connect("pressed", callable_mp(this, &CustomPropertyEditor::_action_pressed).bind(i));
|
||||
}
|
||||
|
||||
create_dialog = nullptr;
|
||||
|
@ -139,7 +139,7 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
|
||||
but_insert_name->set_text("NAME");
|
||||
but_insert_name->set_tooltip(String("${NAME}\n") + TTR("Node name."));
|
||||
but_insert_name->set_focus_mode(Control::FOCUS_NONE);
|
||||
but_insert_name->connect("pressed", callable_mp(this, &RenameDialog::_insert_text), make_binds("${NAME}"));
|
||||
but_insert_name->connect("pressed", callable_mp(this, &RenameDialog::_insert_text).bind("${NAME}"));
|
||||
but_insert_name->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
grd_substitute->add_child(but_insert_name);
|
||||
|
||||
@ -149,7 +149,7 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
|
||||
but_insert_parent->set_text("PARENT");
|
||||
but_insert_parent->set_tooltip(String("${PARENT}\n") + TTR("Node's parent name, if available."));
|
||||
but_insert_parent->set_focus_mode(Control::FOCUS_NONE);
|
||||
but_insert_parent->connect("pressed", callable_mp(this, &RenameDialog::_insert_text), make_binds("${PARENT}"));
|
||||
but_insert_parent->connect("pressed", callable_mp(this, &RenameDialog::_insert_text).bind("${PARENT}"));
|
||||
but_insert_parent->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
grd_substitute->add_child(but_insert_parent);
|
||||
|
||||
@ -159,7 +159,7 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
|
||||
but_insert_type->set_text("TYPE");
|
||||
but_insert_type->set_tooltip(String("${TYPE}\n") + TTR("Node type."));
|
||||
but_insert_type->set_focus_mode(Control::FOCUS_NONE);
|
||||
but_insert_type->connect("pressed", callable_mp(this, &RenameDialog::_insert_text), make_binds("${TYPE}"));
|
||||
but_insert_type->connect("pressed", callable_mp(this, &RenameDialog::_insert_text).bind("${TYPE}"));
|
||||
but_insert_type->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
grd_substitute->add_child(but_insert_type);
|
||||
|
||||
@ -169,7 +169,7 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
|
||||
but_insert_scene->set_text("SCENE");
|
||||
but_insert_scene->set_tooltip(String("${SCENE}\n") + TTR("Current scene name."));
|
||||
but_insert_scene->set_focus_mode(Control::FOCUS_NONE);
|
||||
but_insert_scene->connect("pressed", callable_mp(this, &RenameDialog::_insert_text), make_binds("${SCENE}"));
|
||||
but_insert_scene->connect("pressed", callable_mp(this, &RenameDialog::_insert_text).bind("${SCENE}"));
|
||||
but_insert_scene->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
grd_substitute->add_child(but_insert_scene);
|
||||
|
||||
@ -179,7 +179,7 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
|
||||
but_insert_root->set_text("ROOT");
|
||||
but_insert_root->set_tooltip(String("${ROOT}\n") + TTR("Root node name."));
|
||||
but_insert_root->set_focus_mode(Control::FOCUS_NONE);
|
||||
but_insert_root->connect("pressed", callable_mp(this, &RenameDialog::_insert_text), make_binds("${ROOT}"));
|
||||
but_insert_root->connect("pressed", callable_mp(this, &RenameDialog::_insert_text).bind("${ROOT}"));
|
||||
but_insert_root->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
grd_substitute->add_child(but_insert_root);
|
||||
|
||||
@ -189,7 +189,7 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
|
||||
but_insert_count->set_text("COUNTER");
|
||||
but_insert_count->set_tooltip(String("${COUNTER}\n") + TTR("Sequential integer counter.\nCompare counter options."));
|
||||
but_insert_count->set_focus_mode(Control::FOCUS_NONE);
|
||||
but_insert_count->connect("pressed", callable_mp(this, &RenameDialog::_insert_text), make_binds("${COUNTER}"));
|
||||
but_insert_count->connect("pressed", callable_mp(this, &RenameDialog::_insert_text).bind("${COUNTER}"));
|
||||
but_insert_count->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
grd_substitute->add_child(but_insert_count);
|
||||
|
||||
@ -321,9 +321,9 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
|
||||
spn_count_padding->connect("value_changed", callable_mp(this, &RenameDialog::_update_preview_int));
|
||||
opt_style->connect("item_selected", callable_mp(this, &RenameDialog::_update_preview_int));
|
||||
opt_case->connect("item_selected", callable_mp(this, &RenameDialog::_update_preview_int));
|
||||
cbut_substitute->connect("pressed", callable_mp(this, &RenameDialog::_update_preview), varray(""));
|
||||
cbut_regex->connect("pressed", callable_mp(this, &RenameDialog::_update_preview), varray(""));
|
||||
cbut_process->connect("pressed", callable_mp(this, &RenameDialog::_update_preview), varray(""));
|
||||
cbut_substitute->connect("pressed", callable_mp(this, &RenameDialog::_update_preview).bind(""));
|
||||
cbut_regex->connect("pressed", callable_mp(this, &RenameDialog::_update_preview).bind(""));
|
||||
cbut_process->connect("pressed", callable_mp(this, &RenameDialog::_update_preview).bind(""));
|
||||
|
||||
but_reset->connect("pressed", callable_mp(this, &RenameDialog::reset));
|
||||
|
||||
|
@ -1257,19 +1257,19 @@ void SceneTreeDock::_notification(int p_what) {
|
||||
beginner_node_shortcuts->add_child(button_2d);
|
||||
button_2d->set_text(TTR("2D Scene"));
|
||||
button_2d->set_icon(get_theme_icon(SNAME("Node2D"), SNAME("EditorIcons")));
|
||||
button_2d->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected), make_binds(TOOL_CREATE_2D_SCENE, false));
|
||||
button_2d->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected).bind(TOOL_CREATE_2D_SCENE, false));
|
||||
|
||||
button_3d = memnew(Button);
|
||||
beginner_node_shortcuts->add_child(button_3d);
|
||||
button_3d->set_text(TTR("3D Scene"));
|
||||
button_3d->set_icon(get_theme_icon(SNAME("Node3D"), SNAME("EditorIcons")));
|
||||
button_3d->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected), make_binds(TOOL_CREATE_3D_SCENE, false));
|
||||
button_3d->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected).bind(TOOL_CREATE_3D_SCENE, false));
|
||||
|
||||
button_ui = memnew(Button);
|
||||
beginner_node_shortcuts->add_child(button_ui);
|
||||
button_ui->set_text(TTR("User Interface"));
|
||||
button_ui->set_icon(get_theme_icon(SNAME("Control"), SNAME("EditorIcons")));
|
||||
button_ui->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected), make_binds(TOOL_CREATE_USER_INTERFACE, false));
|
||||
button_ui->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected).bind(TOOL_CREATE_USER_INTERFACE, false));
|
||||
|
||||
VBoxContainer *favorite_node_shortcuts = memnew(VBoxContainer);
|
||||
favorite_node_shortcuts->set_name("FavoriteNodeShortcuts");
|
||||
@ -1279,19 +1279,19 @@ void SceneTreeDock::_notification(int p_what) {
|
||||
node_shortcuts->add_child(button_custom);
|
||||
button_custom->set_text(TTR("Other Node"));
|
||||
button_custom->set_icon(get_theme_icon(SNAME("Add"), SNAME("EditorIcons")));
|
||||
button_custom->connect("pressed", callable_bind(callable_mp(this, &SceneTreeDock::_tool_selected), TOOL_NEW, false));
|
||||
button_custom->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected).bind(TOOL_NEW, false));
|
||||
|
||||
button_clipboard = memnew(Button);
|
||||
node_shortcuts->add_child(button_clipboard);
|
||||
button_clipboard->set_text(TTR("Paste From Clipboard"));
|
||||
button_clipboard->set_icon(get_theme_icon(SNAME("ActionPaste"), SNAME("EditorIcons")));
|
||||
button_clipboard->connect("pressed", callable_bind(callable_mp(this, &SceneTreeDock::_tool_selected), TOOL_PASTE, false));
|
||||
button_clipboard->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected).bind(TOOL_PASTE, false));
|
||||
|
||||
_update_create_root_dialog();
|
||||
} break;
|
||||
|
||||
case NOTIFICATION_ENTER_TREE: {
|
||||
clear_inherit_confirm->connect("confirmed", callable_mp(this, &SceneTreeDock::_tool_selected), make_binds(TOOL_SCENE_CLEAR_INHERITANCE_CONFIRM, false));
|
||||
clear_inherit_confirm->connect("confirmed", callable_mp(this, &SceneTreeDock::_tool_selected).bind(TOOL_SCENE_CLEAR_INHERITANCE_CONFIRM, false));
|
||||
scene_tree->set_auto_expand_selected(EditorSettings::get_singleton()->get("docks/scene_tree/auto_expand_to_selected"), false);
|
||||
} break;
|
||||
|
||||
@ -2347,7 +2347,7 @@ void SceneTreeDock::replace_node(Node *p_node, Node *p_by_node, bool p_keep_prop
|
||||
if (!(c.flags & Object::CONNECT_PERSIST)) {
|
||||
continue;
|
||||
}
|
||||
newnode->connect(c.signal.get_name(), c.callable, c.binds, Object::CONNECT_PERSIST);
|
||||
newnode->connect(c.signal.get_name(), c.callable, Object::CONNECT_PERSIST);
|
||||
}
|
||||
}
|
||||
|
||||
@ -3192,7 +3192,7 @@ void SceneTreeDock::_update_create_root_dialog() {
|
||||
name = ScriptServer::get_global_class_native_base(name);
|
||||
}
|
||||
button->set_icon(EditorNode::get_singleton()->get_class_icon(name));
|
||||
button->connect("pressed", callable_mp(this, &SceneTreeDock::_favorite_root_selected), make_binds(l));
|
||||
button->connect("pressed", callable_mp(this, &SceneTreeDock::_favorite_root_selected).bind(l));
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -3374,14 +3374,14 @@ SceneTreeDock::SceneTreeDock(Node *p_scene_root, EditorSelection *p_editor_selec
|
||||
|
||||
button_add = memnew(Button);
|
||||
button_add->set_flat(true);
|
||||
button_add->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected), make_binds(TOOL_NEW, false));
|
||||
button_add->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected).bind(TOOL_NEW, false));
|
||||
button_add->set_tooltip(TTR("Add/Create a New Node."));
|
||||
button_add->set_shortcut(ED_GET_SHORTCUT("scene_tree/add_child_node"));
|
||||
filter_hbc->add_child(button_add);
|
||||
|
||||
button_instance = memnew(Button);
|
||||
button_instance->set_flat(true);
|
||||
button_instance->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected), make_binds(TOOL_INSTANTIATE, false));
|
||||
button_instance->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected).bind(TOOL_INSTANTIATE, false));
|
||||
button_instance->set_tooltip(TTR("Instantiate a scene file as a Node. Creates an inherited scene if no root node exists."));
|
||||
button_instance->set_shortcut(ED_GET_SHORTCUT("scene_tree/instance_scene"));
|
||||
filter_hbc->add_child(button_instance);
|
||||
@ -3396,7 +3396,7 @@ SceneTreeDock::SceneTreeDock(Node *p_scene_root, EditorSelection *p_editor_selec
|
||||
|
||||
button_create_script = memnew(Button);
|
||||
button_create_script->set_flat(true);
|
||||
button_create_script->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected), make_binds(TOOL_ATTACH_SCRIPT, false));
|
||||
button_create_script->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected).bind(TOOL_ATTACH_SCRIPT, false));
|
||||
button_create_script->set_tooltip(TTR("Attach a new or existing script to the selected node."));
|
||||
button_create_script->set_shortcut(ED_GET_SHORTCUT("scene_tree/attach_script"));
|
||||
filter_hbc->add_child(button_create_script);
|
||||
@ -3404,7 +3404,7 @@ SceneTreeDock::SceneTreeDock(Node *p_scene_root, EditorSelection *p_editor_selec
|
||||
|
||||
button_detach_script = memnew(Button);
|
||||
button_detach_script->set_flat(true);
|
||||
button_detach_script->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected), make_binds(TOOL_DETACH_SCRIPT, false));
|
||||
button_detach_script->connect("pressed", callable_mp(this, &SceneTreeDock::_tool_selected).bind(TOOL_DETACH_SCRIPT, false));
|
||||
button_detach_script->set_tooltip(TTR("Detach the script from the selected node."));
|
||||
button_detach_script->set_shortcut(ED_GET_SHORTCUT("scene_tree/detach_script"));
|
||||
filter_hbc->add_child(button_detach_script);
|
||||
@ -3417,7 +3417,7 @@ SceneTreeDock::SceneTreeDock(Node *p_scene_root, EditorSelection *p_editor_selec
|
||||
|
||||
PopupMenu *tree_menu = button_tree_menu->get_popup();
|
||||
tree_menu->add_check_item(TTR("Auto Expand to Selected"), TOOL_AUTO_EXPAND);
|
||||
tree_menu->connect("id_pressed", callable_mp(this, &SceneTreeDock::_tool_selected), make_binds(false));
|
||||
tree_menu->connect("id_pressed", callable_mp(this, &SceneTreeDock::_tool_selected).bind(false));
|
||||
|
||||
button_hb = memnew(HBoxContainer);
|
||||
vbc->add_child(button_hb);
|
||||
@ -3454,8 +3454,8 @@ SceneTreeDock::SceneTreeDock(Node *p_scene_root, EditorSelection *p_editor_selec
|
||||
scene_tree->set_v_size_flags(SIZE_EXPAND | SIZE_FILL);
|
||||
scene_tree->connect("rmb_pressed", callable_mp(this, &SceneTreeDock::_tree_rmb));
|
||||
|
||||
scene_tree->connect("node_selected", callable_mp(this, &SceneTreeDock::_node_selected), varray(), CONNECT_DEFERRED);
|
||||
scene_tree->connect("node_renamed", callable_mp(this, &SceneTreeDock::_node_renamed), varray(), CONNECT_DEFERRED);
|
||||
scene_tree->connect("node_selected", callable_mp(this, &SceneTreeDock::_node_selected), CONNECT_DEFERRED);
|
||||
scene_tree->connect("node_renamed", callable_mp(this, &SceneTreeDock::_node_renamed), CONNECT_DEFERRED);
|
||||
scene_tree->connect("node_prerename", callable_mp(this, &SceneTreeDock::_node_prerenamed));
|
||||
scene_tree->connect("open", callable_mp(this, &SceneTreeDock::_load_request));
|
||||
scene_tree->connect("open_script", callable_mp(this, &SceneTreeDock::_script_open_request));
|
||||
@ -3505,7 +3505,7 @@ SceneTreeDock::SceneTreeDock(Node *p_scene_root, EditorSelection *p_editor_selec
|
||||
|
||||
delete_dialog = memnew(ConfirmationDialog);
|
||||
add_child(delete_dialog);
|
||||
delete_dialog->connect("confirmed", callable_mp(this, &SceneTreeDock::_delete_confirm), varray(false));
|
||||
delete_dialog->connect("confirmed", callable_mp(this, &SceneTreeDock::_delete_confirm).bind(false));
|
||||
|
||||
editable_instance_remove_dialog = memnew(ConfirmationDialog);
|
||||
add_child(editable_instance_remove_dialog);
|
||||
@ -3522,11 +3522,11 @@ SceneTreeDock::SceneTreeDock(Node *p_scene_root, EditorSelection *p_editor_selec
|
||||
|
||||
menu = memnew(PopupMenu);
|
||||
add_child(menu);
|
||||
menu->connect("id_pressed", callable_mp(this, &SceneTreeDock::_tool_selected), make_binds(false));
|
||||
menu->connect("id_pressed", callable_mp(this, &SceneTreeDock::_tool_selected).bind(false));
|
||||
|
||||
menu_subresources = memnew(PopupMenu);
|
||||
menu_subresources->set_name("Sub-Resources");
|
||||
menu_subresources->connect("id_pressed", callable_mp(this, &SceneTreeDock::_tool_selected), make_binds(false));
|
||||
menu_subresources->connect("id_pressed", callable_mp(this, &SceneTreeDock::_tool_selected).bind(false));
|
||||
menu->add_child(menu_subresources);
|
||||
|
||||
menu_properties = memnew(PopupMenu);
|
||||
|
@ -358,7 +358,7 @@ void SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
if (can_open_instance && undo_redo) { //Show buttons only when necessary(SceneTreeDock) to avoid crashes
|
||||
|
||||
if (!p_node->is_connected("script_changed", callable_mp(this, &SceneTreeEditor::_node_script_changed))) {
|
||||
p_node->connect("script_changed", callable_mp(this, &SceneTreeEditor::_node_script_changed), varray(p_node));
|
||||
p_node->connect("script_changed", callable_mp(this, &SceneTreeEditor::_node_script_changed).bind(p_node));
|
||||
}
|
||||
|
||||
Ref<Script> script = p_node->get_script();
|
||||
@ -386,7 +386,7 @@ void SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
}
|
||||
|
||||
if (!p_node->is_connected("visibility_changed", callable_mp(this, &SceneTreeEditor::_node_visibility_changed))) {
|
||||
p_node->connect("visibility_changed", callable_mp(this, &SceneTreeEditor::_node_visibility_changed), varray(p_node));
|
||||
p_node->connect("visibility_changed", callable_mp(this, &SceneTreeEditor::_node_visibility_changed).bind(p_node));
|
||||
}
|
||||
|
||||
_update_visibility_color(p_node, item);
|
||||
@ -399,7 +399,7 @@ void SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
}
|
||||
|
||||
if (!p_node->is_connected("visibility_changed", callable_mp(this, &SceneTreeEditor::_node_visibility_changed))) {
|
||||
p_node->connect("visibility_changed", callable_mp(this, &SceneTreeEditor::_node_visibility_changed), varray(p_node));
|
||||
p_node->connect("visibility_changed", callable_mp(this, &SceneTreeEditor::_node_visibility_changed).bind(p_node));
|
||||
}
|
||||
} else if (p_node->is_class("Node3D")) {
|
||||
if (p_node->has_meta("_edit_lock_")) {
|
||||
@ -418,7 +418,7 @@ void SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
}
|
||||
|
||||
if (!p_node->is_connected("visibility_changed", callable_mp(this, &SceneTreeEditor::_node_visibility_changed))) {
|
||||
p_node->connect("visibility_changed", callable_mp(this, &SceneTreeEditor::_node_visibility_changed), varray(p_node));
|
||||
p_node->connect("visibility_changed", callable_mp(this, &SceneTreeEditor::_node_visibility_changed).bind(p_node));
|
||||
}
|
||||
|
||||
_update_visibility_color(p_node, item);
|
||||
@ -733,7 +733,7 @@ void SceneTreeEditor::_notification(int p_what) {
|
||||
get_tree()->connect("tree_process_mode_changed", callable_mp(this, &SceneTreeEditor::_tree_process_mode_changed));
|
||||
get_tree()->connect("node_removed", callable_mp(this, &SceneTreeEditor::_node_removed));
|
||||
get_tree()->connect("node_renamed", callable_mp(this, &SceneTreeEditor::_node_renamed));
|
||||
get_tree()->connect("node_configuration_warning_changed", callable_mp(this, &SceneTreeEditor::_warning_changed), varray(), CONNECT_DEFERRED);
|
||||
get_tree()->connect("node_configuration_warning_changed", callable_mp(this, &SceneTreeEditor::_warning_changed), CONNECT_DEFERRED);
|
||||
|
||||
tree->connect("item_collapsed", callable_mp(this, &SceneTreeEditor::_cell_collapsed));
|
||||
|
||||
@ -1301,7 +1301,7 @@ SceneTreeEditor::SceneTreeEditor(bool p_label, bool p_can_rename, bool p_can_ope
|
||||
blocked = 0;
|
||||
|
||||
update_timer = memnew(Timer);
|
||||
update_timer->connect("timeout", callable_mp(this, &SceneTreeEditor::_update_tree), varray(false));
|
||||
update_timer->connect("timeout", callable_mp(this, &SceneTreeEditor::_update_tree).bind(false));
|
||||
update_timer->set_one_shot(true);
|
||||
update_timer->set_wait_time(0.5);
|
||||
add_child(update_timer);
|
||||
|
@ -1008,7 +1008,7 @@ ScriptCreateDialog::ScriptCreateDialog() {
|
||||
parent_search_button->connect("pressed", callable_mp(this, &ScriptCreateDialog::_browse_class_in_tree));
|
||||
hb->add_child(parent_search_button);
|
||||
parent_browse_button = memnew(Button);
|
||||
parent_browse_button->connect("pressed", callable_mp(this, &ScriptCreateDialog::_browse_path), varray(true, false));
|
||||
parent_browse_button->connect("pressed", callable_mp(this, &ScriptCreateDialog::_browse_path).bind(true, false));
|
||||
hb->add_child(parent_browse_button);
|
||||
gc->add_child(memnew(Label(TTR("Inherits:"))));
|
||||
gc->add_child(hb);
|
||||
@ -1057,7 +1057,7 @@ ScriptCreateDialog::ScriptCreateDialog() {
|
||||
file_path->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
hb->add_child(file_path);
|
||||
path_button = memnew(Button);
|
||||
path_button->connect("pressed", callable_mp(this, &ScriptCreateDialog::_browse_path), varray(false, true));
|
||||
path_button->connect("pressed", callable_mp(this, &ScriptCreateDialog::_browse_path).bind(false, true));
|
||||
hb->add_child(path_button);
|
||||
Label *label = memnew(Label(TTR("Path:")));
|
||||
gc->add_child(label);
|
||||
|
@ -479,7 +479,7 @@ ShaderGlobalsEditor::ShaderGlobalsEditor() {
|
||||
inspector->set_use_wide_editors(true);
|
||||
inspector->set_property_name_style(EditorPropertyNameProcessor::STYLE_RAW);
|
||||
inspector->set_use_deletable_properties(true);
|
||||
inspector->connect("property_deleted", callable_mp(this, &ShaderGlobalsEditor::_variable_deleted), varray(), CONNECT_DEFERRED);
|
||||
inspector->connect("property_deleted", callable_mp(this, &ShaderGlobalsEditor::_variable_deleted), CONNECT_DEFERRED);
|
||||
|
||||
interface = memnew(ShaderGlobalsEditorInterface);
|
||||
interface->connect("var_changed", Callable(this, "_changed"));
|
||||
|
@ -283,7 +283,7 @@ Variant Performance::MonitorCall::call(bool &r_error, String &r_error_message) {
|
||||
int argc = _arguments.size();
|
||||
Variant return_value;
|
||||
Callable::CallError error;
|
||||
_callable.call(args, argc, return_value, error);
|
||||
_callable.callp(args, argc, return_value, error);
|
||||
r_error = (error.error != Callable::CallError::CALL_OK);
|
||||
if (r_error) {
|
||||
r_error_message = Variant::get_callable_error_text(_callable, args, argc, error);
|
||||
|
@ -2234,7 +2234,7 @@ Variant GDScriptFunction::call(GDScriptInstance *p_instance, const Variant **p_a
|
||||
|
||||
retvalue = gdfs;
|
||||
|
||||
Error err = sig.connect(callable_bind(Callable(gdfs.ptr(), "_signal_callback"), retvalue), Object::CONNECT_ONESHOT);
|
||||
Error err = sig.connect(Callable(gdfs.ptr(), "_signal_callback").bind(retvalue), Object::CONNECT_ONESHOT);
|
||||
if (err != OK) {
|
||||
err_text = "Error connecting to signal: " + sig.get_name() + " during await.";
|
||||
OPCODE_BREAK;
|
||||
|
@ -1231,14 +1231,14 @@ GridMapEditor::GridMapEditor() {
|
||||
mode_thumbnail->set_toggle_mode(true);
|
||||
mode_thumbnail->set_pressed(true);
|
||||
hb->add_child(mode_thumbnail);
|
||||
mode_thumbnail->connect("pressed", callable_mp(this, &GridMapEditor::_set_display_mode), varray(DISPLAY_THUMBNAIL));
|
||||
mode_thumbnail->connect("pressed", callable_mp(this, &GridMapEditor::_set_display_mode).bind(DISPLAY_THUMBNAIL));
|
||||
|
||||
mode_list = memnew(Button);
|
||||
mode_list->set_flat(true);
|
||||
mode_list->set_toggle_mode(true);
|
||||
mode_list->set_pressed(false);
|
||||
hb->add_child(mode_list);
|
||||
mode_list->connect("pressed", callable_mp(this, &GridMapEditor::_set_display_mode), varray(DISPLAY_LIST));
|
||||
mode_list->connect("pressed", callable_mp(this, &GridMapEditor::_set_display_mode).bind(DISPLAY_LIST));
|
||||
|
||||
size_slider = memnew(HSlider);
|
||||
size_slider->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
|
@ -166,8 +166,8 @@ ReplicationEditor::ReplicationEditor() {
|
||||
set_custom_minimum_size(Size2(0, 200) * EDSCALE);
|
||||
|
||||
delete_dialog = memnew(ConfirmationDialog);
|
||||
delete_dialog->connect("cancelled", callable_mp(this, &ReplicationEditor::_dialog_closed), varray(false));
|
||||
delete_dialog->connect("confirmed", callable_mp(this, &ReplicationEditor::_dialog_closed), varray(true));
|
||||
delete_dialog->connect("cancelled", callable_mp(this, &ReplicationEditor::_dialog_closed).bind(false));
|
||||
delete_dialog->connect("confirmed", callable_mp(this, &ReplicationEditor::_dialog_closed).bind(true));
|
||||
add_child(delete_dialog);
|
||||
|
||||
error_dialog = memnew(AcceptDialog);
|
||||
|
@ -230,8 +230,8 @@ void MultiplayerSpawner::_track(Node *p_node, const Variant &p_argument, int p_s
|
||||
ObjectID oid = p_node->get_instance_id();
|
||||
if (!tracked_nodes.has(oid)) {
|
||||
tracked_nodes[oid] = SpawnInfo(p_argument.duplicate(true), p_scene_id);
|
||||
p_node->connect(SceneStringNames::get_singleton()->tree_exiting, callable_mp(this, &MultiplayerSpawner::_node_exit), varray(p_node->get_instance_id()), CONNECT_ONESHOT);
|
||||
p_node->connect(SceneStringNames::get_singleton()->ready, callable_mp(this, &MultiplayerSpawner::_node_ready), varray(p_node->get_instance_id()), CONNECT_ONESHOT);
|
||||
p_node->connect(SceneStringNames::get_singleton()->tree_exiting, callable_mp(this, &MultiplayerSpawner::_node_exit).bind(p_node->get_instance_id()), CONNECT_ONESHOT);
|
||||
p_node->connect(SceneStringNames::get_singleton()->ready, callable_mp(this, &MultiplayerSpawner::_node_ready).bind(p_node->get_instance_id()), CONNECT_ONESHOT);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -138,7 +138,7 @@ bool MultiplayerSynchronizer::is_visible_to(int p_peer) {
|
||||
for (Callable filter : visibility_filters) {
|
||||
Variant ret;
|
||||
Callable::CallError err;
|
||||
filter.call(argv, 1, ret, err);
|
||||
filter.callp(argv, 1, ret, err);
|
||||
ERR_FAIL_COND_V(err.error != Callable::CallError::CALL_OK || ret.get_type() != Variant::BOOL, false);
|
||||
if (!ret.operator bool()) {
|
||||
return false;
|
||||
|
@ -128,7 +128,7 @@ Error SceneReplicationInterface::on_replication_start(Object *p_obj, Variant p_c
|
||||
// Add to synchronizer list and setup visibility.
|
||||
rep_state->config_add_sync(node, sync);
|
||||
const ObjectID oid = node->get_instance_id();
|
||||
sync->connect("visibility_changed", callable_mp(this, &SceneReplicationInterface::_visibility_changed), varray(oid));
|
||||
sync->connect("visibility_changed", callable_mp(this, &SceneReplicationInterface::_visibility_changed).bind(oid));
|
||||
if (multiplayer->has_multiplayer_peer() && sync->is_multiplayer_authority()) {
|
||||
_update_sync_visibility(0, oid);
|
||||
}
|
||||
|
@ -39,7 +39,7 @@ SceneReplicationState::TrackedNode &SceneReplicationState::_track(const ObjectID
|
||||
if (!tracked_nodes.has(p_id)) {
|
||||
tracked_nodes[p_id] = TrackedNode(p_id);
|
||||
Node *node = Object::cast_to<Node>(ObjectDB::get_instance(p_id));
|
||||
node->connect(SceneStringNames::get_singleton()->tree_exited, callable_mp(this, &SceneReplicationState::_untrack), varray(p_id), Node::CONNECT_ONESHOT);
|
||||
node->connect(SceneStringNames::get_singleton()->tree_exited, callable_mp(this, &SceneReplicationState::_untrack).bind(p_id), Node::CONNECT_ONESHOT);
|
||||
}
|
||||
return tracked_nodes[p_id];
|
||||
}
|
||||
|
@ -169,9 +169,7 @@ void OpenXRInteractionProfileEditor::_add_io_path(VBoxContainer *p_container, co
|
||||
Button *path_add = memnew(Button);
|
||||
path_add->set_icon(get_theme_icon(SNAME("Add"), SNAME("EditorIcons")));
|
||||
path_add->set_flat(true);
|
||||
Vector<Variant> add_binds;
|
||||
add_binds.push_back(String(p_io_path->openxr_path));
|
||||
path_add->connect("pressed", callable_mp(this, &OpenXRInteractionProfileEditor::select_action_for), add_binds);
|
||||
path_add->connect("pressed", callable_mp(this, &OpenXRInteractionProfileEditor::select_action_for).bind(String(p_io_path->openxr_path)));
|
||||
path_hb->add_child(path_add);
|
||||
|
||||
if (interaction_profile.is_valid()) {
|
||||
@ -198,10 +196,7 @@ void OpenXRInteractionProfileEditor::_add_io_path(VBoxContainer *p_container, co
|
||||
Button *action_rem = memnew(Button);
|
||||
action_rem->set_flat(true);
|
||||
action_rem->set_icon(get_theme_icon(SNAME("Remove"), SNAME("EditorIcons")));
|
||||
Vector<Variant> remove_binds;
|
||||
remove_binds.push_back(action->get_name_with_set());
|
||||
remove_binds.push_back(String(p_io_path->openxr_path));
|
||||
action_rem->connect("pressed", callable_mp((OpenXRInteractionProfileEditorBase *)this, &OpenXRInteractionProfileEditorBase::_remove_binding), remove_binds);
|
||||
action_rem->connect("pressed", callable_mp((OpenXRInteractionProfileEditorBase *)this, &OpenXRInteractionProfileEditorBase::_remove_binding).bind(action->get_name_with_set(), String(p_io_path->openxr_path)));
|
||||
action_hb->add_child(action_rem);
|
||||
}
|
||||
}
|
||||
|
@ -96,11 +96,9 @@ void OpenXRSelectActionDialog::open() {
|
||||
|
||||
Button *action_button = memnew(Button);
|
||||
String action_name = action->get_name_with_set();
|
||||
Vector<Variant> binds;
|
||||
binds.push_back(action_name);
|
||||
action_button->set_flat(true);
|
||||
action_button->set_text(action->get_name() + ": " + action->get_localized_name());
|
||||
action_button->connect("pressed", callable_mp(this, &OpenXRSelectActionDialog::_on_select_action), binds);
|
||||
action_button->connect("pressed", callable_mp(this, &OpenXRSelectActionDialog::_on_select_action).bind(action_name));
|
||||
action_hb->add_child(action_button);
|
||||
|
||||
action_buttons[action_name] = action_button->get_path();
|
||||
|
@ -80,11 +80,9 @@ void OpenXRSelectInteractionProfileDialog::open(PackedStringArray p_do_not_inclu
|
||||
String path = interaction_profiles[i];
|
||||
if (!p_do_not_include.has(path)) {
|
||||
Button *ip_button = memnew(Button);
|
||||
Vector<Variant> binds;
|
||||
binds.push_back(path);
|
||||
ip_button->set_flat(true);
|
||||
ip_button->set_text(OpenXRDefs::get_profile(path)->display_name);
|
||||
ip_button->connect("pressed", callable_mp(this, &OpenXRSelectInteractionProfileDialog::_on_select_interaction_profile), binds);
|
||||
ip_button->connect("pressed", callable_mp(this, &OpenXRSelectInteractionProfileDialog::_on_select_interaction_profile).bind(path));
|
||||
main_vb->add_child(ip_button);
|
||||
|
||||
ip_buttons[path] = ip_button->get_path();
|
||||
|
@ -687,8 +687,8 @@ void VisualScriptEditor::_update_graph(int p_only_id) {
|
||||
|
||||
gnode->set_meta("__vnode", node);
|
||||
gnode->set_name(itos(E));
|
||||
gnode->connect("dragged", callable_mp(this, &VisualScriptEditor::_node_moved), varray(E));
|
||||
gnode->connect("close_request", callable_mp(this, &VisualScriptEditor::_remove_node), varray(E), CONNECT_DEFERRED);
|
||||
gnode->connect("dragged", callable_mp(this, &VisualScriptEditor::_node_moved).bind(E));
|
||||
gnode->connect("close_request", callable_mp(this, &VisualScriptEditor::_remove_node).bind(E), CONNECT_DEFERRED);
|
||||
|
||||
{
|
||||
Ref<VisualScriptFunction> v = node;
|
||||
@ -708,7 +708,7 @@ void VisualScriptEditor::_update_graph(int p_only_id) {
|
||||
Button *btn = memnew(Button);
|
||||
btn->set_text(TTR("Add Input Port"));
|
||||
hbnc->add_child(btn);
|
||||
btn->connect("pressed", callable_mp(this, &VisualScriptEditor::_add_input_port), varray(E), CONNECT_DEFERRED);
|
||||
btn->connect("pressed", callable_mp(this, &VisualScriptEditor::_add_input_port).bind(E), CONNECT_DEFERRED);
|
||||
}
|
||||
if (nd_list->is_output_port_editable()) {
|
||||
if (nd_list->is_input_port_editable()) {
|
||||
@ -718,7 +718,7 @@ void VisualScriptEditor::_update_graph(int p_only_id) {
|
||||
Button *btn = memnew(Button);
|
||||
btn->set_text(TTR("Add Output Port"));
|
||||
hbnc->add_child(btn);
|
||||
btn->connect("pressed", callable_mp(this, &VisualScriptEditor::_add_output_port), varray(E), CONNECT_DEFERRED);
|
||||
btn->connect("pressed", callable_mp(this, &VisualScriptEditor::_add_output_port).bind(E), CONNECT_DEFERRED);
|
||||
}
|
||||
gnode->add_child(hbnc);
|
||||
} else if (Object::cast_to<VisualScriptExpression>(node.ptr())) {
|
||||
@ -728,7 +728,7 @@ void VisualScriptEditor::_update_graph(int p_only_id) {
|
||||
line_edit->set_expand_to_text_length_enabled(true);
|
||||
line_edit->add_theme_font_override("font", get_theme_font(SNAME("source"), SNAME("EditorFonts")));
|
||||
gnode->add_child(line_edit);
|
||||
line_edit->connect("text_changed", callable_mp(this, &VisualScriptEditor::_expression_text_changed), varray(E));
|
||||
line_edit->connect("text_changed", callable_mp(this, &VisualScriptEditor::_expression_text_changed).bind(E));
|
||||
} else {
|
||||
String text = node->get_text();
|
||||
if (!text.is_empty()) {
|
||||
@ -744,7 +744,7 @@ void VisualScriptEditor::_update_graph(int p_only_id) {
|
||||
gnode->set_comment(true);
|
||||
gnode->set_resizable(true);
|
||||
gnode->set_custom_minimum_size(vsc->get_size() * EDSCALE);
|
||||
gnode->connect("resize_request", callable_mp(this, &VisualScriptEditor::_comment_node_resized), varray(E));
|
||||
gnode->connect("resize_request", callable_mp(this, &VisualScriptEditor::_comment_node_resized).bind(E));
|
||||
}
|
||||
|
||||
if (node_styles.has(node->get_category())) {
|
||||
@ -847,8 +847,8 @@ void VisualScriptEditor::_update_graph(int p_only_id) {
|
||||
name_box->set_custom_minimum_size(Size2(60 * EDSCALE, 0));
|
||||
name_box->set_text(left_name);
|
||||
name_box->set_expand_to_text_length_enabled(true);
|
||||
name_box->connect("resized", callable_mp(this, &VisualScriptEditor::_update_node_size), varray(E));
|
||||
name_box->connect("focus_exited", callable_mp(this, &VisualScriptEditor::_port_name_focus_out), varray(name_box, E, i, true));
|
||||
name_box->connect("resized", callable_mp(this, &VisualScriptEditor::_update_node_size).bind(E));
|
||||
name_box->connect("focus_exited", callable_mp(this, &VisualScriptEditor::_port_name_focus_out).bind(name_box, E, i, true));
|
||||
} else {
|
||||
hbc->add_child(memnew(Label(left_name)));
|
||||
}
|
||||
@ -861,13 +861,13 @@ void VisualScriptEditor::_update_graph(int p_only_id) {
|
||||
opbtn->select(left_type);
|
||||
opbtn->set_custom_minimum_size(Size2(100 * EDSCALE, 0));
|
||||
hbc->add_child(opbtn);
|
||||
opbtn->connect("item_selected", callable_mp(this, &VisualScriptEditor::_change_port_type), varray(E, i, true), CONNECT_DEFERRED);
|
||||
opbtn->connect("item_selected", callable_mp(this, &VisualScriptEditor::_change_port_type).bind(E, i, true), CONNECT_DEFERRED);
|
||||
}
|
||||
|
||||
Button *rmbtn = memnew(Button);
|
||||
rmbtn->set_icon(EditorNode::get_singleton()->get_gui_base()->get_theme_icon(SNAME("Remove"), SNAME("EditorIcons")));
|
||||
hbc->add_child(rmbtn);
|
||||
rmbtn->connect("pressed", callable_mp(this, &VisualScriptEditor::_remove_input_port), varray(E, i), CONNECT_DEFERRED);
|
||||
rmbtn->connect("pressed", callable_mp(this, &VisualScriptEditor::_remove_input_port).bind(E, i), CONNECT_DEFERRED);
|
||||
} else {
|
||||
hbc->add_child(memnew(Label(left_name)));
|
||||
}
|
||||
@ -886,7 +886,7 @@ void VisualScriptEditor::_update_graph(int p_only_id) {
|
||||
|
||||
if (left_type == Variant::COLOR) {
|
||||
button->set_custom_minimum_size(Size2(30, 0) * EDSCALE);
|
||||
button->connect("draw", callable_mp(this, &VisualScriptEditor::_draw_color_over_button), varray(button, value));
|
||||
button->connect("draw", callable_mp(this, &VisualScriptEditor::_draw_color_over_button).bind(button, value));
|
||||
} else if (left_type == Variant::OBJECT && Ref<Resource>(value).is_valid()) {
|
||||
Ref<Resource> res = value;
|
||||
Array arr;
|
||||
@ -941,7 +941,7 @@ void VisualScriptEditor::_update_graph(int p_only_id) {
|
||||
} else {
|
||||
button->set_text(value);
|
||||
}
|
||||
button->connect("pressed", callable_mp(this, &VisualScriptEditor::_default_value_edited), varray(button, E, i));
|
||||
button->connect("pressed", callable_mp(this, &VisualScriptEditor::_default_value_edited).bind(button, E, i));
|
||||
hbc2->add_child(button);
|
||||
}
|
||||
} else {
|
||||
@ -965,7 +965,7 @@ void VisualScriptEditor::_update_graph(int p_only_id) {
|
||||
Button *rmbtn = memnew(Button);
|
||||
rmbtn->set_icon(EditorNode::get_singleton()->get_gui_base()->get_theme_icon(SNAME("Remove"), SNAME("EditorIcons")));
|
||||
hbc->add_child(rmbtn);
|
||||
rmbtn->connect("pressed", callable_mp(this, &VisualScriptEditor::_remove_output_port), varray(E, i), CONNECT_DEFERRED);
|
||||
rmbtn->connect("pressed", callable_mp(this, &VisualScriptEditor::_remove_output_port).bind(E, i), CONNECT_DEFERRED);
|
||||
|
||||
if (nd_list->is_output_port_type_editable()) {
|
||||
OptionButton *opbtn = memnew(OptionButton);
|
||||
@ -975,7 +975,7 @@ void VisualScriptEditor::_update_graph(int p_only_id) {
|
||||
opbtn->select(right_type);
|
||||
opbtn->set_custom_minimum_size(Size2(100 * EDSCALE, 0));
|
||||
hbc->add_child(opbtn);
|
||||
opbtn->connect("item_selected", callable_mp(this, &VisualScriptEditor::_change_port_type), varray(E, i, false), CONNECT_DEFERRED);
|
||||
opbtn->connect("item_selected", callable_mp(this, &VisualScriptEditor::_change_port_type).bind(E, i, false), CONNECT_DEFERRED);
|
||||
}
|
||||
|
||||
if (nd_list->is_output_port_name_editable()) {
|
||||
@ -984,8 +984,8 @@ void VisualScriptEditor::_update_graph(int p_only_id) {
|
||||
name_box->set_custom_minimum_size(Size2(60 * EDSCALE, 0));
|
||||
name_box->set_text(right_name);
|
||||
name_box->set_expand_to_text_length_enabled(true);
|
||||
name_box->connect("resized", callable_mp(this, &VisualScriptEditor::_update_node_size), varray(E));
|
||||
name_box->connect("focus_exited", callable_mp(this, &VisualScriptEditor::_port_name_focus_out), varray(name_box, E, i, false));
|
||||
name_box->connect("resized", callable_mp(this, &VisualScriptEditor::_update_node_size).bind(E));
|
||||
name_box->connect("focus_exited", callable_mp(this, &VisualScriptEditor::_port_name_focus_out).bind(name_box, E, i, false));
|
||||
} else {
|
||||
hbc->add_child(memnew(Label(right_name)));
|
||||
}
|
||||
@ -1470,7 +1470,7 @@ void VisualScriptEditor::_add_func_input() {
|
||||
func_input_vbox->add_child(hbox);
|
||||
hbox->set_meta("id", hbox->get_index());
|
||||
|
||||
delete_button->connect("pressed", callable_mp(this, &VisualScriptEditor::_remove_func_input), varray(hbox));
|
||||
delete_button->connect("pressed", callable_mp(this, &VisualScriptEditor::_remove_func_input).bind(hbox));
|
||||
|
||||
name_box->select_all();
|
||||
name_box->grab_focus();
|
||||
@ -3988,9 +3988,9 @@ void VisualScriptEditor::_notification(int p_what) {
|
||||
|
||||
case NOTIFICATION_READY: {
|
||||
variable_editor->connect("changed", callable_mp(this, &VisualScriptEditor::_update_members));
|
||||
variable_editor->connect("changed", callable_mp(this, &VisualScriptEditor::_update_graph), varray(-1), CONNECT_DEFERRED);
|
||||
variable_editor->connect("changed", callable_mp(this, &VisualScriptEditor::_update_graph).bind(-1), CONNECT_DEFERRED);
|
||||
signal_editor->connect("changed", callable_mp(this, &VisualScriptEditor::_update_members));
|
||||
signal_editor->connect("changed", callable_mp(this, &VisualScriptEditor::_update_graph), varray(-1), CONNECT_DEFERRED);
|
||||
signal_editor->connect("changed", callable_mp(this, &VisualScriptEditor::_update_graph).bind(-1), CONNECT_DEFERRED);
|
||||
[[fallthrough]];
|
||||
}
|
||||
case NOTIFICATION_THEME_CHANGED: {
|
||||
@ -4608,7 +4608,7 @@ VisualScriptEditor::VisualScriptEditor() {
|
||||
members->set_hide_root(true);
|
||||
members->connect("button_clicked", callable_mp(this, &VisualScriptEditor::_member_button));
|
||||
members->connect("item_edited", callable_mp(this, &VisualScriptEditor::_member_edited));
|
||||
members->connect("cell_selected", callable_mp(this, &VisualScriptEditor::_member_selected), varray(), CONNECT_DEFERRED);
|
||||
members->connect("cell_selected", callable_mp(this, &VisualScriptEditor::_member_selected), CONNECT_DEFERRED);
|
||||
members->connect("gui_input", callable_mp(this, &VisualScriptEditor::_members_gui_input));
|
||||
members->connect("item_mouse_selected", callable_mp(this, &VisualScriptEditor::_member_rmb_selected));
|
||||
members->set_allow_rmb_select(true);
|
||||
|
@ -279,7 +279,7 @@ void VisualScript::add_node(int p_id, const Ref<VisualScriptNode> &p_node, const
|
||||
nd.pos = p_pos;
|
||||
|
||||
Ref<VisualScriptNode> vsn = p_node;
|
||||
vsn->connect("ports_changed", callable_mp(this, &VisualScript::_node_ports_changed), varray(p_id));
|
||||
vsn->connect("ports_changed", callable_mp(this, &VisualScript::_node_ports_changed).bind(p_id));
|
||||
vsn->script_used = Ref<VisualScript>(this);
|
||||
vsn->validate_input_default_values(); // Validate when fully loaded.
|
||||
|
||||
@ -2122,7 +2122,14 @@ void VisualScriptFunctionState::connect_to_signal(Object *p_obj, const String &p
|
||||
binds.push_back(p_binds[i]);
|
||||
}
|
||||
binds.push_back(Ref<VisualScriptFunctionState>(this)); //add myself on the back to avoid dying from unreferencing
|
||||
p_obj->connect(p_signal, Callable(this, "_signal_callback"), binds, CONNECT_ONESHOT);
|
||||
|
||||
Vector<const Variant *> bind_ptrs;
|
||||
bind_ptrs.resize(p_binds.size());
|
||||
for (int i = 0; i < bind_ptrs.size(); i++) {
|
||||
bind_ptrs.write[i] = &binds.write[i];
|
||||
}
|
||||
|
||||
p_obj->connect(p_signal, Callable(this, "_signal_callback").bindp((const Variant **)bind_ptrs.ptr(), bind_ptrs.size()), CONNECT_ONESHOT);
|
||||
}
|
||||
|
||||
bool VisualScriptFunctionState::is_valid() const {
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user