static void on_send_widget_to_shell_activate(GtkWidget *menuitem, ParasiteWindow *parasite) { GtkWidget *widget = parasite_widget_tree_get_selected_widget( PARASITE_WIDGET_TREE(parasite->widget_tree)); if (widget != NULL) { char *str = g_strdup_printf("parasite.gobj(%p)", widget); parasite_python_shell_append_text( PARASITE_PYTHON_SHELL(parasite->python_shell), str, NULL); g_free(str); parasite_python_shell_focus(PARASITE_PYTHON_SHELL(parasite->python_shell)); } }
static void on_send_action_to_shell_activate(GtkWidget *menuitem, ParasiteWindow *parasite) { gpointer selection = parasite_actionlist_get_selected_object( PARASITE_ACTIONLIST(parasite->action_list)); if (selection != NULL) { char *str = g_strdup_printf("parasite.gobj(%p)", selection); parasite_python_shell_append_text( PARASITE_PYTHON_SHELL(parasite->python_shell), str, NULL); g_free(str); parasite_python_shell_focus(PARASITE_PYTHON_SHELL(parasite->python_shell)); } }
static void setup_python_console(void) { GtkWidget *vbox; GtkWidget *console; python_console = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_widget_set_size_request(python_console, 600, 400); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(python_console), vbox); console = parasite_python_shell_new(); gtk_box_pack_start(GTK_BOX(vbox), console, TRUE, TRUE, 0); g_signal_connect(python_console, "delete-event", G_CALLBACK(python_console_delete_event), NULL); gtk_widget_show_all(python_console); parasite_python_shell_focus(PARASITE_PYTHON_SHELL(console)); }