]> www.fi.muni.cz Git - evince.git/blobdiff - libdocument/ev-selection.h
[dualscreen] fix crash on ctrl+w and fix control window closing
[evince.git] / libdocument / ev-selection.h
index 0b2f41be7999cbcc8328182c33aac7e37ac56d6c..dff12e0a40235472384a79cfeb43f0859d5f128f 100644 (file)
  *
  *  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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  *
  */
 
+#if !defined (__EV_EVINCE_DOCUMENT_H_INSIDE__) && !defined (EVINCE_COMPILATION)
+#error "Only <evince-document.h> can be included directly."
+#endif
+
 #ifndef EV_SELECTION_H
 #define EV_SELECTION_H
 
 #include <glib-object.h>
 #include <glib.h>
-#include <gdk/gdkpixbuf.h>
 #include <gdk/gdk.h>
 #include "ev-document.h"
 
@@ -31,10 +34,10 @@ G_BEGIN_DECLS
 
 #define EV_TYPE_SELECTION            (ev_selection_get_type ())
 #define EV_SELECTION(o)                     (G_TYPE_CHECK_INSTANCE_CAST ((o), EV_TYPE_SELECTION, EvSelection))
-#define EV_SELECTION_IFACE(k)       (G_TYPE_CHECK_CLASS_CAST((k), EV_TYPE_SELECTION, EvSelectionIface))
+#define EV_SELECTION_IFACE(k)       (G_TYPE_CHECK_CLASS_CAST((k), EV_TYPE_SELECTION, EvSelectionInterface))
 #define EV_IS_SELECTION(o)          (G_TYPE_CHECK_INSTANCE_TYPE ((o), EV_TYPE_SELECTION))
 #define EV_IS_SELECTION_IFACE(k)     (G_TYPE_CHECK_CLASS_TYPE ((k), EV_TYPE_SELECTION))
-#define EV_SELECTION_GET_IFACE(inst) (G_TYPE_INSTANCE_GET_INTERFACE ((inst), EV_TYPE_SELECTION, EvSelectionIface))
+#define EV_SELECTION_GET_IFACE(inst) (G_TYPE_INSTANCE_GET_INTERFACE ((inst), EV_TYPE_SELECTION, EvSelectionInterface))
 
 typedef enum {
        EV_SELECTION_STYLE_GLYPH,
@@ -42,53 +45,49 @@ typedef enum {
        EV_SELECTION_STYLE_LINE
 } EvSelectionStyle;
 
-typedef struct _EvSelection      EvSelection;
-typedef struct _EvSelectionIface   EvSelectionIface;
+typedef struct _EvSelection           EvSelection;
+typedef struct _EvSelectionInterface   EvSelectionInterface;
 
-struct _EvSelectionIface
+struct _EvSelectionInterface
 {
        GTypeInterface base_iface;
 
-       void        (* render_selection)     (EvSelection      *selection,
-                                             EvRenderContext  *rc,
-                                             cairo_surface_t **surface,
-                                             EvRectangle      *points,
-                                             EvRectangle      *old_points,
-                                             EvSelectionStyle  style,
-                                             GdkColor         *text,
-                                             GdkColor         *base);
-       gchar     * (* get_selected_text)    (EvSelection      *selection,
-                                             EvRenderContext  *rc,
-                                             EvSelectionStyle  style,
-                                             EvRectangle      *points);
-       GdkRegion * (* get_selection_map)    (EvSelection      *selection,
-                                             EvRenderContext  *rc);
-       GdkRegion * (* get_selection_region) (EvSelection      *selection,
-                                             EvRenderContext  *rc,
-                                             EvSelectionStyle  style,
-                                             EvRectangle      *points);
+       void             (* render_selection)     (EvSelection      *selection,
+                                                  EvRenderContext  *rc,
+                                                  cairo_surface_t **surface,
+                                                  EvRectangle      *points,
+                                                  EvRectangle      *old_points,
+                                                  EvSelectionStyle  style,
+                                                  GdkColor         *text,
+                                                  GdkColor         *base);
+       gchar          * (* get_selected_text)    (EvSelection      *selection,
+                                                  EvPage           *page,
+                                                  EvSelectionStyle  style,
+                                                  EvRectangle      *points);
+       cairo_region_t * (* get_selection_region) (EvSelection      *selection,
+                                                  EvRenderContext  *rc,
+                                                  EvSelectionStyle  style,
+                                                  EvRectangle      *points);
 };
 
-GType      ev_selection_get_type             (void);
-void       ev_selection_render_selection     (EvSelection      *selection,
-                                             EvRenderContext  *rc,
-                                             cairo_surface_t **surface,
-                                             EvRectangle      *points,
-                                             EvRectangle      *old_points,
-                                             EvSelectionStyle  style,
-                                             GdkColor         *text,
-                                             GdkColor         *base);
-gchar     *ev_selection_get_selected_text    (EvSelection      *selection,
-                                             EvRenderContext  *rc,
-                                             EvSelectionStyle  style,
-                                             EvRectangle      *points);
-GdkRegion *ev_selection_get_selection_map    (EvSelection      *selection,
-                                             EvRenderContext  *rc);
-GdkRegion *ev_selection_get_selection_region (EvSelection      *selection,
-                                             EvRenderContext  *rc,
-                                             EvSelectionStyle  style,
-                                             EvRectangle      *points);
-                                 
+GType           ev_selection_get_type             (void) G_GNUC_CONST;
+void            ev_selection_render_selection     (EvSelection      *selection,
+                                                  EvRenderContext  *rc,
+                                                  cairo_surface_t **surface,
+                                                  EvRectangle      *points,
+                                                  EvRectangle      *old_points,
+                                                  EvSelectionStyle  style,
+                                                  GdkColor         *text,
+                                                  GdkColor         *base);
+gchar          *ev_selection_get_selected_text    (EvSelection      *selection,
+                                                  EvPage           *page,
+                                                  EvSelectionStyle  style,
+                                                  EvRectangle      *points);
+cairo_region_t *ev_selection_get_selection_region (EvSelection      *selection,
+                                                  EvRenderContext  *rc,
+                                                  EvSelectionStyle  style,
+                                                  EvRectangle      *points);
+
 G_END_DECLS
 
 #endif