From 0d4e81432f5ace47ac86991aa239e4a55686de00 Mon Sep 17 00:00:00 2001 From: Xavier Claessens Date: Mon, 8 Oct 2007 16:44:44 +0000 Subject: Implement EmpathyAvatarChooser and EmpathyAvatarImage and make use of them 2007-10-08 Xavier Claessens * libempathy-gtk/empathy-ui-utils.c: * libempathy-gtk/empathy-ui-utils.h: * libempathy-gtk/empathy-contact-widget.c: * libempathy-gtk/empathy-contact-widget.h: * libempathy-gtk/empathy-avatar-chooser.c: * libempathy-gtk/empathy-avatar-chooser.h: * libempathy-gtk/empathy-avatar-image.c: * libempathy-gtk/empathy-avatar-image.h: * libempathy-gtk/Makefile.am: * src/empathy.c: Implement EmpathyAvatarChooser and EmpathyAvatarImage and make use of them in contact information windows. That means we can now enlarge avatars when clicking on it and we can set our own avatar if we edit our own contact. svn path=/trunk/; revision=363 --- libempathy-gtk/empathy-avatar-chooser.h | 59 +++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 libempathy-gtk/empathy-avatar-chooser.h (limited to 'libempathy-gtk/empathy-avatar-chooser.h') diff --git a/libempathy-gtk/empathy-avatar-chooser.h b/libempathy-gtk/empathy-avatar-chooser.h new file mode 100644 index 000000000..b0c08df11 --- /dev/null +++ b/libempathy-gtk/empathy-avatar-chooser.h @@ -0,0 +1,59 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2006-2007 Imendio AB. + * Copyright (C) 2007 Collabora Ltd. + * + * This library 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 library; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + * + * Authors: Based on Novell's e-image-chooser. + * Xavier Claessens + */ + +#ifndef __EMPATHY_AVATAR_CHOOSER_H__ +#define __EMPATHY_AVATAR_CHOOSER_H__ + +#include + +#include + +G_BEGIN_DECLS + +#define EMPATHY_AVATAR_CHOOSER_TYPE (empathy_avatar_chooser_get_type ()) +#define EMPATHY_AVATAR_CHOOSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EMPATHY_AVATAR_CHOOSER_TYPE, EmpathyAvatarChooser)) +#define EMPATHY_AVATAR_CHOOSER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EMPATHY_AVATAR_CHOOSER_TYPE, EmpathyAvatarChooserClass)) +#define EMPATHY_IS_AVATAR_CHOOSER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EMPATHY_AVATAR_CHOOSER_TYPE)) +#define EMPATHY_IS_AVATAR_CHOOSER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), EMPATHY_AVATAR_CHOOSER_TYPE)) + +typedef struct _EmpathyAvatarChooser EmpathyAvatarChooser; +typedef struct _EmpathyAvatarChooserClass EmpathyAvatarChooserClass; +typedef struct _EmpathyAvatarChooserPrivate EmpathyAvatarChooserPrivate; + +struct _EmpathyAvatarChooser { + GtkButton parent; +}; + +struct _EmpathyAvatarChooserClass { + GtkButtonClass parent_class; +}; + +GType empathy_avatar_chooser_get_type (void); +GtkWidget *empathy_avatar_chooser_new (void); +void empathy_avatar_chooser_set (EmpathyAvatarChooser *chooser, + EmpathyAvatar *avatar); +void empathy_avatar_chooser_get_image_data (EmpathyAvatarChooser *chooser, + gchar **data, + gsize *data_size); + +#endif /* __EMPATHY_AVATAR_CHOOSER_H__ */ -- cgit v1.2.3