Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <gtk/gtk.h>
- #include <stdlib.h>
- #include <stdio.h>
- static GtkTargetEntry target_table[] = {
- { "text/plain", 0, 0 }
- };
- void target_drag_data_received(GtkWidget* widget, GdkDragContext* context, gint x,
- gint y, GtkSelectionData* data, guint info, guint time) {
- char* result = gtk_selection_data_get_text(data);
- printf("Data Recieved: %s\n", result);
- }
- static void activate(GtkApplication* app, gpointer user_data)
- {
- GtkWidget* window = gtk_application_window_new(app);
- gtk_window_set_title(GTK_WINDOW(window), "ByteBowl");
- gtk_window_set_default_size(GTK_WINDOW(window), 200, 200);
- gtk_drag_dest_set(window, GTK_DEST_DEFAULT_ALL, target_table, 1, GDK_ACTION_COPY);
- g_signal_connect(window, "drag_data_received", G_CALLBACK(target_drag_data_received), NULL);
- gtk_widget_show_all(window);
- }
- int main(int argc, char* argv[])
- {
- GtkApplication* app = gtk_application_new("org.gtk.bytebowl", G_APPLICATION_FLAGS_NONE);
- g_signal_connect(app, "activate", G_CALLBACK(activate), NULL);
- int status = g_application_run(G_APPLICATION(app), argc, argv);
- g_object_unref(app);
- return status;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement