[gtranslator/dl-integration: 13/18] dl-integration: Error message dialog



commit cbbd1281530916fe44a24fe369d57ef9b099a87c
Author: Teja Cetinski <teja cetinski eu>
Date:   Wed Feb 20 19:35:48 2019 +0100

    dl-integration: Error message dialog
    
    Show a dialog with the error when fetching teams and modules JSONs.

 src/gtr-dl-teams.c | 24 ++++++++++++++++++++----
 1 file changed, 20 insertions(+), 4 deletions(-)
---
diff --git a/src/gtr-dl-teams.c b/src/gtr-dl-teams.c
index f9f689fb..dfc0d5c1 100644
--- a/src/gtr-dl-teams.c
+++ b/src/gtr-dl-teams.c
@@ -108,13 +108,21 @@ gtr_dl_teams_parse_teams_json (GObject *object,
   GtrDlTeams *widget = GTR_DL_TEAMS (user_data);
   GtrDlTeamsPrivate *priv = gtr_dl_teams_get_instance_private (widget);
 
+  GtkWidget *dialog;
+
   /* Parse JSON */
   stream = soup_session_send_finish (SOUP_SESSION (object), result, &error);
 
   if (error)
     {
-      // todo: display text in UI
-      //printf("error! code: %d, message: %s\n", error->code, error->message);
+      dialog = gtk_message_dialog_new (GTK_WINDOW (priv->main_window),
+                                             GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
+                                             GTK_MESSAGE_WARNING,
+                                             GTK_BUTTONS_CLOSE,
+                                             "%s",
+                                             error->message);
+      gtk_dialog_run (GTK_DIALOG (dialog));
+      gtk_widget_destroy (dialog);
       return;
     }
 
@@ -227,12 +235,20 @@ gtr_dl_teams_parse_modules_json (GObject *object,
   GtrDlTeams *widget = GTR_DL_TEAMS (user_data);
   GtrDlTeamsPrivate *priv = gtr_dl_teams_get_instance_private (widget);
 
+  GtkWidget *dialog;
+
   /* Parse JSON */
   stream = soup_session_send_finish (SOUP_SESSION (object), result, &error);
   if (error)
     {
-      // todo: display text in UI
-      //printf("error! code: %d, message: %s\n", error->code, error->message);
+      dialog = gtk_message_dialog_new (GTK_WINDOW (priv->main_window),
+                                             GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
+                                             GTK_MESSAGE_WARNING,
+                                             GTK_BUTTONS_CLOSE,
+                                             "%s",
+                                             error->message);
+      gtk_dialog_run (GTK_DIALOG (dialog));
+      gtk_widget_destroy (dialog);
       return;
     }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]