aboutsummaryrefslogtreecommitdiffstats
path: root/e-util/e-cursor.c
diff options
context:
space:
mode:
authorSrinivasa Ragavan <sragavan@novell.com>2005-06-08 19:46:48 +0800
committerSrinivasa Ragavan <sragavan@src.gnome.org>2005-06-08 19:46:48 +0800
commit74907305ce088f9b992e60986eaff6e40285c686 (patch)
treeba6d9f7477f3e478c83a36fddebcd3a126961ab1 /e-util/e-cursor.c
parentc467b293c8b8c450f1cd8384a55dc989063f16f9 (diff)
downloadgsoc2013-evolution-74907305ce088f9b992e60986eaff6e40285c686.tar
gsoc2013-evolution-74907305ce088f9b992e60986eaff6e40285c686.tar.gz
gsoc2013-evolution-74907305ce088f9b992e60986eaff6e40285c686.tar.bz2
gsoc2013-evolution-74907305ce088f9b992e60986eaff6e40285c686.tar.lz
gsoc2013-evolution-74907305ce088f9b992e60986eaff6e40285c686.tar.xz
gsoc2013-evolution-74907305ce088f9b992e60986eaff6e40285c686.tar.zst
gsoc2013-evolution-74907305ce088f9b992e60986eaff6e40285c686.zip
Added functions to show busy cursor. Add the files
2005-06-08 Srinivasa Ragavan <sragavan@novell.com> * e-cursor.[ch]: Added functions to show busy cursor. * Makefile.am: Add the files svn path=/trunk/; revision=29472
Diffstat (limited to 'e-util/e-cursor.c')
-rw-r--r--e-util/e-cursor.c67
1 files changed, 67 insertions, 0 deletions
diff --git a/e-util/e-cursor.c b/e-util/e-cursor.c
new file mode 100644
index 0000000000..fa5f775a43
--- /dev/null
+++ b/e-util/e-cursor.c
@@ -0,0 +1,67 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- *
+ *
+ * Authors: Srinivasa Ragavan <sragavan@novell.com>
+ *
+ * Copyright 2004 Novell Inc. (www.novell.com)
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of version 2 of the GNU General Public
+ * License as published by the Free Software Foundation.
+ *
+ * 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., 59 Temple Street #330, Boston, MA 02111-1307, USA.
+ *
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <gtk/gtk.h>
+#include <gdk/gdk.h>
+
+#include "e-cursor.h"
+
+/**
+ * e_cursor_set:
+ * @widget: Any widget in a window, to which busy cursor has to be set
+ * cursor: The type of cursor to be set defined in e-cursor.h
+ *
+ * Sets the cursor specified, to the top level window of the given widget.
+ * It is not window aware, so if you popup a window, it will not have
+ * busy cursor set. That has to be handled seperately with a new call to this
+ * function.
+ *
+ * Return value:
+ **/
+void e_cursor_set (GtkWidget *widget, ECursorType cursor)
+{
+ GtkWidget *toplevel;
+ GdkCursor *window_cursor;
+
+ toplevel = gtk_widget_get_toplevel (widget);
+ if (GTK_WIDGET_TOPLEVEL (toplevel)) {
+
+ switch (cursor) {
+ case E_CURSOR_NORMAL :
+ window_cursor = gdk_cursor_new (GDK_LEFT_PTR);
+ break;
+ case E_CURSOR_BUSY :
+ window_cursor = gdk_cursor_new (GDK_WATCH);
+ break;
+
+ default :
+ window_cursor = gdk_cursor_new (GDK_LEFT_PTR);
+ }
+
+ gdk_window_set_cursor (toplevel->window, window_cursor);
+ gdk_cursor_destroy (window_cursor);
+ }
+
+}