Re: On Emblems
- From: Clemens Buss <cebuzz gmail com>
- To: gtk-devel-list gnome org
- Cc: Christian Kellner <gicmo gnome org>
- Subject: Re: On Emblems
- Date: Fri, 01 Aug 2008 15:23:26 +0200
Hi,
I just had detailed discussion with Christian Kellner via telephone and
I would like to share some of our thoughts. Probably will forget some of
our points but I guess gicmo will jump in then anyway ;-)...
First I would like to share the proposal I yet only made privately to
Matthias and Christian for gemblemedicon.
We could have and Object GEmblem which implements GIcon (on first sight
this might be overengineered but I will give or repeat some arguments
soon, why we think it would make sense to have that.)
struct _GEmblem
{
GObject parent_instance;
GIcon *icon; ( I guess we should also somehow check in the set function
for the icon in order to avoid cycles. e.g. an EmblemedIcon in a GEmblem)
..properties..e.g.(not all of them at the same time ocourse, just ideas):
gchar *origin
gboolean from_livemetadata;
guint sys_level;
};
Methods would be quite canonical I guess get_ and set_icon, and of
course we can set the properties, as well.
The sys_level (gicmo's idea) means that we may want to express that an
emblem represents a read_only icon(level 1) and not a
custom-user-emblem(e.g. a heart, another level).
Which is the right approach has to be debated. But we agreed that it is
necessary to have information of that kind together with the emblem,
especially if there are space issues and we want to draw the lock and
not the heart, or the user even wants to draw the heart by all means or
we want to do some grouping if there is enough space.
Also I suppose we would have less hassles if we lateron assemble a list
of emblems in nautilus if we can handle them explicitly in a reasonable way.
And then GEmblemedIcon, which also implements GIcon:
struct _GEmblemedIcon
{
GObject parent_instance;
GIcon* icon;
GList* emblemlist;
};
Perhaps with the kind of methods I was proposing for the GEmblemableIcon
Iface:
void add_emblem (GEmblemableIcon* icon, GEmblem* emblem);
void add_emblems (GEmblemableIcon* icon, GList* emblemlist);
GList* get_emblems (GEmblemableIcon* icon);
Also we were talking about the Nautilus support for those EmblemedIcons.
At the moment we have the problem that if nautilus would get such an
emblemed icon for a device it wouldn't be able to add its custom hearts,
and stars on it.
Anyway I guess that it is a must to have GEmblemendIcon support in
nautilus and make it aware of the rendering functionality in gtk for
emblems.
Are you(Matthias) possibly already working on a patch for that?
Otherwise or in any case I would be very interested in working on that...
Best wishes
Clemens
[Date Prev][
Date Next] [Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]