瀏覽代碼

Added function get_signals_connected_to_this_this()
should help properly implement #5058

Juan Linietsky 9 年之前
父節點
當前提交
85f4f39279
共有 2 個文件被更改,包括 8 次插入0 次删除
  1. 7 0
      core/object.cpp
  2. 1 0
      core/object.h

+ 7 - 0
core/object.cpp

@@ -1401,6 +1401,13 @@ bool Object::has_persistent_signal_connections() const {
 	return false;
 }
 
+void Object::get_signals_connected_to_this(List<Connection> *p_connections) const {
+
+    for (const List<Connection>::Element *E=connections.front();E;E=E->next()) {
+        p_connections->push_back(E->get());
+    }
+}
+
 
 Error Object::connect(const StringName& p_signal, Object *p_to_object, const StringName& p_to_method,const Vector<Variant>& p_binds,uint32_t p_flags) {
 

+ 1 - 0
core/object.h

@@ -605,6 +605,7 @@ public:
 	void get_signal_connection_list(const StringName& p_signal,List<Connection> *p_connections) const;
 	void get_all_signal_connections(List<Connection> *p_connections) const;
 	bool has_persistent_signal_connections() const;
+    void get_signals_connected_to_this(List<Connection> *p_connections) const;
 
 	Error connect(const StringName& p_signal, Object *p_to_object, const StringName& p_to_method,const Vector<Variant>& p_binds=Vector<Variant>(),uint32_t p_flags=0);
 	void disconnect(const StringName& p_signal, Object *p_to_object, const StringName& p_to_method);