aboutsummaryrefslogtreecommitdiffstats
path: root/e-util
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
parentc467b293c8b8c450f1cd8384a55dc989063f16f9 (diff)
downloadgsoc2013-evolution-74907305ce088f9b992e60986eaff6e40285c686.tar.gz
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')
-rw-r--r--e-util/ChangeLog4
-rw-r--r--e-util/Makefile.am2
-rw-r--r--e-util/e-cursor.c67
-rw-r--r--e-util/e-cursor.h36
4 files changed, 109 insertions, 0 deletions
diff --git a/e-util/ChangeLog b/e-util/ChangeLog
index d5fc3efb4a..7ce8ee8cee 100644
--- a/e-util/ChangeLog
+++ b/e-util/ChangeLog
@@ -1,3 +1,7 @@
+2005-06-08 Srinivasa Ragavan <sragavan@novell.com>
+ * e-cursor.[ch]: Added functions to show busy cursor.
+ * Makefile.am: Add the files
+
2005-05-25 Not Zed <NotZed@Ximian.com>
* e-plugin-mono.[ch]: Removed, these are now implemented as a
diff --git a/e-util/Makefile.am b/e-util/Makefile.am
index e6182ce2b7..2dbd2d7962 100644
--- a/e-util/Makefile.am
+++ b/e-util/Makefile.am
@@ -24,6 +24,7 @@ eutilinclude_HEADERS = \
e-config.h \
e-config-listener.h \
e-corba-utils.h \
+ e-cursor.h \
e-dialog-utils.h \
e-dialog-widgets.h \
e-error.h \
@@ -63,6 +64,7 @@ libeutil_la_SOURCES = \
e-config.c \
e-config-listener.c \
e-corba-utils.c \
+ e-cursor.c \
e-dialog-utils.c \
e-dialog-widgets.c \
e-error.c \
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);
+ }
+
+}
diff --git a/e-util/e-cursor.h b/e-util/e-cursor.h
new file mode 100644
index 0000000000..bfd5d8d1d1
--- /dev/null
+++ b/e-util/e-cursor.h
@@ -0,0 +1,36 @@
+/* -*- 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.
+ *
+ */
+
+#ifndef _E_CURSOR_H
+#define _E_CURSOR_H
+
+#include <gtk/gtk.h>
+
+typedef enum {
+
+ E_CURSOR_NORMAL,
+ E_CURSOR_BUSY,
+
+}ECursorType;
+
+void e_cursor_set (GtkWidget *widget, ECursorType cursor);
+
+#endif /* !_E_CURSOR_H */