You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-12-03 16:55:53 +00:00
Improve auto-translation of Debugger
This commit is contained in:
@@ -155,7 +155,7 @@ void ScriptEditorDebugger::debug_continue() {
|
||||
|
||||
void ScriptEditorDebugger::update_tabs() {
|
||||
if (error_count == 0 && warning_count == 0) {
|
||||
errors_tab->set_name(TTR("Errors"));
|
||||
errors_tab->set_name(TTRC("Errors"));
|
||||
tabs->set_tab_icon(tabs->get_tab_idx_from_control(errors_tab), Ref<Texture2D>());
|
||||
} else {
|
||||
errors_tab->set_name(TTR("Errors") + " (" + itos(error_count + warning_count) + ")");
|
||||
@@ -402,7 +402,7 @@ void ScriptEditorDebugger::_msg_debug_exit(uint64_t p_thread_id, const Array &p_
|
||||
|
||||
visual_profiler->set_enabled(true);
|
||||
|
||||
_set_reason_text(TTR("Execution resumed."), MESSAGE_SUCCESS);
|
||||
_set_reason_text(TTRC("Execution resumed."), MESSAGE_SUCCESS);
|
||||
emit_signal(SNAME("breaked"), false, false, "", false);
|
||||
_mute_audio_on_break(false);
|
||||
|
||||
@@ -636,7 +636,7 @@ void ScriptEditorDebugger::_msg_error(uint64_t p_thread_id, const Array &p_data)
|
||||
|
||||
// Also provide the relevant details as tooltip to quickly check without
|
||||
// uncollapsing the tree.
|
||||
String tooltip = oe.warning ? TTR("Warning:") : TTR("Error:");
|
||||
String tooltip = oe.warning ? TTRC("Warning:") : TTRC("Error:");
|
||||
|
||||
TreeItem *error = error_tree->create_item(r);
|
||||
if (oe.warning) {
|
||||
@@ -1079,6 +1079,18 @@ void ScriptEditorDebugger::_notification(int p_what) {
|
||||
connect("started", callable_mp(expression_evaluator, &EditorExpressionEvaluator::on_start));
|
||||
} break;
|
||||
|
||||
case NOTIFICATION_TRANSLATION_CHANGED: {
|
||||
if (is_ready()) {
|
||||
for (TreeItem *file_item = breakpoints_tree->get_root()->get_first_child(); file_item; file_item = file_item->get_next()) {
|
||||
for (TreeItem *breakpoint_item = file_item->get_first_child(); breakpoint_item; breakpoint_item = breakpoint_item->get_next()) {
|
||||
int line = breakpoint_item->get_meta("line");
|
||||
breakpoint_item->set_text(0, vformat(TTR("Line %d"), line));
|
||||
}
|
||||
}
|
||||
update_tabs();
|
||||
}
|
||||
} break;
|
||||
|
||||
case NOTIFICATION_THEME_CHANGED: {
|
||||
tabs->add_theme_style_override(SceneStringName(panel), get_theme_stylebox(SNAME("DebuggerPanel"), EditorStringName(EditorStyles)));
|
||||
|
||||
@@ -1243,7 +1255,7 @@ void ScriptEditorDebugger::start(Ref<RemoteDebuggerPeer> p_peer) {
|
||||
set_process(true);
|
||||
camera_override = CameraOverride::OVERRIDE_NONE;
|
||||
|
||||
_set_reason_text(TTR("Debug session started."), MESSAGE_SUCCESS);
|
||||
_set_reason_text(TTRC("Debug session started."), MESSAGE_SUCCESS);
|
||||
_update_buttons_state();
|
||||
|
||||
Array quit_keys = DebuggerMarshalls::serialize_key_shortcut(ED_GET_SHORTCUT("editor/stop_running_project"));
|
||||
@@ -1298,7 +1310,7 @@ void ScriptEditorDebugger::_update_buttons_state() {
|
||||
void ScriptEditorDebugger::_stop_and_notify() {
|
||||
stop();
|
||||
emit_signal(SNAME("stopped"));
|
||||
_set_reason_text(TTR("Debug session closed."), MESSAGE_WARNING);
|
||||
_set_reason_text(TTRC("Debug session closed."), MESSAGE_WARNING);
|
||||
}
|
||||
|
||||
void ScriptEditorDebugger::stop() {
|
||||
@@ -1842,11 +1854,12 @@ void ScriptEditorDebugger::_breakpoints_item_rmb_selected(const Vector2 &p_pos,
|
||||
const TreeItem *selected = breakpoints_tree->get_selected();
|
||||
String file = selected->get_text(0);
|
||||
if (selected->has_meta("line")) {
|
||||
breakpoints_menu->add_icon_item(get_editor_theme_icon(SNAME("Remove")), TTR("Delete Breakpoint"), ACTION_DELETE_BREAKPOINT);
|
||||
breakpoints_menu->add_icon_item(get_editor_theme_icon(SNAME("Remove")), TTRC("Delete Breakpoint"), ACTION_DELETE_BREAKPOINT);
|
||||
file = selected->get_parent()->get_text(0);
|
||||
}
|
||||
breakpoints_menu->add_icon_item(get_editor_theme_icon(SNAME("Remove")), TTR("Delete All Breakpoints in:") + " " + file, ACTION_DELETE_BREAKPOINTS_IN_FILE);
|
||||
breakpoints_menu->add_icon_item(get_editor_theme_icon(SNAME("Remove")), TTR("Delete All Breakpoints"), ACTION_DELETE_ALL_BREAKPOINTS);
|
||||
breakpoints_menu->set_item_auto_translate_mode(-1, AUTO_TRANSLATE_MODE_DISABLED);
|
||||
breakpoints_menu->add_icon_item(get_editor_theme_icon(SNAME("Remove")), TTRC("Delete All Breakpoints"), ACTION_DELETE_ALL_BREAKPOINTS);
|
||||
|
||||
breakpoints_menu->set_position(get_screen_position() + get_local_mouse_position());
|
||||
breakpoints_menu->popup();
|
||||
@@ -1862,8 +1875,8 @@ void ScriptEditorDebugger::_error_tree_item_rmb_selected(const Vector2 &p_pos, M
|
||||
item_menu->reset_size();
|
||||
|
||||
if (error_tree->is_anything_selected()) {
|
||||
item_menu->add_icon_item(get_editor_theme_icon(SNAME("ActionCopy")), TTR("Copy Error"), ACTION_COPY_ERROR);
|
||||
item_menu->add_icon_item(get_editor_theme_icon(SNAME("ExternalLink")), TTR("Open C++ Source on GitHub"), ACTION_OPEN_SOURCE);
|
||||
item_menu->add_icon_item(get_editor_theme_icon(SNAME("ActionCopy")), TTRC("Copy Error"), ACTION_COPY_ERROR);
|
||||
item_menu->add_icon_item(get_editor_theme_icon(SNAME("ExternalLink")), TTRC("Open C++ Source on GitHub"), ACTION_OPEN_SOURCE);
|
||||
}
|
||||
|
||||
if (item_menu->get_item_count() > 0) {
|
||||
@@ -1962,7 +1975,7 @@ void ScriptEditorDebugger::_item_menu_id_pressed(int p_option) {
|
||||
}
|
||||
|
||||
void ScriptEditorDebugger::_tab_changed(int p_tab) {
|
||||
if (tabs->get_tab_title(p_tab) == TTR("Video RAM")) {
|
||||
if (tabs->get_tab_title(p_tab) == "Video RAM") {
|
||||
// "Video RAM" tab was clicked, refresh the data it's displaying when entering the tab.
|
||||
_video_mem_request();
|
||||
}
|
||||
@@ -2044,9 +2057,9 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
InspectorDock::get_inspector_singleton()->connect("object_id_selected", callable_mp(this, &ScriptEditorDebugger::_remote_object_selected));
|
||||
EditorFileSystem::get_singleton()->connect("resources_reimported", callable_mp(this, &ScriptEditorDebugger::_resources_reimported));
|
||||
|
||||
{ //debugger
|
||||
{ // Debugger.
|
||||
VBoxContainer *vbc = memnew(VBoxContainer);
|
||||
vbc->set_name(TTR("Stack Trace"));
|
||||
vbc->set_name(TTRC("Stack Trace"));
|
||||
Control *dbg = vbc;
|
||||
|
||||
HBoxContainer *hbc = memnew(HBoxContainer);
|
||||
@@ -2066,12 +2079,12 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
skip_breakpoints = memnew(Button);
|
||||
skip_breakpoints->set_theme_type_variation(SceneStringName(FlatButton));
|
||||
hbc->add_child(skip_breakpoints);
|
||||
skip_breakpoints->set_tooltip_text(TTR("Skip Breakpoints"));
|
||||
skip_breakpoints->set_tooltip_text(TTRC("Skip Breakpoints"));
|
||||
skip_breakpoints->connect(SceneStringName(pressed), callable_mp(this, &ScriptEditorDebugger::debug_skip_breakpoints));
|
||||
|
||||
ignore_error_breaks = memnew(Button);
|
||||
ignore_error_breaks->set_theme_type_variation(SceneStringName(FlatButton));
|
||||
ignore_error_breaks->set_tooltip_text(TTR("Ignore Error Breaks"));
|
||||
ignore_error_breaks->set_tooltip_text(TTRC("Ignore Error Breaks"));
|
||||
hbc->add_child(ignore_error_breaks);
|
||||
ignore_error_breaks->connect(SceneStringName(pressed), callable_mp(this, &ScriptEditorDebugger::debug_ignore_error_breaks));
|
||||
|
||||
@@ -2080,7 +2093,7 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
copy = memnew(Button);
|
||||
copy->set_theme_type_variation(SceneStringName(FlatButton));
|
||||
hbc->add_child(copy);
|
||||
copy->set_tooltip_text(TTR("Copy Error"));
|
||||
copy->set_tooltip_text(TTRC("Copy Error"));
|
||||
copy->connect(SceneStringName(pressed), callable_mp(this, &ScriptEditorDebugger::debug_copy));
|
||||
|
||||
hbc->add_child(memnew(VSeparator));
|
||||
@@ -2088,14 +2101,14 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
step = memnew(Button);
|
||||
step->set_theme_type_variation(SceneStringName(FlatButton));
|
||||
hbc->add_child(step);
|
||||
step->set_tooltip_text(TTR("Step Into"));
|
||||
step->set_tooltip_text(TTRC("Step Into"));
|
||||
step->set_shortcut(ED_GET_SHORTCUT("debugger/step_into"));
|
||||
step->connect(SceneStringName(pressed), callable_mp(this, &ScriptEditorDebugger::debug_step));
|
||||
|
||||
next = memnew(Button);
|
||||
next->set_theme_type_variation(SceneStringName(FlatButton));
|
||||
hbc->add_child(next);
|
||||
next->set_tooltip_text(TTR("Step Over"));
|
||||
next->set_tooltip_text(TTRC("Step Over"));
|
||||
next->set_shortcut(ED_GET_SHORTCUT("debugger/step_over"));
|
||||
next->connect(SceneStringName(pressed), callable_mp(this, &ScriptEditorDebugger::debug_next));
|
||||
|
||||
@@ -2111,14 +2124,14 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
dobreak = memnew(Button);
|
||||
dobreak->set_theme_type_variation(SceneStringName(FlatButton));
|
||||
hbc->add_child(dobreak);
|
||||
dobreak->set_tooltip_text(TTR("Break"));
|
||||
dobreak->set_tooltip_text(TTRC("Break"));
|
||||
dobreak->set_shortcut(ED_GET_SHORTCUT("debugger/break"));
|
||||
dobreak->connect(SceneStringName(pressed), callable_mp(this, &ScriptEditorDebugger::debug_break));
|
||||
|
||||
docontinue = memnew(Button);
|
||||
docontinue->set_theme_type_variation(SceneStringName(FlatButton));
|
||||
hbc->add_child(docontinue);
|
||||
docontinue->set_tooltip_text(TTR("Continue"));
|
||||
docontinue->set_tooltip_text(TTRC("Continue"));
|
||||
docontinue->set_shortcut(ED_GET_SHORTCUT("debugger/continue"));
|
||||
docontinue->connect(SceneStringName(pressed), callable_mp(this, &ScriptEditorDebugger::debug_continue));
|
||||
|
||||
@@ -2137,7 +2150,7 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
sc->add_child(stack_vb);
|
||||
HBoxContainer *thread_hb = memnew(HBoxContainer);
|
||||
stack_vb->add_child(thread_hb);
|
||||
thread_hb->add_child(memnew(Label(TTR("Thread:"))));
|
||||
thread_hb->add_child(memnew(Label(TTRC("Thread:"))));
|
||||
threads = memnew(OptionButton);
|
||||
thread_hb->add_child(threads);
|
||||
threads->set_auto_translate_mode(AUTO_TRANSLATE_MODE_DISABLED);
|
||||
@@ -2149,7 +2162,7 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
stack_dump->set_allow_reselect(true);
|
||||
stack_dump->set_columns(1);
|
||||
stack_dump->set_column_titles_visible(true);
|
||||
stack_dump->set_column_title(0, TTR("Stack Frames"));
|
||||
stack_dump->set_column_title(0, TTRC("Stack Frames"));
|
||||
stack_dump->set_hide_root(true);
|
||||
stack_dump->set_v_size_flags(SIZE_EXPAND_FILL);
|
||||
stack_dump->set_theme_type_variation("TreeSecondary");
|
||||
@@ -2166,7 +2179,7 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
|
||||
search = memnew(LineEdit);
|
||||
search->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
search->set_placeholder(TTR("Filter Stack Variables"));
|
||||
search->set_placeholder(TTRC("Filter Stack Variables"));
|
||||
search->set_accessibility_name(TTRC("Filter Stack Variables"));
|
||||
search->set_clear_button_enabled(true);
|
||||
tools_hb->add_child(search);
|
||||
@@ -2187,7 +2200,7 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
breakpoints_tree->set_custom_minimum_size(Size2(100, 0) * EDSCALE);
|
||||
breakpoints_tree->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
breakpoints_tree->set_column_titles_visible(true);
|
||||
breakpoints_tree->set_column_title(0, TTR("Breakpoints"));
|
||||
breakpoints_tree->set_column_title(0, TTRC("Breakpoints"));
|
||||
breakpoints_tree->set_allow_reselect(true);
|
||||
breakpoints_tree->set_allow_rmb_select(true);
|
||||
breakpoints_tree->set_hide_root(true);
|
||||
@@ -2203,21 +2216,21 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
breakpoints_tree->add_child(breakpoints_menu);
|
||||
}
|
||||
|
||||
{ //errors
|
||||
{ // Errors.
|
||||
errors_tab = memnew(VBoxContainer);
|
||||
errors_tab->set_name(TTR("Errors"));
|
||||
errors_tab->set_name(TTRC("Errors"));
|
||||
|
||||
HBoxContainer *error_hbox = memnew(HBoxContainer);
|
||||
errors_tab->add_child(error_hbox);
|
||||
|
||||
expand_all_button = memnew(Button);
|
||||
expand_all_button->set_text(TTR("Expand All"));
|
||||
expand_all_button->set_text(TTRC("Expand All"));
|
||||
expand_all_button->set_disabled(true);
|
||||
expand_all_button->connect(SceneStringName(pressed), callable_mp(this, &ScriptEditorDebugger::_expand_errors_list));
|
||||
error_hbox->add_child(expand_all_button);
|
||||
|
||||
collapse_all_button = memnew(Button);
|
||||
collapse_all_button->set_text(TTR("Collapse All"));
|
||||
collapse_all_button->set_text(TTRC("Collapse All"));
|
||||
collapse_all_button->set_disabled(true);
|
||||
collapse_all_button->connect(SceneStringName(pressed), callable_mp(this, &ScriptEditorDebugger::_collapse_errors_list));
|
||||
error_hbox->add_child(collapse_all_button);
|
||||
@@ -2227,7 +2240,7 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
error_hbox->add_child(space);
|
||||
|
||||
clear_button = memnew(Button);
|
||||
clear_button->set_text(TTR("Clear"));
|
||||
clear_button->set_text(TTRC("Clear"));
|
||||
clear_button->set_h_size_flags(0);
|
||||
clear_button->set_disabled(true);
|
||||
clear_button->connect(SceneStringName(pressed), callable_mp(this, &ScriptEditorDebugger::_clear_errors_list));
|
||||
@@ -2267,14 +2280,14 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
|
||||
{ // Expression evaluator
|
||||
expression_evaluator = memnew(EditorExpressionEvaluator);
|
||||
expression_evaluator->set_name(TTR("Evaluator"));
|
||||
expression_evaluator->set_name(TTRC("Evaluator"));
|
||||
expression_evaluator->set_editor_debugger(this);
|
||||
tabs->add_child(expression_evaluator);
|
||||
}
|
||||
|
||||
{ //profiler
|
||||
profiler = memnew(EditorProfiler);
|
||||
profiler->set_name(TTR("Profiler"));
|
||||
profiler->set_name(TTRC("Profiler"));
|
||||
tabs->add_child(profiler);
|
||||
profiler->connect("enable_profiling", callable_mp(this, &ScriptEditorDebugger::_profiler_activate).bind(PROFILER_SCRIPTS_SERVERS));
|
||||
profiler->connect("break_request", callable_mp(this, &ScriptEditorDebugger::_profiler_seeked));
|
||||
@@ -2282,7 +2295,7 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
|
||||
{ //frame profiler
|
||||
visual_profiler = memnew(EditorVisualProfiler);
|
||||
visual_profiler->set_name(TTR("Visual Profiler"));
|
||||
visual_profiler->set_name(TTRC("Visual Profiler"));
|
||||
tabs->add_child(visual_profiler);
|
||||
visual_profiler->connect("enable_profiling", callable_mp(this, &ScriptEditorDebugger::_profiler_activate).bind(PROFILER_VISUAL));
|
||||
}
|
||||
@@ -2305,7 +2318,7 @@ ScriptEditorDebugger::ScriptEditorDebugger() {
|
||||
vmem_notice_icon->set_stretch_mode(TextureRect::STRETCH_KEEP_CENTERED);
|
||||
vmem_notice_icon->set_h_size_flags(SIZE_SHRINK_CENTER);
|
||||
vmem_notice_icon->set_visible(true);
|
||||
vmem_notice_icon->set_tooltip_text(TTR(R"(Notice:
|
||||
vmem_notice_icon->set_tooltip_text(TTRC(R"(Notice:
|
||||
This tool only reports memory allocations tracked by the engine.
|
||||
Therefore, total VRAM usage is inaccurate compared to what the Monitors tab or external tools can report.
|
||||
Instead, use the monitors tab to obtain more precise VRAM usage.
|
||||
@@ -2321,7 +2334,7 @@ Instead, use the monitors tab to obtain more precise VRAM usage.
|
||||
vmem_hb->add_child(space);
|
||||
}
|
||||
|
||||
vmem_hb->add_child(memnew(Label(TTR("Total:") + " ")));
|
||||
vmem_hb->add_child(memnew(Label(TTRC("Total:"))));
|
||||
vmem_total = memnew(LineEdit);
|
||||
vmem_total->set_editable(false);
|
||||
vmem_total->set_accessibility_name(TTRC("Video RAM Total"));
|
||||
@@ -2333,7 +2346,7 @@ Instead, use the monitors tab to obtain more precise VRAM usage.
|
||||
vmem_hb->add_child(vmem_refresh);
|
||||
vmem_export = memnew(Button);
|
||||
vmem_export->set_theme_type_variation(SceneStringName(FlatButton));
|
||||
vmem_export->set_tooltip_text(TTR("Export list to a CSV file"));
|
||||
vmem_export->set_tooltip_text(TTRC("Export list to a CSV file"));
|
||||
vmem_hb->add_child(vmem_export);
|
||||
vmem_vb->add_child(vmem_hb);
|
||||
vmem_refresh->connect(SceneStringName(pressed), callable_mp(this, &ScriptEditorDebugger::_video_mem_request));
|
||||
@@ -2347,19 +2360,19 @@ Instead, use the monitors tab to obtain more precise VRAM usage.
|
||||
vmmc->set_v_size_flags(SIZE_EXPAND_FILL);
|
||||
vmem_vb->add_child(vmmc);
|
||||
|
||||
vmem_vb->set_name(TTR("Video RAM"));
|
||||
vmem_vb->set_name(TTRC("Video RAM"));
|
||||
vmem_tree->set_columns(4);
|
||||
vmem_tree->set_column_titles_visible(true);
|
||||
vmem_tree->set_column_title(0, TTR("Resource Path"));
|
||||
vmem_tree->set_column_title(0, TTRC("Resource Path"));
|
||||
vmem_tree->set_column_expand(0, true);
|
||||
vmem_tree->set_column_expand(1, false);
|
||||
vmem_tree->set_column_title(1, TTR("Type"));
|
||||
vmem_tree->set_column_title(1, TTRC("Type"));
|
||||
vmem_tree->set_column_custom_minimum_width(1, 100 * EDSCALE);
|
||||
vmem_tree->set_column_expand(2, false);
|
||||
vmem_tree->set_column_title(2, TTR("Format"));
|
||||
vmem_tree->set_column_title(2, TTRC("Format"));
|
||||
vmem_tree->set_column_custom_minimum_width(2, 150 * EDSCALE);
|
||||
vmem_tree->set_column_expand(3, false);
|
||||
vmem_tree->set_column_title(3, TTR("Usage"));
|
||||
vmem_tree->set_column_title(3, TTRC("Usage"));
|
||||
vmem_tree->set_column_custom_minimum_width(3, 80 * EDSCALE);
|
||||
vmem_tree->set_hide_root(true);
|
||||
vmem_tree->connect("item_activated", callable_mp(this, &ScriptEditorDebugger::_vmem_item_activated));
|
||||
@@ -2369,7 +2382,7 @@ Instead, use the monitors tab to obtain more precise VRAM usage.
|
||||
|
||||
{ // misc
|
||||
VBoxContainer *misc = memnew(VBoxContainer);
|
||||
misc->set_name(TTR("Misc"));
|
||||
misc->set_name(TTRC("Misc"));
|
||||
tabs->add_child(misc);
|
||||
|
||||
GridContainer *info_left = memnew(GridContainer);
|
||||
@@ -2379,12 +2392,12 @@ Instead, use the monitors tab to obtain more precise VRAM usage.
|
||||
clicked_ctrl->set_editable(false);
|
||||
clicked_ctrl->set_accessibility_name(TTRC("Clicked Control:"));
|
||||
clicked_ctrl->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
info_left->add_child(memnew(Label(TTR("Clicked Control:"))));
|
||||
info_left->add_child(memnew(Label(TTRC("Clicked Control:"))));
|
||||
info_left->add_child(clicked_ctrl);
|
||||
clicked_ctrl_type = memnew(LineEdit);
|
||||
clicked_ctrl_type->set_editable(false);
|
||||
clicked_ctrl_type->set_accessibility_name(TTRC("Clicked Control Type:"));
|
||||
info_left->add_child(memnew(Label(TTR("Clicked Control Type:"))));
|
||||
info_left->add_child(memnew(Label(TTRC("Clicked Control Type:"))));
|
||||
info_left->add_child(clicked_ctrl_type);
|
||||
|
||||
scene_tree = memnew(SceneDebuggerTree);
|
||||
@@ -2395,12 +2408,12 @@ Instead, use the monitors tab to obtain more precise VRAM usage.
|
||||
|
||||
{
|
||||
HBoxContainer *lehb = memnew(HBoxContainer);
|
||||
Label *l = memnew(Label(TTR("Live Edit Root:")));
|
||||
Label *l = memnew(Label(TTRC("Live Edit Root:")));
|
||||
info_left->add_child(l);
|
||||
lehb->add_child(live_edit_root);
|
||||
le_set = memnew(Button(TTR("Set From Tree")));
|
||||
le_set = memnew(Button(TTRC("Set From Tree")));
|
||||
lehb->add_child(le_set);
|
||||
le_clear = memnew(Button(TTR("Clear")));
|
||||
le_clear = memnew(Button(TTRC("Clear")));
|
||||
lehb->add_child(le_clear);
|
||||
info_left->add_child(lehb);
|
||||
}
|
||||
@@ -2409,7 +2422,7 @@ Instead, use the monitors tab to obtain more precise VRAM usage.
|
||||
|
||||
HBoxContainer *buttons = memnew(HBoxContainer);
|
||||
|
||||
export_csv = memnew(Button(TTR("Export measures as CSV")));
|
||||
export_csv = memnew(Button(TTRC("Export measures as CSV")));
|
||||
export_csv->connect(SceneStringName(pressed), callable_mp(this, &ScriptEditorDebugger::_export_csv));
|
||||
buttons->add_child(export_csv);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user