changeset 1379:e2db3b6068d7

indicate that the exif pane is empty
author nadvornik
date Wed, 04 Mar 2009 22:44:35 +0000
parents 32ff4da1cb20
children ddb9c10ee9c6
files src/bar_exif.c
diffstat 1 files changed, 11 insertions(+), 21 deletions(-) [+]
line wrap: on
line diff
--- a/src/bar_exif.c	Wed Mar 04 22:34:11 2009 +0000
+++ b/src/bar_exif.c	Wed Mar 04 22:44:35 2009 +0000
@@ -60,11 +60,14 @@
 
 	gint min_height;
 	
+	gboolean all_hidden;
+	
 	FileData *fd;
 };
 
 static void bar_pane_exif_entry_dnd_init(GtkWidget *entry);
-static void bar_pane_exif_update_entry(PaneExifData *ped, GtkWidget *entry, gboolean update_title);
+static void bar_pane_exif_entry_update_title(ExifEntry *ee);
+static void bar_pane_exif_update(PaneExifData *ped);
 
 static void bar_pane_exif_entry_destroy(GtkWidget *widget, gpointer data)
 {
@@ -119,7 +122,9 @@
 
 	bar_pane_exif_entry_dnd_init(ee->ebox);
 	
-	bar_pane_exif_update_entry(ped, ee->ebox, TRUE);
+	bar_pane_exif_entry_update_title(ee);
+	bar_pane_exif_update(ped);
+	
 	return ee->ebox;
 }
 
@@ -168,6 +173,7 @@
     		gtk_widget_set_tooltip_text(ee->hbox, text);
 #endif
 		gtk_widget_show(entry);
+		ped->all_hidden = FALSE;
 		}
 		
 	g_free(text);
@@ -179,26 +185,8 @@
 {
 	GList *list, *work;
 
-#if 0
-	ExifData *exif;
-	/* do we have any exif at all ? */
-	exif = exif_read_fd(ped->fd);
+	ped->all_hidden = TRUE;
 
-	if (!exif)
-		{
-		bar_pane_exif_sensitive(ped, FALSE);
-		return;
-		}
-	else
-		{
-		/* we will use high level functions so we can release it for now.
-		   it will stay in the cache */
-		exif_free_fd(ped->fd, exif);
-		exif = NULL;
-		}
-
-	bar_pane_exif_sensitive(ped, TRUE);
-#endif	
 	list = gtk_container_get_children(GTK_CONTAINER(ped->vbox));	
 	work = list;
 	while (work)
@@ -210,6 +198,8 @@
 		bar_pane_exif_update_entry(ped, entry, FALSE);
 		}
 	g_list_free(list);
+
+	gtk_widget_set_sensitive(ped->pane.title, !ped->all_hidden);
 }
 
 void bar_pane_exif_set_fd(GtkWidget *widget, FileData *fd)