diff options
author | akshay-c | 2019-01-18 16:25:30 +0530 |
---|---|---|
committer | akshay-c | 2019-01-18 16:25:30 +0530 |
commit | c41c6cc508d94d97eed40ad8efd4b8dfd4a105f6 (patch) | |
tree | a098e5fe96b68a705b1602413f56a3e05f732acd /ldmicro/lutdialog.cpp | |
parent | 252f21ab1f1639a1e936fe0e7b77975b40a0df7a (diff) | |
download | LDMicroGtk-c41c6cc508d94d97eed40ad8efd4b8dfd4a105f6.tar.gz LDMicroGtk-c41c6cc508d94d97eed40ad8efd4b8dfd4a105f6.tar.bz2 LDMicroGtk-c41c6cc508d94d97eed40ad8efd4b8dfd4a105f6.zip |
Refined close for timers, close defined for other dialogs
Diffstat (limited to 'ldmicro/lutdialog.cpp')
-rw-r--r-- | ldmicro/lutdialog.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/ldmicro/lutdialog.cpp b/ldmicro/lutdialog.cpp index 04e7684..1bfe8c5 100644 --- a/ldmicro/lutdialog.cpp +++ b/ldmicro/lutdialog.cpp @@ -86,6 +86,24 @@ void LutDialogMyNumberProc (GtkEditable *editable, gchar *NewText, gint length, } } +gboolean LutDialogClosing(GtkWidget *widget, GdkEvent *event, gpointer user_data) +{ + DestroyWindow (LutDialog); + ProgramChanged(); + gtk_widget_set_sensitive (MainWindow, TRUE); + g_source_remove (LUT_DIALOG_REFRESH_TIMER_ID_1); + LUT_DIALOG_REFRESH_TIMER_ID_1 = 0; +} + +gboolean LutDialogDestroyed(GtkWidget *widget, GdkEvent *event, gpointer user_data) +{ + DestroyWindow (LutDialog); + ProgramChanged(); + gtk_widget_set_sensitive (MainWindow, TRUE); + g_source_remove (LUT_DIALOG_REFRESH_TIMER_ID_1); + LUT_DIALOG_REFRESH_TIMER_ID_1 = 0; +} + //----------------------------------------------------------------------------- // Don't allow any characters other than 0-9 in the count. //----------------------------------------------------------------------------- @@ -571,6 +589,8 @@ void ShowLookUpTableDialog(ElemLeaf *l) G_CALLBACK(LutDialogOk), (gpointer)l); g_signal_connect (G_OBJECT (CancelButton), "clicked", G_CALLBACK(LutCallCancel), NULL); + g_signal_connect (LutDialog, "destroy_event", G_CALLBACK (LutDialogClosing), NULL); + g_signal_connect (LutDialog, "delete_event", G_CALLBACK (LutDialogDestroyed), NULL); if (LUT_DIALOG_REFRESH_TIMER_ID_1 == 0) LUT_DIALOG_REFRESH_TIMER_ID_1 = g_timeout_add(100, (GSourceFunc)LutDialogRefresh, (gpointer)l); |