MCPcopy Create free account
hub / github.com/Redot-Engine/redot-engine / ProjectExportDialog

Method ProjectExportDialog

editor/export/project_export.cpp:1441–1873  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1439}
1440
1441ProjectExportDialog::ProjectExportDialog() {
1442 set_title(TTR("Export"));
1443 set_clamp_to_embedder(true);
1444
1445 VBoxContainer *main_vb = memnew(VBoxContainer);
1446 add_child(main_vb);
1447
1448 HSplitContainer *hbox = memnew(HSplitContainer);
1449 main_vb->add_child(hbox);
1450 hbox->set_v_size_flags(Control::SIZE_EXPAND_FILL);
1451 if (EDITOR_GET("interface/touchscreen/enable_touch_optimizations")) {
1452 hbox->set_touch_dragger_enabled(true);
1453 }
1454
1455 // Presets list.
1456
1457 VBoxContainer *preset_vb = memnew(VBoxContainer);
1458 preset_vb->set_h_size_flags(Control::SIZE_EXPAND_FILL);
1459 hbox->add_child(preset_vb);
1460
1461 Label *l = memnew(Label(TTR("Presets")));
1462 l->set_theme_type_variation("HeaderSmall");
1463
1464 HBoxContainer *preset_hb = memnew(HBoxContainer);
1465 preset_hb->add_child(l);
1466 preset_hb->add_spacer();
1467 preset_vb->add_child(preset_hb);
1468
1469 add_preset = memnew(MenuButton);
1470 add_preset->set_text(TTR("Add..."));
1471 add_preset->get_popup()->connect("index_pressed", callable_mp(this, &ProjectExportDialog::_add_preset));
1472 preset_hb->add_child(add_preset);
1473 MarginContainer *mc = memnew(MarginContainer);
1474 preset_vb->add_child(mc);
1475 mc->set_v_size_flags(Control::SIZE_EXPAND_FILL);
1476 presets = memnew(ItemList);
1477 presets->set_theme_type_variation("ItemListSecondary");
1478 presets->set_auto_translate_mode(AUTO_TRANSLATE_MODE_DISABLED);
1479 SET_DRAG_FORWARDING_GCD(presets, ProjectExportDialog);
1480 mc->add_child(presets);
1481 presets->connect(SceneStringName(item_selected), callable_mp(this, &ProjectExportDialog::_edit_preset));
1482 duplicate_preset = memnew(Button);
1483 duplicate_preset->set_tooltip_text(TTR("Duplicate"));
1484 duplicate_preset->set_flat(true);
1485 preset_hb->add_child(duplicate_preset);
1486 duplicate_preset->connect(SceneStringName(pressed), callable_mp(this, &ProjectExportDialog::_duplicate_preset));
1487 delete_preset = memnew(Button);
1488 delete_preset->set_tooltip_text(TTR("Delete"));
1489 delete_preset->set_flat(true);
1490 preset_hb->add_child(delete_preset);
1491 delete_preset->connect(SceneStringName(pressed), callable_mp(this, &ProjectExportDialog::_delete_preset));
1492
1493 // Preset settings.
1494
1495 VBoxContainer *settings_vb = memnew(VBoxContainer);
1496 settings_vb->set_h_size_flags(Control::SIZE_EXPAND_FILL);
1497 hbox->add_child(settings_vb);
1498

Callers

nothing calls this directly

Calls 15

TTRFunction · 0.85
has_methodFunction · 0.85
set_v_size_flagsMethod · 0.80
set_h_size_flagsMethod · 0.80
add_spacerMethod · 0.80
add_margin_childMethod · 0.80
set_save_modeMethod · 0.80
set_mark_unsavedMethod · 0.80

Tested by

no test coverage detected