Author: colossus
Date: 2007-07-31 21:07:21 +0000 (Tue, 31 Jul 2007)
New Revision: 25945
Modified:
xarchiver/trunk/src/archive.c
xarchiver/trunk/src/archive.h
xarchiver/trunk/src/mime.c
xarchiver/trunk/src/window.c
xarchiver/trunk/src/zip.c
Log:
Playing with mime type and icon names.
Modified: xarchiver/trunk/src/archive.c
===================================================================
--- xarchiver/trunk/src/archive.c 2007-07-31 16:00:00 UTC (rev 25944)
+++ xarchiver/trunk/src/archive.c 2007-07-31 21:07:21 UTC (rev 25945)
@@ -20,6 +20,7 @@
#include <glib.h>
#include <gtk/gtk.h>
#include "archive.h"
+#include "mime.h"
#include "support.h"
#include "window.h"
@@ -471,8 +472,7 @@
g_free (entry->filename);
entry->filename = dummy;
}
- else
- gtk_list_store_set
(archive->liststore,&iter,0,GTK_STOCK_DIRECTORY,1,entry->filename,-1);
+ gtk_list_store_set
(archive->liststore,&iter,0,xa_get_stock_mime_icon(entry->filename),1,entry->filename,-1);
for (i = 0; i < archive->nc; i++)
{
@@ -544,8 +544,8 @@
current_column = entry->columns;
gtk_list_store_append (archive->liststore, &iter);
-
- gtk_list_store_set
(archive->liststore,&iter,0,GTK_STOCK_DIRECTORY,1,entry->filename,-1);
+ GdkPixbuf *pixbuf = xa_get_stock_mime_icon(entry->filename);
+ gtk_list_store_set
(archive->liststore,&iter,0,pixbuf,1,entry->filename,-1);
for (i = 0; i < archive->nc; i++)
{
Modified: xarchiver/trunk/src/archive.h
===================================================================
--- xarchiver/trunk/src/archive.h 2007-07-31 16:00:00 UTC (rev 25944)
+++ xarchiver/trunk/src/archive.h 2007-07-31 21:07:21 UTC (rev 25945)
@@ -122,7 +122,6 @@
gboolean xa_dump_child_error_messages (GIOChannel *ioc, GIOCondition cond,
gpointer data);
gint xa_find_archive_index (gint page_num);
gint xa_get_new_archive_idx();
-//gint xa_read_line (XArchive *archive, FILE *stream, gchar **return_string);
XEntry *xa_alloc_memory_for_each_row ( guint nc,GType column_types[]);
void xa_free_entry (XArchive *archive,XEntry *entry);
XEntry *xa_find_archive_entry(XEntry *entry, gchar *string);
Modified: xarchiver/trunk/src/mime.c
===================================================================
--- xarchiver/trunk/src/mime.c 2007-07-31 16:00:00 UTC (rev 25944)
+++ xarchiver/trunk/src/mime.c 2007-07-31 21:07:21 UTC (rev 25945)
@@ -26,9 +26,18 @@
{
const char *mime;
GdkPixbuf *pixbuf = NULL;
+ const char *icon_name = "GTK_STOCK_FILE";
mime = xdg_mime_get_mime_type_from_file_name(filename);
- pixbuf = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),mime,
GTK_ICON_SIZE_SMALL_TOOLBAR, 0, NULL);
+ g_print ("%s\n",mime);
+ if (strncmp(mime,"image/",6) == 0)
+ icon_name = "image";
+ else if (strcmp(mime,"text/html") == 0)
+ icon_name = "html";
+ else if (strcmp(mime,"application/octet-stream") == 0)
+ icon_name = "folder";
+
+ pixbuf = gtk_icon_theme_load_icon
(gtk_icon_theme_get_default(),icon_name, GTK_ICON_SIZE_SMALL_TOOLBAR, 0, NULL);
return pixbuf;
}
Modified: xarchiver/trunk/src/window.c
===================================================================
--- xarchiver/trunk/src/window.c 2007-07-31 16:00:00 UTC (rev 25944)
+++ xarchiver/trunk/src/window.c 2007-07-31 21:07:21 UTC (rev 25945)
@@ -474,13 +474,13 @@
xa_disable_delete_view_buttons (FALSE);
xa_set_button_state (1,1,0,0,0,0,0,0);
xa_set_window_title (MainWindow,NULL);
+ gtk_entry_set_text(GTK_ENTRY(location_entry),"");
}
else if ( current_page == 1)
gtk_notebook_set_show_tabs (notebook,FALSE);
else
gtk_notebook_set_show_tabs (notebook,TRUE);
- gtk_entry_set_text(GTK_ENTRY(location_entry),"");
xa_clean_archive_structure (archive[idx]);
archive[idx] = NULL;
@@ -1164,7 +1164,6 @@
/* First column: icon + text */
column = gtk_tree_view_column_new();
renderer = gtk_cell_renderer_pixbuf_new();
- g_object_set(G_OBJECT(renderer), "stock-size",
GTK_ICON_SIZE_SMALL_TOOLBAR, NULL);
gtk_tree_view_column_pack_start(column, renderer, FALSE);
gtk_tree_view_column_set_attributes(column, renderer, "pixbuf",0,NULL);
@@ -1175,6 +1174,7 @@
gtk_tree_view_column_set_resizable (column, TRUE);
gtk_tree_view_column_set_sort_column_id (column, 1);
gtk_tree_view_append_column (GTK_TREE_VIEW (archive->treeview), column);
+ gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
/* All the others */
for (x = 0; x < archive->nc; x++)
Modified: xarchiver/trunk/src/zip.c
===================================================================
--- xarchiver/trunk/src/zip.c 2007-07-31 16:00:00 UTC (rev 25944)
+++ xarchiver/trunk/src/zip.c 2007-07-31 21:07:21 UTC (rev 25945)
@@ -43,7 +43,7 @@
if (archive->child_pid == 0)
return;
- GType types[] =
{G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_UINT64,G_TYPE_UINT64,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING};
+ GType types[] =
{GDK_TYPE_PIXBUF,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_UINT64,G_TYPE_UINT64,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING};
archive->column_types = g_malloc0(sizeof(types));
for (i = 0; i < 10; i++)
archive->column_types[i] = types[i];
@@ -170,7 +170,6 @@
line[linesize-1] = '\0';
filename = line + n;
//item[0] = GTK_STOCK_DIRECTORY;//xa_get_mime_icon (line+a);
- xa_get_stock_mime_icon(filename);
archive->entry = xa_set_archive_entries_for_each_row
(archive,filename,item);
if (archive->entry != NULL)
{
_______________________________________________
Xfce4-commits mailing list
[email protected]
http://foo-projects.org/mailman/listinfo/xfce4-commits