summaryrefslogtreecommitdiff
path: root/src/eom-clipboard-handler.h
diff options
context:
space:
mode:
authorinfirit <[email protected]>2014-07-26 12:15:01 +0200
committerinfirit <[email protected]>2014-07-26 12:48:21 +0200
commite4177ed4c0de5eaa4294c756a43e072f1373cb0f (patch)
treee220bf77c549f6a8579d9751c543de3e2a27aa62 /src/eom-clipboard-handler.h
parentc35741c224cdbb67e05229aaafaa96373e4e7947 (diff)
downloadeom-e4177ed4c0de5eaa4294c756a43e072f1373cb0f.tar.bz2
eom-e4177ed4c0de5eaa4294c756a43e072f1373cb0f.tar.xz
Allow handling multiple clipboard data formats from one menu entry
The new class "snapshots" the required data from the given EomImage and keeps it around for clipboard usage until the clipboard gets reset. Based on eog commit dcb56b03e9c9282138b9da94eddcedfc401ab750 From Felix Riemann <[email protected]>
Diffstat (limited to 'src/eom-clipboard-handler.h')
-rw-r--r--src/eom-clipboard-handler.h63
1 files changed, 63 insertions, 0 deletions
diff --git a/src/eom-clipboard-handler.h b/src/eom-clipboard-handler.h
new file mode 100644
index 0000000..8bb52de
--- /dev/null
+++ b/src/eom-clipboard-handler.h
@@ -0,0 +1,63 @@
+/*
+ * eom-clipboard-handler.h
+ * This file is part of eom
+ *
+ * Author: Felix Riemann <[email protected]>
+ *
+ * Copyright (C) 2010 GNOME Foundation
+ *
+ * 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, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __EOM_CLIPBOARD_HANDLER_H__
+#define __EOM_CLIPBOARD_HANDLER_H__
+
+#include <glib-object.h>
+#include <gtk/gtk.h>
+
+#include "eom-image.h"
+
+G_BEGIN_DECLS
+
+#define EOM_TYPE_CLIPBOARD_HANDLER (eom_clipboard_handler_get_type ())
+#define EOM_CLIPBOARD_HANDLER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), EOM_TYPE_CLIPBOARD_HANDLER, EomClipboardHandler))
+#define EOM_CLIPBOARD_HANDLER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), EOM_TYPE_CLIPBOARD_HANDLER, EomClipboardHandlerClass))
+#define EOM_IS_CLIPBOARD_HANDLER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), EOM_TYPE_CLIPBOARD_HANDLER))
+#define EOM_IS_CLIPBOARD_HANDLER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), EOM_TYPE_CLIPBOARD_HANDLER))
+#define EOM_CLIPBOARD_HANDLER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), EOM_TYPE_CLIPBOARD_HANDLER, EomClipboardHandlerClass))
+
+typedef struct _EomClipboardHandler EomClipboardHandler;
+typedef struct _EomClipboardHandlerClass EomClipboardHandlerClass;
+typedef struct _EomClipboardHandlerPrivate EomClipboardHandlerPrivate;
+
+struct _EomClipboardHandler {
+ GObject parent;
+
+ EomClipboardHandlerPrivate *priv;
+};
+
+struct _EomClipboardHandlerClass {
+ GObjectClass parent_klass;
+};
+
+GType eom_clipboard_handler_get_type (void) G_GNUC_CONST;
+
+EomClipboardHandler* eom_clipboard_handler_new (EomImage *img);
+
+void eom_clipboard_handler_copy_to_clipboard (EomClipboardHandler *handler,
+ GtkClipboard *clipboard);
+
+G_END_DECLS
+#endif /* __EOM_CLIPBOARD_HANDLER_H__ */