From e75e26da92424528e190a2111acfcc49c657e894 Mon Sep 17 00:00:00 2001 From: rtk0c Date: Mon, 29 Mar 2021 19:14:07 -0700 Subject: Replace Dialog.hpp with portable-file-dialogs, more work on projects --- core/src/Utils/Dialog/Dialog_linux.cpp | 83 ---------------------------------- 1 file changed, 83 deletions(-) delete mode 100644 core/src/Utils/Dialog/Dialog_linux.cpp (limited to 'core/src/Utils/Dialog/Dialog_linux.cpp') diff --git a/core/src/Utils/Dialog/Dialog_linux.cpp b/core/src/Utils/Dialog/Dialog_linux.cpp deleted file mode 100644 index 11c3cee..0000000 --- a/core/src/Utils/Dialog/Dialog_linux.cpp +++ /dev/null @@ -1,83 +0,0 @@ -// Adapted from https://github.com/aaronmjacobs/Boxer/blob/master/src/boxer_linux.cpp -#include "Dialog.hpp" - -#include - -namespace Dialog { -namespace { - - GtkMessageType GetMessageType(Style style) { - switch (style) { - case Style::Info: - return GTK_MESSAGE_INFO; - case Style::Warning: - return GTK_MESSAGE_WARNING; - case Style::Error: - return GTK_MESSAGE_ERROR; - case Style::Question: - return GTK_MESSAGE_QUESTION; - default: - return GTK_MESSAGE_INFO; - } - } - - GtkButtonsType GetButtonsType(Buttons buttons) { - switch (buttons) { - case Buttons::OK: - return GTK_BUTTONS_OK; - case Buttons::OKCancel: - return GTK_BUTTONS_OK_CANCEL; - case Buttons::YesNo: - return GTK_BUTTONS_YES_NO; - case Buttons::Quit: - return GTK_BUTTONS_CLOSE; - default: - return GTK_BUTTONS_OK; - } - } - - Selection getSelection(gint response) { - switch (response) { - case GTK_RESPONSE_OK: - return Selection::OK; - case GTK_RESPONSE_CANCEL: - return Selection::Cancel; - case GTK_RESPONSE_YES: - return Selection::Yes; - case GTK_RESPONSE_NO: - return Selection::No; - case GTK_RESPONSE_CLOSE: - return Selection::Quit; - default: - return Selection::None; - } - } - -} // namespace - -Selection Show(const char* message, const char* title, Style style, Buttons buttons) { - if (!gtk_init_check(0, nullptr)) { - return Selection::Error; - } - - // Create a parent window to stop gtk_dialog_run from complaining - GtkWidget* parent = gtk_window_new(GTK_WINDOW_TOPLEVEL); - - GtkWidget* dialog = gtk_message_dialog_new(GTK_WINDOW(parent), - GTK_DIALOG_MODAL, - GetMessageType(style), - GetButtonsType(buttons), - "%s", - message); - gtk_window_set_title(GTK_WINDOW(dialog), title); - Selection selection = getSelection(gtk_dialog_run(GTK_DIALOG(dialog))); - - gtk_widget_destroy(GTK_WIDGET(dialog)); - gtk_widget_destroy(GTK_WIDGET(parent)); - while (g_main_context_iteration(nullptr, false)) { - // Do nothing - } - - return selection; -} -} // namespace Dialog -- cgit v1.2.3-70-g09d2