Skip to content

Instantly share code, notes, and snippets.

@thiagoarrais
Created March 4, 2009 13:38
Show Gist options
  • Save thiagoarrais/73839 to your computer and use it in GitHub Desktop.
Save thiagoarrais/73839 to your computer and use it in GitHub Desktop.
#include <gtk/gtk.h>
#include <pango/pango.h>
#include <vte/vte.h>
static gboolean delete_event( GtkWidget *widget,
GdkEvent *event,
gpointer data )
{
return FALSE;
}
static void destroy( GtkWidget *widget,
gpointer data )
{
gtk_main_quit ();
}
static void line_received(VteTerminal *terminal,
gchar *text,
gpointer data)
{
vte_terminal_begin_app_output(terminal);
vte_terminal_feed(terminal, text, strlen(text));
vte_terminal_feed(terminal, "\r\n", 2);
vte_terminal_finish_app_output(terminal);
}
int main( int argc,
char *argv[] )
{
GtkWidget *window;
int child_pid;
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
VteTerminal *terminal = g_object_new(VTE_TYPE_TERMINAL, NULL);
g_signal_connect (G_OBJECT (terminal), "line-received",
G_CALLBACK (line_received), NULL);
g_signal_connect (G_OBJECT (window), "delete_event",
G_CALLBACK (delete_event), NULL);
g_signal_connect (G_OBJECT (window), "destroy",
G_CALLBACK (destroy), NULL);
gtk_container_add(GTK_CONTAINER(window), terminal);
gtk_widget_show(GTK_WIDGET(terminal));
gtk_widget_show(window);
gtk_main();
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment