|
@@ -300,6 +300,7 @@ void BaseButton::set_toggle_mode(bool p_on) {
|
|
}
|
|
}
|
|
|
|
|
|
toggle_mode = p_on;
|
|
toggle_mode = p_on;
|
|
|
|
+ update_configuration_warnings();
|
|
}
|
|
}
|
|
|
|
|
|
bool BaseButton::is_toggle_mode() const {
|
|
bool BaseButton::is_toggle_mode() const {
|
|
@@ -381,6 +382,7 @@ void BaseButton::set_button_group(const Ref<ButtonGroup> &p_group) {
|
|
}
|
|
}
|
|
|
|
|
|
queue_redraw(); //checkbox changes to radio if set a buttongroup
|
|
queue_redraw(); //checkbox changes to radio if set a buttongroup
|
|
|
|
+ update_configuration_warnings();
|
|
}
|
|
}
|
|
|
|
|
|
Ref<ButtonGroup> BaseButton::get_button_group() const {
|
|
Ref<ButtonGroup> BaseButton::get_button_group() const {
|
|
@@ -399,6 +401,16 @@ bool BaseButton::is_shortcut_feedback() const {
|
|
return shortcut_feedback;
|
|
return shortcut_feedback;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+PackedStringArray BaseButton::get_configuration_warnings() const {
|
|
|
|
+ PackedStringArray warnings = Control::get_configuration_warnings();
|
|
|
|
+
|
|
|
|
+ if (get_button_group().is_valid() && !is_toggle_mode()) {
|
|
|
|
+ warnings.push_back(RTR("ButtonGroup is intended to be used only with buttons that have toggle_mode set to true."));
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return warnings;
|
|
|
|
+}
|
|
|
|
+
|
|
void BaseButton::_bind_methods() {
|
|
void BaseButton::_bind_methods() {
|
|
ClassDB::bind_method(D_METHOD("set_pressed", "pressed"), &BaseButton::set_pressed);
|
|
ClassDB::bind_method(D_METHOD("set_pressed", "pressed"), &BaseButton::set_pressed);
|
|
ClassDB::bind_method(D_METHOD("is_pressed"), &BaseButton::is_pressed);
|
|
ClassDB::bind_method(D_METHOD("is_pressed"), &BaseButton::is_pressed);
|