summaryrefslogtreecommitdiff
path: root/libnautilus-private/nautilus-icon-factory.h
diff options
context:
space:
mode:
authorDarin Adler <darin@src.gnome.org>2000-09-20 00:44:07 +0000
committerDarin Adler <darin@src.gnome.org>2000-09-20 00:44:07 +0000
commit1035b5ea668b2f85e6290e78e27da41948d57fb0 (patch)
tree7f88990b786139ae56f82273e7fc42f4b277d7f1 /libnautilus-private/nautilus-icon-factory.h
parent1a0af901905f3a2b1b97a9f7ce55678a3f2d2d23 (diff)
downloadnautilus-1035b5ea668b2f85e6290e78e27da41948d57fb0.tar.gz
Fixed bug 640 (icon cache never frees images (awaiting GdkPixbuf
fix)). Also took care of bug 3145 (zillions of 'main_loops != NULL' assertion failures when quitting) and bug 3138 (Some code in the icon factory is cut and pasted from elsewhere). And a few unrelated things that came up while I was busy working on these. * configure.in: Applied patch from Dan Winship to fix handling of CFLAGS and LDFLAGS. Fixes some missing quoting and other mistakes. * libnautilus-extensions/Makefile.am: * libnautilus-extensions/nautilus-icon-factory-private.h: * libnautilus-extensions/nautilus-thumbnails.c: * libnautilus-extensions/nautilus-thumbnails.h: Broke out the thumbnailing code into its own source file for clarity. * libnautilus-extensions/nautilus-directory.c: * libnautilus-extensions/nautilus-file-utilities.h: * libnautilus-extensions/nautilus-file-utilities.c: (nautilus_make_directory_and_parents): Moved nautilus_make_directory_and_parents into a place where the thumbnail code can share it instead of requiring its own copy. * libnautilus-extensions/nautilus-global-preferences.h: * libnautilus-extensions/nautilus-global-preferences.c: (destroy_global_prefs_dialog), (global_preferences_get_dialog), (nautilus_global_preferences_dialog_update), (nautilus_global_preferences_initialize): * libnautilus-extensions/nautilus-preferences.h: * libnautilus-extensions/nautilus-preferences.c: (preferences_initialize_if_needed), (preferences_shutdown): * src/nautilus-application.c: (nautilus_application_destroy): Changed code so that it cleans up with g_atexit instead of with an explicit shutdown call. This makes it sequence correctly with other atexit code. * libnautilus-extensions/nautilus-icon-canvas-item.h: * libnautilus-extensions/nautilus-icon-canvas-item.c: (nautilus_icon_canvas_item_destroy), (nautilus_icon_canvas_item_set_attach_points), (emblem_layout_next): * libnautilus-extensions/nautilus-icon-container.c: (nautilus_icon_container_update_icon): Added a Nautilus prefix to the EmblemAttachPoints typedef, since it's public. * libnautilus-extensions/nautilus-icon-factory.h: * libnautilus-extensions/nautilus-icon-factory.c: Changed the icon factory structure so that it will actually free pixbufs when done with them. Made some other small fixes to the icon factory in passing, including removing some redundant code and fixing the logic for getting custom icons and deleting the icon factory and g_atexit time. * src/file-manager/fm-icon-view.c: (play_file), (preview_sound): Restructured the logic for playing sound previews a little to get rid of compiler warnings and close some loopholes in the old code. * src/nautilus-main.c: (is_event_loop_needed), (quit_if_in_main_loop), (nautilus_gtk_main_quit_all), (event_loop_unregister), (nautilus_main_event_loop_register), (nautilus_main_is_event_loop_mainstay), (nautilus_main_event_loop_quit), (main): Fixed the main loop quitting logic so that it is a bit simpler and works with the gnome-vfs code that runs event handling after the last main loop is gone.
Diffstat (limited to 'libnautilus-private/nautilus-icon-factory.h')
-rw-r--r--libnautilus-private/nautilus-icon-factory.h84
1 files changed, 42 insertions, 42 deletions
diff --git a/libnautilus-private/nautilus-icon-factory.h b/libnautilus-private/nautilus-icon-factory.h
index 857d78d55..1742e3d4b 100644
--- a/libnautilus-private/nautilus-icon-factory.h
+++ b/libnautilus-private/nautilus-icon-factory.h
@@ -82,9 +82,9 @@ typedef struct NautilusScalableIcon NautilusScalableIcon;
#define MAX_ATTACH_POINTS 8
typedef struct {
- gboolean has_attach_points;
- GdkPoint attach_points[MAX_ATTACH_POINTS];
-} EmblemAttachPoints;
+ int num_points;
+ GdkPoint points[MAX_ATTACH_POINTS];
+} NautilusEmblemAttachPoints;
/* Instead of a class declaration here, I will just document
* the signals.
@@ -98,19 +98,19 @@ typedef struct {
GtkObject * nautilus_icon_factory_get (void);
/* Relationship between zoom levels and icons sizes. */
-guint nautilus_get_icon_size_for_zoom_level (NautilusZoomLevel zoom_level);
+guint nautilus_get_icon_size_for_zoom_level (NautilusZoomLevel zoom_level);
/* Choose the appropriate icon, but don't render it yet. */
-NautilusScalableIcon *nautilus_icon_factory_get_icon_for_file (NautilusFile *file,
- const char *modifier,
- gboolean anti_aliased);
-gboolean nautilus_icon_factory_is_icon_ready_for_file (NautilusFile *file);
-GList * nautilus_icon_factory_get_required_file_attributes (void);
-GList * nautilus_icon_factory_get_emblem_icons_for_file (NautilusFile *file,
- gboolean anti_aliased,
- NautilusStringList *exclude);
-NautilusScalableIcon *nautilus_icon_factory_get_emblem_icon_by_name (const char *emblem_name,
- gboolean anti_aliased);
+NautilusScalableIcon *nautilus_icon_factory_get_icon_for_file (NautilusFile *file,
+ const char *modifier,
+ gboolean anti_aliased);
+gboolean nautilus_icon_factory_is_icon_ready_for_file (NautilusFile *file);
+GList * nautilus_icon_factory_get_required_file_attributes (void);
+GList * nautilus_icon_factory_get_emblem_icons_for_file (NautilusFile *file,
+ gboolean anti_aliased,
+ NautilusStringList *exclude);
+NautilusScalableIcon *nautilus_icon_factory_get_emblem_icon_by_name (const char *emblem_name,
+ gboolean anti_aliased);
/* Render an icon to a particular size.
* Ownership of a ref. count in this pixbuf comes with the deal.
@@ -118,59 +118,59 @@ NautilusScalableIcon *nautilus_icon_factory_get_emblem_icon_by_name (const cha
* that X and Y scaling are the same. Optionally, we also pass
* back an array of emblem attach points, if the pointer is non-null
*/
-GdkPixbuf * nautilus_icon_factory_get_pixbuf_for_icon (NautilusScalableIcon *scalable_icon,
- guint nominal_size_in_pixels_x,
- guint nominal_size_in_pixels_y,
- guint maximum_size_in_pixels_x,
- guint maximum_size_in_pixels_y,
- EmblemAttachPoints *attach_points);
+GdkPixbuf * nautilus_icon_factory_get_pixbuf_for_icon (NautilusScalableIcon *scalable_icon,
+ guint nominal_size_in_pixels_x,
+ guint nominal_size_in_pixels_y,
+ guint maximum_size_in_pixels_x,
+ guint maximum_size_in_pixels_y,
+ NautilusEmblemAttachPoints *attach_points);
/* Convenience functions for the common case where you want to choose
* and render the icon into a pixbuf all at once.
*/
-GdkPixbuf * nautilus_icon_factory_get_pixbuf_for_file (NautilusFile *file,
- const char *modifer,
- guint size_in_pixels,
- gboolean anti_aliased);
+GdkPixbuf * nautilus_icon_factory_get_pixbuf_for_file (NautilusFile *file,
+ const char *modifer,
+ guint size_in_pixels,
+ gboolean anti_aliased);
/* Convenience functions for legacy interfaces that require a pixmap and
* bitmap. Maybe we can get rid of these one day.
*/
-void nautilus_icon_factory_get_pixmap_and_mask_for_file (NautilusFile *file,
- const char *modifer,
- guint size_in_pixels,
- GdkPixmap **pixmap,
- GdkBitmap **mask);
+void nautilus_icon_factory_get_pixmap_and_mask_for_file (NautilusFile *file,
+ const char *modifer,
+ guint size_in_pixels,
+ GdkPixmap **pixmap,
+ GdkBitmap **mask);
/* Manage a scalable icon.
* Since the factory always passes out references to the same scalable
* icon, you can compare two scalable icons to see if they are the same
* with ==.
*/
-void nautilus_scalable_icon_ref (NautilusScalableIcon *scalable_icon);
-void nautilus_scalable_icon_unref (NautilusScalableIcon *scalable_icon);
+void nautilus_scalable_icon_ref (NautilusScalableIcon *scalable_icon);
+void nautilus_scalable_icon_unref (NautilusScalableIcon *scalable_icon);
/* A scalable icon can be decomposed into text and reconstituted later
* using nautilus_scalable_icon_new_from_text_pieces. This is the way
* to store scalable icons in metadata or other files.
*/
-void nautilus_scalable_icon_get_text_pieces (NautilusScalableIcon *scalable_icon,
- char **uri_return,
- char **name_return,
- char **modifier_return,
- char **embedded_text_return);
+void nautilus_scalable_icon_get_text_pieces (NautilusScalableIcon *scalable_icon,
+ char **uri_return,
+ char **name_return,
+ char **modifier_return,
+ char **embedded_text_return);
/* Get a scalable icon using the earlier results of
* nautilus_scalable_icon_get_text_pieces.
*/
-NautilusScalableIcon *nautilus_scalable_icon_new_from_text_pieces (const char *uri,
- const char *name,
- const char *modifier,
- const char *embedded_text,
- gboolean anti_aliased);
+NautilusScalableIcon *nautilus_scalable_icon_new_from_text_pieces (const char *uri,
+ const char *name,
+ const char *modifier,
+ const char *embedded_text,
+ gboolean anti_aliased);
/* Convenience function for freeing a list of scalable icons.
* Unrefs all the icons before freeing the list.
*/
-void nautilus_scalable_icon_list_free (GList *scalable_icon_list);
+void nautilus_scalable_icon_list_free (GList *scalable_icon_list);
#endif /* NAUTILUS_ICON_FACTORY_H */