Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <gtk/gtk.h>
- GtkWidget *scrolled_window;
- void addTimer(GtkWidget *widget, gpointer data)
- {
- GObject *mainBox;
- GtkWidget *timer;
- GtkWidget *btn;
- timer = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 3);
- btn = gtk_button_new_with_label("gtk_box_pack");
- gtk_container_add (GTK_CONTAINER (scrolled_window), (GtkWidget *)data);
- gtk_box_pack_start((GtkBox *)data, btn, TRUE, TRUE, 3);
- gtk_widget_show(btn);
- g_print("New thing should be added...\n");
- }
- int main(int argc, char **argv)
- {
- GtkBuilder *builder;
- GtkWidget *window;
- GObject *button;
- GtkWidget *mainBox;
- GtkWidget *header;
- GtkWidget *btn;
- GError *error = NULL;
- gtk_init(&argc, &argv);
- // add header:
- header = gtk_header_bar_new();
- gtk_header_bar_set_title(GTK_HEADER_BAR(header), "Timers");
- /* Construct a GtkBuilder instance and load our UI description */
- builder = gtk_builder_new();
- if (gtk_builder_add_from_file(builder, "timers.glade", &error) == 0)
- {
- g_printerr("Error loading file: %s\n", error->message);
- g_clear_error(&error);
- return 1;
- }
- btn = gtk_button_new_with_label("+ New Timer");
- window = (GtkWidget *)gtk_builder_get_object(builder, "window");
- scrolled_window = gtk_scrolled_window_new(NULL, NULL);
- gtk_container_set_border_width (GTK_CONTAINER (scrolled_window), 10);
- mainBox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 5);
- /* And add it to the scrolled window */
- gtk_container_add (GTK_CONTAINER (scrolled_window), mainBox);
- gtk_header_bar_pack_start(GTK_HEADER_BAR(header), btn);
- gtk_window_set_titlebar (GTK_WINDOW(window), header);
- //gtk_box_pack_start((GtkBox *)mainBox, header, FALSE, TRUE, 3);
- gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window),
- GTK_POLICY_AUTOMATIC,
- GTK_POLICY_AUTOMATIC);
- gtk_container_add(GTK_CONTAINER(window), scrolled_window);
- g_signal_connect(window, "destroy", G_CALLBACK (gtk_main_quit), NULL);
- gtk_widget_show_all(window);
- g_signal_connect(btn, "clicked", G_CALLBACK(addTimer), mainBox);
- gtk_main();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement