MCPcopy Create free account
hub / github.com/HandBrake/HandBrake / preset_save_as_response_cb

Function preset_save_as_response_cb

gtk/src/presets.c:2530–2569  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2528}
2529
2530static void
2531preset_save_as_response_cb (GtkDialog *dialog, int response,
2532 signal_user_data_t *ud)
2533{
2534 GtkEditable *entry;
2535
2536 entry = GTK_EDITABLE(ghb_builder_widget("PresetName"));
2537
2538 if (response == GTK_RESPONSE_OK)
2539 {
2540 const char *name = gtk_editable_get_text(entry);
2541 const char *category = ghb_dict_get_string(ud->settings, "PresetCategory");
2542 if (!g_strcmp0(category, "new"))
2543 {
2544 entry = GTK_EDITABLE(ghb_builder_widget("PresetCategoryName"));
2545 category = gtk_editable_get_text(entry);
2546 }
2547
2548 if (preset_exists(category, name))
2549 {
2550 GtkMessageDialog *overwrite = ghb_question_dialog_new(GTK_WINDOW(dialog),
2551 GHB_ACTION_DESTRUCTIVE,
2552 _("Overwrite"), _("Cancel"),
2553 _("Overwrite Preset?"),
2554 _("The preset “%s” already exists. Do you want to overwrite it?"),
2555 name);
2556 g_signal_connect(overwrite, "response", G_CALLBACK(preset_save_as_write_cb), dialog);
2557 gtk_widget_set_visible(GTK_WIDGET(overwrite), TRUE);
2558 }
2559 else
2560 {
2561 preset_save_as_write_cb(NULL, GTK_RESPONSE_ACCEPT, dialog);
2562 }
2563 }
2564 else
2565 {
2566 g_signal_handlers_disconnect_by_data(dialog, ud);
2567 gtk_widget_set_visible(GTK_WIDGET(dialog), FALSE);
2568 }
2569}
2570
2571
2572G_MODULE_EXPORT void

Callers

nothing calls this directly

Calls 5

ghb_builder_widgetFunction · 0.85
ghb_dict_get_stringFunction · 0.85
preset_existsFunction · 0.85
ghb_question_dialog_newFunction · 0.85
preset_save_as_write_cbFunction · 0.85

Tested by

no test coverage detected