mirror of https://github.com/godotengine/godot
Add get_connetion_count function to GraphEdit
This commit is contained in:
parent
682c5c7d49
commit
95ca0aa7ad
|
|
@ -181,6 +181,14 @@
|
||||||
[/codeblocks]
|
[/codeblocks]
|
||||||
</description>
|
</description>
|
||||||
</method>
|
</method>
|
||||||
|
<method name="get_connection_count">
|
||||||
|
<return type="int" />
|
||||||
|
<param index="0" name="from_node" type="StringName" />
|
||||||
|
<param index="1" name="from_port" type="int" />
|
||||||
|
<description>
|
||||||
|
Returns the number of connections from [param from_port] of [param from_node].
|
||||||
|
</description>
|
||||||
|
</method>
|
||||||
<method name="get_connection_line" qualifiers="const">
|
<method name="get_connection_line" qualifiers="const">
|
||||||
<return type="PackedVector2Array" />
|
<return type="PackedVector2Array" />
|
||||||
<param index="0" name="from_node" type="Vector2" />
|
<param index="0" name="from_node" type="Vector2" />
|
||||||
|
|
|
||||||
|
|
@ -337,6 +337,16 @@ const List<Ref<GraphEdit::Connection>> &GraphEdit::get_connection_list() const {
|
||||||
return connections;
|
return connections;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int GraphEdit::get_connection_count(const StringName &p_node, int p_port) {
|
||||||
|
int count = 0;
|
||||||
|
for (const Ref<Connection> &conn : connections) {
|
||||||
|
if ((conn->from_node == p_node && conn->from_port == p_port) || (conn->to_node == p_node && conn->to_port == p_port)) {
|
||||||
|
count += 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return count;
|
||||||
|
}
|
||||||
|
|
||||||
void GraphEdit::set_scroll_offset(const Vector2 &p_offset) {
|
void GraphEdit::set_scroll_offset(const Vector2 &p_offset) {
|
||||||
setting_scroll_offset = true;
|
setting_scroll_offset = true;
|
||||||
h_scrollbar->set_value(p_offset.x);
|
h_scrollbar->set_value(p_offset.x);
|
||||||
|
|
@ -2640,6 +2650,7 @@ void GraphEdit::_bind_methods() {
|
||||||
ClassDB::bind_method(D_METHOD("disconnect_node", "from_node", "from_port", "to_node", "to_port"), &GraphEdit::disconnect_node);
|
ClassDB::bind_method(D_METHOD("disconnect_node", "from_node", "from_port", "to_node", "to_port"), &GraphEdit::disconnect_node);
|
||||||
ClassDB::bind_method(D_METHOD("set_connection_activity", "from_node", "from_port", "to_node", "to_port", "amount"), &GraphEdit::set_connection_activity);
|
ClassDB::bind_method(D_METHOD("set_connection_activity", "from_node", "from_port", "to_node", "to_port", "amount"), &GraphEdit::set_connection_activity);
|
||||||
ClassDB::bind_method(D_METHOD("get_connection_list"), &GraphEdit::_get_connection_list);
|
ClassDB::bind_method(D_METHOD("get_connection_list"), &GraphEdit::_get_connection_list);
|
||||||
|
ClassDB::bind_method(D_METHOD("get_connection_count", "from_node", "from_port"), &GraphEdit::get_connection_count);
|
||||||
ClassDB::bind_method(D_METHOD("get_closest_connection_at_point", "point", "max_distance"), &GraphEdit::_get_closest_connection_at_point, DEFVAL(4.0));
|
ClassDB::bind_method(D_METHOD("get_closest_connection_at_point", "point", "max_distance"), &GraphEdit::_get_closest_connection_at_point, DEFVAL(4.0));
|
||||||
ClassDB::bind_method(D_METHOD("get_connections_intersecting_with_rect", "rect"), &GraphEdit::_get_connections_intersecting_with_rect);
|
ClassDB::bind_method(D_METHOD("get_connections_intersecting_with_rect", "rect"), &GraphEdit::_get_connections_intersecting_with_rect);
|
||||||
ClassDB::bind_method(D_METHOD("clear_connections"), &GraphEdit::clear_connections);
|
ClassDB::bind_method(D_METHOD("clear_connections"), &GraphEdit::clear_connections);
|
||||||
|
|
|
||||||
|
|
@ -399,6 +399,7 @@ public:
|
||||||
// Connection related methods.
|
// Connection related methods.
|
||||||
Error connect_node(const StringName &p_from, int p_from_port, const StringName &p_to, int p_to_port);
|
Error connect_node(const StringName &p_from, int p_from_port, const StringName &p_to, int p_to_port);
|
||||||
bool is_node_connected(const StringName &p_from, int p_from_port, const StringName &p_to, int p_to_port);
|
bool is_node_connected(const StringName &p_from, int p_from_port, const StringName &p_to, int p_to_port);
|
||||||
|
int get_connection_count(const StringName &p_node, int p_port);
|
||||||
void disconnect_node(const StringName &p_from, int p_from_port, const StringName &p_to, int p_to_port);
|
void disconnect_node(const StringName &p_from, int p_from_port, const StringName &p_to, int p_to_port);
|
||||||
void clear_connections();
|
void clear_connections();
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue