Replace String comparisons with "", String() to is_empty()
Also: - Adds two stress tests to test_string.h - Changes to .empty() on std::strings
This commit is contained in:
@ -80,7 +80,7 @@ Size2 PopupMenu::_get_contents_minimum_size() const {
|
||||
accel_max_w = MAX(accel_w, accel_max_w);
|
||||
}
|
||||
|
||||
if (items[i].submenu != "") {
|
||||
if (!items[i].submenu.is_empty()) {
|
||||
size.width += get_theme_icon(SNAME("submenu"))->get_width();
|
||||
}
|
||||
|
||||
@ -326,13 +326,13 @@ void PopupMenu::gui_input(const Ref<InputEvent> &p_event) {
|
||||
set_input_as_handled();
|
||||
}
|
||||
} else if (p_event->is_action("ui_right") && p_event->is_pressed()) {
|
||||
if (mouse_over >= 0 && mouse_over < items.size() && !items[mouse_over].separator && items[mouse_over].submenu != "" && submenu_over != mouse_over) {
|
||||
if (mouse_over >= 0 && mouse_over < items.size() && !!items[mouse_over].separator && items[mouse_over].submenu.is_empty() && submenu_over != mouse_over) {
|
||||
_activate_submenu(mouse_over);
|
||||
set_input_as_handled();
|
||||
}
|
||||
} else if (p_event->is_action("ui_accept") && p_event->is_pressed()) {
|
||||
if (mouse_over >= 0 && mouse_over < items.size() && !items[mouse_over].separator) {
|
||||
if (items[mouse_over].submenu != "" && submenu_over != mouse_over) {
|
||||
if (!items[mouse_over].submenu.is_empty() && submenu_over != mouse_over) {
|
||||
_activate_submenu(mouse_over);
|
||||
} else {
|
||||
activate_item(mouse_over);
|
||||
@ -387,7 +387,7 @@ void PopupMenu::gui_input(const Ref<InputEvent> &p_event) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (items[over].submenu != "") {
|
||||
if (!items[over].submenu.is_empty()) {
|
||||
_activate_submenu(over);
|
||||
return;
|
||||
}
|
||||
@ -419,7 +419,7 @@ void PopupMenu::gui_input(const Ref<InputEvent> &p_event) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (items[over].submenu != "" && submenu_over != over) {
|
||||
if (!items[over].submenu.is_empty() && submenu_over != over) {
|
||||
submenu_over = over;
|
||||
submenu_timer->start();
|
||||
}
|
||||
@ -558,7 +558,7 @@ void PopupMenu::_draw_items() {
|
||||
if (items[i].separator) {
|
||||
int sep_h = separator->get_center_size().height + separator->get_minimum_size().height;
|
||||
int sep_ofs = Math::floor((h - sep_h) / 2.0);
|
||||
if (text != String()) {
|
||||
if (!text.is_empty()) {
|
||||
int text_size = items[i].text_buf->get_size().width;
|
||||
int text_center = display_width / 2;
|
||||
int text_left = text_center - text_size / 2;
|
||||
@ -599,7 +599,7 @@ void PopupMenu::_draw_items() {
|
||||
}
|
||||
|
||||
// Submenu arrow on right hand side
|
||||
if (items[i].submenu != "") {
|
||||
if (!items[i].submenu.is_empty()) {
|
||||
if (rtl) {
|
||||
submenu->draw(ci, Point2(scroll_width + style->get_margin(SIDE_LEFT) + item_end_padding, item_ofs.y + Math::floor(h - submenu->get_height()) / 2), icon_color);
|
||||
} else {
|
||||
@ -611,7 +611,7 @@ void PopupMenu::_draw_items() {
|
||||
Color font_outline_color = get_theme_color(SNAME("font_outline_color"));
|
||||
int outline_size = get_theme_constant(SNAME("outline_size"));
|
||||
if (items[i].separator) {
|
||||
if (text != String()) {
|
||||
if (!text.is_empty()) {
|
||||
int center = (display_width - items[i].text_buf->get_size().width) / 2;
|
||||
Vector2 text_pos = Point2(center, item_ofs.y + Math::floor((h - items[i].text_buf->get_size().y) / 2.0));
|
||||
if (outline_size > 0 && font_outline_color.a > 0) {
|
||||
@ -701,7 +701,7 @@ void PopupMenu::_shape_item(int p_item) {
|
||||
} else {
|
||||
items.write[p_item].text_buf->set_direction((TextServer::Direction)items[p_item].text_direction);
|
||||
}
|
||||
items.write[p_item].text_buf->add_string(items.write[p_item].xl_text, font, font_size, items[p_item].opentype_features, (items[p_item].language != "") ? items[p_item].language : TranslationServer::get_singleton()->get_tool_locale());
|
||||
items.write[p_item].text_buf->add_string(items.write[p_item].xl_text, font, font_size, items[p_item].opentype_features, !items[p_item].language.is_empty() ? items[p_item].language : TranslationServer::get_singleton()->get_tool_locale());
|
||||
|
||||
items.write[p_item].accel_text_buf->clear();
|
||||
items.write[p_item].accel_text_buf->set_direction(is_layout_rtl() ? TextServer::DIRECTION_RTL : TextServer::DIRECTION_LTR);
|
||||
@ -736,7 +736,7 @@ void PopupMenu::_notification(int p_what) {
|
||||
grab_focus();
|
||||
} break;
|
||||
case NOTIFICATION_WM_MOUSE_EXIT: {
|
||||
if (mouse_over >= 0 && (items[mouse_over].submenu == "" || submenu_over != -1)) {
|
||||
if (mouse_over >= 0 && (items[mouse_over].submenu.is_empty() || submenu_over != -1)) {
|
||||
mouse_over = -1;
|
||||
control->update();
|
||||
}
|
||||
@ -769,7 +769,7 @@ void PopupMenu::_notification(int p_what) {
|
||||
}
|
||||
|
||||
for (int i = 0; i < items.size(); i++) {
|
||||
if (items[i].submenu == "") {
|
||||
if (items[i].submenu.is_empty()) {
|
||||
continue;
|
||||
}
|
||||
|
||||
@ -1323,7 +1323,7 @@ bool PopupMenu::activate_item_by_event(const Ref<InputEvent> &p_event, bool p_fo
|
||||
return true;
|
||||
}
|
||||
|
||||
if (items[i].submenu != "") {
|
||||
if (!items[i].submenu.is_empty()) {
|
||||
Node *n = get_node(items[i].submenu);
|
||||
if (!n) {
|
||||
continue;
|
||||
@ -1412,7 +1412,7 @@ void PopupMenu::add_separator(const String &p_text, int p_id) {
|
||||
Item sep;
|
||||
sep.separator = true;
|
||||
sep.id = p_id;
|
||||
if (p_text != String()) {
|
||||
if (!p_text.is_empty()) {
|
||||
sep.text = p_text;
|
||||
sep.xl_text = atr(p_text);
|
||||
}
|
||||
@ -1510,7 +1510,7 @@ void PopupMenu::set_parent_rect(const Rect2 &p_rect) {
|
||||
|
||||
void PopupMenu::get_translatable_strings(List<String> *p_strings) const {
|
||||
for (int i = 0; i < items.size(); i++) {
|
||||
if (items[i].xl_text != "") {
|
||||
if (!items[i].xl_text.is_empty()) {
|
||||
p_strings->push_back(items[i].xl_text);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user