Use util_clip_triangle() in pan_item_tri_new()
[geeqie.git] / src / fullscreen.h
index 907f087..764fe8c 100644 (file)
@@ -1,61 +1,64 @@
 /*
- * Geeqie
- * (C) 2004 John Ellis
+ * Copyright (C) 2004 John Ellis
+ * Copyright (C) 2008 - 2016 The Geeqie Team
  *
  * Author: John Ellis
  *
- * This software is released under the GNU General Public License (GNU GPL).
- * Please read the included file COPYING for more information.
- * This software comes with no warranty of any kind, use at your own risk!
+ * 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 FULLSCREEN_H
 #define FULLSCREEN_H
 
-#define FULL_SCREEN_HIDE_MOUSE_DELAY 3000
-#define FULL_SCREEN_BUSY_MOUSE_DELAY 200
+#include <glib.h>
+#include <gtk/gtk.h>
 
-void set_default_fullscreen_info(ConfOptions *options);
+#include "image-overlay.h"
 
+struct ImageWindow;
 
-FullScreenData *fullscreen_start(GtkWidget *window, ImageWindow *imd,
-                                void (*stop_func)(FullScreenData *, gpointer), gpointer stop_data);
-void fullscreen_stop(FullScreenData *fs);
+struct FullScreenData
+{
+       GtkWidget *window;
+       ImageWindow *imd;
 
+       GtkWidget *normal_window;
+       ImageWindow *normal_imd;
 
-/* screen numbers for fullscreen_prefs are as follows:
- *   0  use default display size
- * 101  screen 0, monitor 0
- * 102  screen 0, monitor 1
- * 201  screen 1, monitor 0
- */
+       guint hide_mouse_id; /**< event source id */
+       guint busy_mouse_id; /**< event source id */
 
+       gint cursor_state;
+OsdShowFlags osd_flags;
 
-typedef struct _ScreenData ScreenData;
-struct _ScreenData {
-       gint number;
-       gchar *description;
-       gint x;
-       gint y;
-       gint width;
-       gint height;
-};
+       guint saver_block_id; /**< event source id */
 
+       using StopFunc = void (*)(FullScreenData *, gpointer);
+       StopFunc stop_func;
+       gpointer stop_data;
 
-GList *fullscreen_prefs_list(void);
-void fullscreen_prefs_list_free(GList *list);
-
-ScreenData *fullscreen_prefs_list_find(GList *list, gint screen);
+       gboolean same_region; /**< the returned region will overlap the current location of widget. */
+};
 
-void fullscreen_prefs_get_geometry(gint screen, GtkWidget *widget, gint *x, gint *y, gint *width, gint *height,
-                                  GdkScreen **dest_screen, gint *same_region);
+FullScreenData *fullscreen_start(GtkWidget *window, ImageWindow *imd,
+                                FullScreenData::StopFunc stop_func, gpointer stop_data);
+void fullscreen_stop(FullScreenData *fs);
 
-gint fullscreen_prefs_find_screen_for_widget(GtkWidget *widget);
 
-GtkWidget *fullscreen_prefs_selection_new(const gchar *text, gint *screen_value, gint *above_value);
+GtkWidget *fullscreen_prefs_selection_new(const gchar *text, gint *screen_value, gboolean *above_value);
 
 
 #endif
-
-
+/* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */