All pastes #129914 Raw Edit

arvind_evo

public text v1 · immutable
#129914 ·published 2006-08-13 20:13 UTC
rendered paste body
#include<gtk/gtk.h>

gboolean delete_event(GtkWidget * w, GdkEvent * e, gpointer data)
{
gtk_main_quit();
return FALSE;
}

void mycall (GtkWidget * w , GdkEvent * e, GtkWidget *user_data)
{
GtkTextBuffer * buffer;
GtkTextIter *start_it,*end_it;

/*if(user_data)g_print("text view is null\n");
else g_print("text view is not null\n");*/

buffer=gtk_text_view_get_buffer(GTK_TEXT_VIEW(user_data));
gtk_text_buffer_get_start_iter(GTK_TEXT_BUFFER(buffer),start_it);
gtk_text_buffer_get_end_iter(GTK_TEXT_BUFFER(buffer),end_it);
g_print("%s\n",gtk_text_buffer_get_text(buffer,start_it,end_it,FALSE));

}

int main(int argc, char *argv[])
{
GtkWidget *window;
GtkWidget *textview,*button,*vbox;

gtk_init (&argc, &argv);

window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size(GTK_WINDOW(window),400,300);
g_signal_connect(G_OBJECT(window),"delete_event",G_CALLBACK(delete_event),NULL);
  
vbox=gtk_vbox_new(FALSE,0);

button=gtk_button_new_with_label("Click me");
gtk_box_pack_start(GTK_BOX(vbox),button,FALSE,FALSE,0);
gtk_widget_show(button);

textview=gtk_text_view_new ();
gtk_widget_show (textview);
gtk_box_pack_start(GTK_BOX(vbox),textview,TRUE,TRUE,0);

g_signal_connect(G_OBJECT(button),"clicked",G_CALLBACK(mycall),textview);

gtk_container_add (GTK_CONTAINER (window), vbox);
gtk_widget_show(vbox);

gtk_widget_show(window);

gtk_main ();
return 0;

}