summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndy Hertzfeld <andy@src.gnome.org>2000-03-02 03:13:00 +0000
committerAndy Hertzfeld <andy@src.gnome.org>2000-03-02 03:13:00 +0000
commit618ca4bc4a050d0155e871c413e1fb933b6eba18 (patch)
treeeb7009f4837e89357f8bebead05ec54f3c417e42 /src
parent022c169add9728f9b2eccdb68a8c65ba2fb511bb (diff)
downloadnautilus-618ca4bc4a050d0155e871c413e1fb933b6eba18.tar.gz
implemented automatic thumbnail creation for large images
implemented automatic thumbnail creation for large images
Diffstat (limited to 'src')
-rw-r--r--src/file-manager/fm-icons-controller.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/file-manager/fm-icons-controller.c b/src/file-manager/fm-icons-controller.c
index a669d9585..c5eb46c4e 100644
--- a/src/file-manager/fm-icons-controller.c
+++ b/src/file-manager/fm-icons-controller.c
@@ -42,6 +42,8 @@ static char * fm_icons_controller_get_icon_text (NautilusIcon
NautilusControllerIcon *icon);
static char * fm_icons_controller_get_icon_uri (NautilusIconsController *controller,
NautilusControllerIcon *icon);
+static void fm_icons_controller_update_icon (NautilusIconsController *controller,
+ gchar *icon_uri);
NAUTILUS_DEFINE_CLASS_BOILERPLATE (FMIconsController, fm_icons_controller, NAUTILUS_TYPE_ICONS_CONTROLLER)
@@ -56,6 +58,7 @@ fm_icons_controller_initialize_class (FMIconsControllerClass *klass)
abstract_class->get_icon_property = fm_icons_controller_get_icon_property;
abstract_class->get_icon_text = fm_icons_controller_get_icon_text;
abstract_class->get_icon_uri = fm_icons_controller_get_icon_uri;
+ abstract_class->update_icon = fm_icons_controller_update_icon;
}
static void
@@ -85,7 +88,7 @@ fm_icons_controller_get_icon_image (NautilusIconsController *controller,
if (emblems != NULL) {
*emblems = nautilus_icon_factory_get_emblem_icons_for_file (NAUTILUS_FILE (icon));
}
- return nautilus_icon_factory_get_icon_for_file (NAUTILUS_FILE (icon));
+ return nautilus_icon_factory_get_icon_for_file (NAUTILUS_FILE (icon), controller);
}
/* return properties about the icon, keyed by the passed_in string. If the property doesn't apply,
@@ -169,3 +172,13 @@ fm_icons_controller_get_icon_uri (NautilusIconsController *controller,
{
return nautilus_file_get_uri (NAUTILUS_FILE (icon));
}
+
+/* update_icon is called when a property of a file has changed to update the icon to reflect the change */
+static void
+fm_icons_controller_update_icon(NautilusIconsController *controller,
+ gchar *icon_uri)
+{
+ FMIconsController *icons_controller = FM_ICONS_CONTROLLER(controller);
+ GnomeIconContainer *container = GNOME_ICON_CONTAINER(GTK_BIN(icons_controller->icons)->child);
+ gnome_icon_container_update_icon(container, icon_uri);
+}