static void add_string_to_grid_sensitive(GtkWidget *grid, guint *row, const gchar *title, const gchar *value, gboolean sensitive) { GtkWidget *label; gchar *indent; if(strlen(value) != 0) { indent = g_strdup_printf(" %s", title); } else { indent = g_strdup(title); } label = gtk_label_new(indent); if (strlen(value) == 0) { gchar *message = g_strdup_printf("<span weight=\"bold\">%s</span>", title); gtk_label_set_markup(GTK_LABEL(label), message); g_free (message); } g_free(indent); gtk_misc_set_alignment(GTK_MISC(label), 0.0f, 0.5f); gtk_widget_set_sensitive(label, sensitive); ws_gtk_grid_attach_defaults(GTK_GRID(grid), label, 0, *row, 1, 1); label = gtk_label_new(value); gtk_misc_set_alignment(GTK_MISC(label), 0.0f, 0.5f); gtk_widget_set_sensitive(label, sensitive); ws_gtk_grid_attach_defaults(GTK_GRID(grid), label, 1, *row, 1, 1); *row = *row + 1; }
static void rpcprogs_init_grid(GtkWidget *grid_parent) { GtkWidget *tmp; grid = ws_gtk_grid_new(); ws_gtk_grid_set_homogeneous(GTK_GRID(grid), TRUE); gtk_container_add(GTK_CONTAINER(grid_parent), grid); tmp = gtk_label_new("Program"); ws_gtk_grid_attach_defaults(GTK_GRID(grid), tmp, 0, 0, 1, 1); gtk_label_set_justify(GTK_LABEL(tmp), GTK_JUSTIFY_LEFT); tmp = gtk_label_new("Version"); ws_gtk_grid_attach_defaults(GTK_GRID(grid), tmp, 1, 0, 1, 1); gtk_label_set_justify(GTK_LABEL(tmp), GTK_JUSTIFY_RIGHT); tmp = gtk_label_new("Calls"); ws_gtk_grid_attach_defaults(GTK_GRID(grid), tmp, 2, 0, 1, 1); gtk_label_set_justify(GTK_LABEL(tmp), GTK_JUSTIFY_RIGHT); tmp = gtk_label_new("Min SRT"); ws_gtk_grid_attach_defaults(GTK_GRID(grid), tmp, 3, 0, 1, 1); gtk_label_set_justify(GTK_LABEL(tmp), GTK_JUSTIFY_RIGHT); tmp = gtk_label_new("Max SRT"); ws_gtk_grid_attach_defaults(GTK_GRID(grid), tmp, 4, 0, 1, 1); gtk_label_set_justify(GTK_LABEL(tmp), GTK_JUSTIFY_RIGHT); tmp = gtk_label_new("Avg SRT"); ws_gtk_grid_attach_defaults(GTK_GRID(grid), tmp, 5, 0, 1, 1); gtk_label_set_justify(GTK_LABEL(tmp), GTK_JUSTIFY_RIGHT); }