Updates LineEdit's min size when necessary

These properties will affect the minimum size of LineEdit:

* The right icon (`set_right_icon`)
* The clear button (`set_editable` and `set_clear_button_enabled`)
* The text, when "expand to text length" is enabled (`set_text`)
This commit is contained in:
Haoyu Qiu 2020-01-15 09:42:06 +08:00
parent 40f0649e5b
commit 26e3b4a58a

View file

@ -1239,6 +1239,11 @@ void LineEdit::set_text(String p_text) {
clear_internal();
append_at_cursor(p_text);
if (expand_to_text_length) {
minimum_size_changed();
}
update();
cursor_pos = 0;
window_pos = 0;
@ -1482,6 +1487,7 @@ void LineEdit::set_editable(bool p_editable) {
editable = p_editable;
_generate_context_menu();
minimum_size_changed();
update();
}
@ -1617,7 +1623,11 @@ bool LineEdit::get_expand_to_text_length() const {
}
void LineEdit::set_clear_button_enabled(bool p_enabled) {
if (clear_button_enabled == p_enabled) {
return;
}
clear_button_enabled = p_enabled;
minimum_size_changed();
update();
}
@ -1653,6 +1663,7 @@ void LineEdit::set_right_icon(const Ref<Texture> &p_icon) {
return;
}
right_icon = p_icon;
minimum_size_changed();
update();
}