summaryrefslogtreecommitdiff
path: root/src/nautilus-clipboard-monitor.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/nautilus-clipboard-monitor.h')
-rw-r--r--src/nautilus-clipboard-monitor.h80
1 files changed, 80 insertions, 0 deletions
diff --git a/src/nautilus-clipboard-monitor.h b/src/nautilus-clipboard-monitor.h
new file mode 100644
index 000000000..cb7a948b4
--- /dev/null
+++ b/src/nautilus-clipboard-monitor.h
@@ -0,0 +1,80 @@
+/*
+ nautilus-clipboard-monitor.h: lets you notice clipboard changes.
+
+ Copyright (C) 2004 Red Hat, Inc.
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public
+ License along with this program; if not, see <http://www.gnu.org/licenses/>.
+
+ Author: Alexander Larsson <alexl@redhat.com>
+*/
+
+#ifndef NAUTILUS_CLIPBOARD_MONITOR_H
+#define NAUTILUS_CLIPBOARD_MONITOR_H
+
+#include <gtk/gtk.h>
+
+#define NAUTILUS_TYPE_CLIPBOARD_MONITOR nautilus_clipboard_monitor_get_type()
+#define NAUTILUS_CLIPBOARD_MONITOR(obj) \
+ (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_CLIPBOARD_MONITOR, NautilusClipboardMonitor))
+#define NAUTILUS_CLIPBOARD_MONITOR_CLASS(klass) \
+ (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_CLIPBOARD_MONITOR, NautilusClipboardMonitorClass))
+#define NAUTILUS_IS_CLIPBOARD_MONITOR(obj) \
+ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_CLIPBOARD_MONITOR))
+#define NAUTILUS_IS_CLIPBOARD_MONITOR_CLASS(klass) \
+ (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_CLIPBOARD_MONITOR))
+#define NAUTILUS_CLIPBOARD_MONITOR_GET_CLASS(obj) \
+ (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_CLIPBOARD_MONITOR, NautilusClipboardMonitorClass))
+
+typedef struct NautilusClipboardMonitorDetails NautilusClipboardMonitorDetails;
+typedef struct NautilusClipboardInfo NautilusClipboardInfo;
+
+typedef struct {
+ GObject parent_slot;
+
+ NautilusClipboardMonitorDetails *details;
+} NautilusClipboardMonitor;
+
+typedef struct {
+ GObjectClass parent_slot;
+
+ void (* clipboard_changed) (NautilusClipboardMonitor *monitor);
+ void (* clipboard_info) (NautilusClipboardMonitor *monitor,
+ NautilusClipboardInfo *info);
+} NautilusClipboardMonitorClass;
+
+struct NautilusClipboardInfo {
+ GList *files;
+ gboolean cut;
+};
+
+GType nautilus_clipboard_monitor_get_type (void);
+
+NautilusClipboardMonitor * nautilus_clipboard_monitor_get (void);
+void nautilus_clipboard_monitor_set_clipboard_info (NautilusClipboardMonitor *monitor,
+ NautilusClipboardInfo *info);
+NautilusClipboardInfo * nautilus_clipboard_monitor_get_clipboard_info (NautilusClipboardMonitor *monitor);
+gboolean nautilus_clipboard_monitor_is_cut (NautilusClipboardMonitor *monitor);
+void nautilus_clipboard_monitor_emit_changed (void);
+
+void nautilus_clear_clipboard_callback (GtkClipboard *clipboard,
+ gpointer user_data);
+void nautilus_get_clipboard_callback (GtkClipboard *clipboard,
+ GtkSelectionData *selection_data,
+ guint info,
+ gpointer user_data);
+
+
+
+#endif /* NAUTILUS_CLIPBOARD_MONITOR_H */
+