Constants
---------------------------------------------------------------------------- */
-// NB: when changing order of the columns also update the gtk_list_store_new() call
-// in gtk_assert_dialog_create_backtrace_list_model() function
+/*
+ NB: when changing order of the columns also update the gtk_list_store_new() call
+ in gtk_assert_dialog_create_backtrace_list_model() function
+ */
#define STACKFRAME_LEVEL_COLIDX 0
#define FUNCTION_NAME_COLIDX 1
#define SOURCE_FILE_COLIDX 2
/* create list store */
store = gtk_list_store_new (5,
- G_TYPE_UINT, // stack frame number
- G_TYPE_STRING, // function name
- G_TYPE_STRING, // source file name
- G_TYPE_STRING, // line number
- G_TYPE_STRING); // function arguments
+ G_TYPE_UINT, /* stack frame number */
+ G_TYPE_STRING, /* function name */
+ G_TYPE_STRING, /* source file name */
+ G_TYPE_STRING, /* line number */
+ G_TYPE_STRING); /* function arguments */
/* create the tree view */
treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL(store));
g_object_unref (store);
gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE);
- // append columns
+ /* append columns */
gtk_assert_dialog_append_text_column(treeview, "#", STACKFRAME_LEVEL_COLIDX);
gtk_assert_dialog_append_text_column(treeview, "Function name", FUNCTION_NAME_COLIDX);
gtk_assert_dialog_append_text_column(treeview, "Function args", FUNCTION_ARGS_COLIDX);
GtkAssertDialog signal handlers
---------------------------------------------------------------------------- */
-#if GTK_CHECK_VERSION(2,4,0) // GtkFileChooserDialog and GtkExpander
- // are only available in GTK+ >= 2.4
+/* GtkFileChooserDialog and GtkExpander are only available in GTK+ >= 2.4 */
+#if GTK_CHECK_VERSION(2,4,0)
void gtk_assert_dialog_expander_callback (GtkWidget *widget, GtkAssertDialog *dlg)
{
- // for some reason we need to invert the return value of gtk_expander_get_expanded
- // to get the real expanded status
+ /* status is not yet updated so we need to invert it to get the new one */
gboolean expanded = !gtk_expander_get_expanded (GTK_EXPANDER(dlg->expander));
gtk_window_set_resizable (GTK_WINDOW (dlg), expanded);
FILE *fp;
filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog));
- msg = gtk_assert_dialog_get_message (dlg);
- backtrace = gtk_assert_dialog_get_backtrace (dlg);
-
- /* open the file and write all info inside it */
- fp = fopen (filename, "w");
- if (fp && filename)
- fprintf (fp, "ASSERT INFO:\n%s\n\nBACKTRACE:\n%s", msg, backtrace);
-
- g_free (filename);
- g_free (msg);
- g_free (backtrace);
- fclose (fp);
+ if ( filename )
+ {
+ msg = gtk_assert_dialog_get_message (dlg);
+ backtrace = gtk_assert_dialog_get_backtrace (dlg);
+
+ /* open the file and write all info inside it */
+ fp = fopen (filename, "w");
+ if (fp)
+ {
+ fprintf (fp, "ASSERT INFO:\n%s\n\nBACKTRACE:\n%s", msg, backtrace);
+ fclose (fp);
+ }
+
+ g_free (filename);
+ g_free (msg);
+ g_free (backtrace);
+ }
}
gtk_widget_destroy (dialog);
}
-#endif
+#endif /* GTK+ 2.4+ */
void gtk_assert_dialog_copy_callback (GtkWidget *widget, GtkAssertDialog *dlg)
{
if (!assert_dialog_type)
{
- static const GTypeInfo assert_dialog_info =
+ const GTypeInfo assert_dialog_info =
{
sizeof (GtkAssertDialogClass),
NULL, /* base_init */
else
#endif
{
- // if GtkExpander is unavailable, then use a static frame instead
+ /* if GtkExpander is unavailable, then use a static frame instead */
dlg->expander = gtk_frame_new ("Back_trace:");
gtk_box_pack_start (GTK_BOX(vbox), dlg->expander, TRUE, TRUE, 0);
}
/* add the stop button */
gtk_assert_dialog_add_button (dlg, "_Stop", GTK_STOCK_QUIT, GTK_ASSERT_DIALOG_STOP);
- gtk_dialog_set_default_response (GTK_DIALOG (dlg), GTK_ASSERT_DIALOG_CONTINUE);
/* add the continue button */
continuebtn = gtk_assert_dialog_add_button (dlg, "_Continue", GTK_STOCK_YES, GTK_ASSERT_DIALOG_CONTINUE);
+ gtk_dialog_set_default_response (GTK_DIALOG (dlg), GTK_ASSERT_DIALOG_CONTINUE);
g_signal_connect (continuebtn, "clicked", G_CALLBACK(gtk_assert_dialog_continue_callback), dlg);
/* complete creation */
if (gtk_check_version (2, 4, 0))
{
- // we need to immediately process the stack trace as we're not using
- // an expander since GTK does not support it
+ /* we need to immediately process the stack trace as we're not using
+ an expander since GTK does not support it */
gtk_assert_dialog_process_backtrace (assertdlg);
}
}