You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-05 12:10:55 +00:00
Remove Signal connect binds
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind(). Changed all uses of it to Callable.bind()
This commit is contained in:
@@ -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);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user