[Xfce4-commits] r26880 - in xarchiver/branches: . xarchiver-pcman/src
Jen Yee Hong
pcman at xfce.org
Mon Apr 21 21:46:12 CEST 2008
Author: pcman
Date: 2008-04-21 19:46:12 +0000 (Mon, 21 Apr 2008)
New Revision: 26880
Added:
xarchiver/branches/xarchiver-pcman/
xarchiver/branches/xarchiver-pcman/src/Makefile.am
xarchiver/branches/xarchiver-pcman/src/glib-utils.c
xarchiver/branches/xarchiver-pcman/src/glib-utils.h
xarchiver/branches/xarchiver-pcman/src/mime-type/
Removed:
xarchiver/branches/xarchiver-pcman/src/Makefile.am
Modified:
xarchiver/branches/xarchiver-pcman/src/interface.c
xarchiver/branches/xarchiver-pcman/src/mime.c
xarchiver/branches/xarchiver-pcman/src/pref_dialog.c
xarchiver/branches/xarchiver-pcman/src/pref_dialog.h
xarchiver/branches/xarchiver-pcman/src/support.c
xarchiver/branches/xarchiver-pcman/src/window.c
Log:
Add my own developmental branch to help 0.5 release of XArchiver.
Disable 'icon size' and 'icon view' support temporarily for 0.5 release.
Add missing files and fix bugs in libmimetype.
Copied: xarchiver/branches/xarchiver-pcman (from rev 26878, xarchiver/trunk)
Deleted: xarchiver/branches/xarchiver-pcman/src/Makefile.am
Copied: xarchiver/branches/xarchiver-pcman/src/Makefile.am (from rev 26879, xarchiver/trunk/src/Makefile.am)
===================================================================
--- xarchiver/branches/xarchiver-pcman/src/Makefile.am (rev 0)
+++ xarchiver/branches/xarchiver-pcman/src/Makefile.am 2008-04-21 19:46:12 UTC (rev 26880)
@@ -0,0 +1,53 @@
+bin_PROGRAMS = xarchiver
+
+if USE_LIBMIMETYPE
+MIME_TYPE_DIR = mime-type
+MIME_LIB = $(top_builddir)/src/mime-type/libmimetype.la
+else
+MIME_TYPE_DIR = xdgmime
+MIME_LIB = $(top_builddir)/src/xdgmime/libxdgmime.la
+endif
+
+SUBDIRS = $(MIME_TYPE_DIR)
+
+xarchiver_SOURCES = \
+ socket.c socket.h \
+ main.c main.h \
+ string_utils.c string_utils.h \
+ mime.c mime.h \
+ support.c support.h \
+ archive.c archive.h \
+ interface.c interface.h \
+ window.c window.h \
+ arj.c arj.h \
+ deb.c deb.h \
+ zip.c zip.h \
+ rar.c rar.h \
+ 7zip.c 7zip.h \
+ tar.c tar.h \
+ bzip2.c bzip2.h \
+ gzip.c gzip.h \
+ rpm.c rpm.h \
+ lha.c lha.h \
+ extract_dialog.c extract_dialog.h \
+ add_dialog.c add_dialog.h \
+ new_dialog.c new_dialog.h \
+ pref_dialog.c pref_dialog.h \
+ glib-mem.h \
+ glib-utils.h \
+ glib-utils.c
+
+xarchiver_CFLAGS = \
+ @GTK_CFLAGS@ \
+ @GLIB_CFLAGS@ \
+ -DDATADIR=\"$(datadir)\" \
+ -DSRCDIR=\"$(top_srcdir)\" \
+ -DLOCALEDIR=\"$(localedir)\"
+
+xarchiver_LDADD = \
+ $(MIME_LIB) \
+ @GTK_LIBS@ \
+ @GLIB_LIBS@
+
+INCLUDES = \
+ -I${top_srcdir}
Copied: xarchiver/branches/xarchiver-pcman/src/glib-utils.c (from rev 26879, xarchiver/trunk/src/glib-utils.c)
===================================================================
--- xarchiver/branches/xarchiver-pcman/src/glib-utils.c (rev 0)
+++ xarchiver/branches/xarchiver-pcman/src/glib-utils.c 2008-04-21 19:46:12 UTC (rev 26880)
@@ -0,0 +1,65 @@
+/*
+* C++ Interface: glib-mem
+*
+* Description: Compatibility macros for older versions of glib
+*
+*
+* Author: Hong Jen Yee (PCMan) <pcman.tw (AT) gmail.com>, (C) 2006
+*
+* Copyright: See COPYING file that comes with this distribution
+*
+*/
+
+#include "glib-utils.h"
+
+/* older versions of glib don't provde these API */
+#if ! GLIB_CHECK_VERSION(2, 8, 0)
+
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+#include <string.h>
+#include <errno.h>
+
+int g_mkdir_with_parents(const gchar *pathname, int mode)
+{
+ struct stat statbuf;
+ char *dir, *sep;
+ dir = g_strdup( pathname );
+ sep = dir[0] == '/' ? dir + 1 : dir;
+ do {
+ sep = strchr( sep, '/' );
+ if( G_LIKELY( sep ) )
+ *sep = '\0';
+
+ if( stat( dir, &statbuf) == 0 )
+ {
+ if( ! S_ISDIR(statbuf.st_mode) ) /* parent not dir */
+ goto err;
+ }
+ else /* stat failed */
+ {
+ if( errno == ENOENT ) /* not exists */
+ {
+ if( mkdir( dir, mode ) == -1 )
+ goto err;
+ }
+ else
+ goto err; /* unknown error */
+ }
+
+ if( G_LIKELY( sep ) )
+ {
+ *sep = '/';
+ ++sep;
+ }
+ else
+ break;
+ }while( sep );
+ g_free( dir );
+ return 0;
+err:
+ g_free( dir );
+ return -1;
+}
+#endif
Copied: xarchiver/branches/xarchiver-pcman/src/glib-utils.h (from rev 26879, xarchiver/trunk/src/glib-utils.h)
===================================================================
--- xarchiver/branches/xarchiver-pcman/src/glib-utils.h (rev 0)
+++ xarchiver/branches/xarchiver-pcman/src/glib-utils.h 2008-04-21 19:46:12 UTC (rev 26880)
@@ -0,0 +1,24 @@
+/*
+* C++ Interface: glib-mem
+*
+* Description: Compatibility macros for older versions of glib
+*
+*
+* Author: Hong Jen Yee (PCMan) <pcman.tw (AT) gmail.com>, (C) 2006
+*
+* Copyright: See COPYING file that comes with this distribution
+*
+*/
+
+#ifndef _GLIB_UTILS_H_
+#define _GLIB_UTILS_H_
+
+#include <glib.h>
+
+#if ! GLIB_CHECK_VERSION(2, 8, 0)
+/* older versions of glib don't provde these API */
+int g_mkdir_with_parents(const gchar *pathname, int mode);
+#endif
+
+#endif
+
Modified: xarchiver/branches/xarchiver-pcman/src/interface.c
===================================================================
--- xarchiver/trunk/src/interface.c 2008-04-21 17:19:51 UTC (rev 26878)
+++ xarchiver/branches/xarchiver-pcman/src/interface.c 2008-04-21 19:46:12 UTC (rev 26880)
@@ -49,926 +49,964 @@
void xa_create_mainwindow (GtkWidget *MainWindow,gboolean show_location)
{
- GdkPixbuf *icon;
+ GdkPixbuf *icon;
- xa_create_popup_menu();
- tooltips = gtk_tooltips_new ();
- accel_group = gtk_accel_group_new ();
- xa_set_window_title (MainWindow , NULL);
+ xa_create_popup_menu();
+ tooltips = gtk_tooltips_new ();
+ accel_group = gtk_accel_group_new ();
+ xa_set_window_title (MainWindow , NULL);
- icon_theme = gtk_icon_theme_get_default();
- icon = gtk_icon_theme_load_icon(icon_theme, "xarchiver", 24, 0, NULL);
- gtk_window_set_icon (GTK_WINDOW(MainWindow),icon);
- g_signal_connect (G_OBJECT (MainWindow), "delete-event", G_CALLBACK (xa_quit_application), NULL);
+ icon_theme = gtk_icon_theme_get_default();
+ icon = gtk_icon_theme_load_icon(icon_theme, "xarchiver", 24, 0, NULL);
+ gtk_window_set_icon (GTK_WINDOW(MainWindow),icon);
+ g_signal_connect (G_OBJECT (MainWindow), "delete-event", G_CALLBACK (xa_quit_application), NULL);
- /* Create the menus */
- vbox1 = gtk_vbox_new (FALSE, 0);
- gtk_widget_show (vbox1);
- gtk_container_add (GTK_CONTAINER (MainWindow), vbox1);
+ /* Create the menus */
+ vbox1 = gtk_vbox_new (FALSE, 0);
+ gtk_widget_show (vbox1);
+ gtk_container_add (GTK_CONTAINER (MainWindow), vbox1);
- menubar1 = gtk_menu_bar_new ();
- gtk_widget_show (menubar1);
- gtk_box_pack_start (GTK_BOX (vbox1), menubar1, FALSE, FALSE, 0);
+ menubar1 = gtk_menu_bar_new ();
+ gtk_widget_show (menubar1);
+ gtk_box_pack_start (GTK_BOX (vbox1), menubar1, FALSE, FALSE, 0);
- menuitem1 = gtk_menu_item_new_with_mnemonic (_("_Archive"));
- gtk_widget_show (menuitem1);
- gtk_container_add (GTK_CONTAINER (menubar1), menuitem1);
+ menuitem1 = gtk_menu_item_new_with_mnemonic (_("_Archive"));
+ gtk_widget_show (menuitem1);
+ gtk_container_add (GTK_CONTAINER (menubar1), menuitem1);
- menuitem1_menu = gtk_menu_new ();
- gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem1), menuitem1_menu);
+ menuitem1_menu = gtk_menu_new ();
+ gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem1), menuitem1_menu);
- new1 = gtk_image_menu_item_new_from_stock ("gtk-new", accel_group);
- gtk_widget_show (new1);
- gtk_container_add (GTK_CONTAINER (menuitem1_menu), new1);
+ new1 = gtk_image_menu_item_new_from_stock ("gtk-new", accel_group);
+ gtk_widget_show (new1);
+ gtk_container_add (GTK_CONTAINER (menuitem1_menu), new1);
- open1 = gtk_image_menu_item_new_from_stock ("gtk-open", accel_group);
- gtk_widget_show (open1);
- gtk_container_add (GTK_CONTAINER (menuitem1_menu), open1);
+ open1 = gtk_image_menu_item_new_from_stock ("gtk-open", accel_group);
+ gtk_widget_show (open1);
+ gtk_container_add (GTK_CONTAINER (menuitem1_menu), open1);
- separatormenuitem1 = gtk_separator_menu_item_new ();
- gtk_widget_show (separatormenuitem1);
- gtk_container_add (GTK_CONTAINER (menuitem1_menu), separatormenuitem1);
- gtk_widget_set_sensitive (separatormenuitem1, FALSE);
+ separatormenuitem1 = gtk_separator_menu_item_new ();
+ gtk_widget_show (separatormenuitem1);
+ gtk_container_add (GTK_CONTAINER (menuitem1_menu), separatormenuitem1);
+ gtk_widget_set_sensitive (separatormenuitem1, FALSE);
- check_menu = gtk_image_menu_item_new_with_mnemonic (_("_Test"));
- gtk_widget_show (check_menu);
- gtk_widget_set_sensitive ( check_menu , FALSE);
- gtk_container_add (GTK_CONTAINER (menuitem1_menu), check_menu);
- gtk_widget_add_accelerator (check_menu, "activate",accel_group,GDK_t, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
+ check_menu = gtk_image_menu_item_new_with_mnemonic (_("_Test"));
+ gtk_widget_show (check_menu);
+ gtk_widget_set_sensitive ( check_menu , FALSE);
+ gtk_container_add (GTK_CONTAINER (menuitem1_menu), check_menu);
+ gtk_widget_add_accelerator (check_menu, "activate",accel_group,GDK_t, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
- tmp_image = gtk_image_new_from_stock ("gtk-index", GTK_ICON_SIZE_MENU);
- gtk_widget_show (tmp_image);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (check_menu), tmp_image);
+ tmp_image = gtk_image_new_from_stock ("gtk-index", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (tmp_image);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (check_menu), tmp_image);
- properties = gtk_image_menu_item_new_with_mnemonic (_("_Properties"));
- gtk_widget_show (properties);
- gtk_widget_set_sensitive ( properties , FALSE);
- gtk_container_add (GTK_CONTAINER (menuitem1_menu), properties);
- gtk_widget_add_accelerator (properties, "activate",accel_group,GDK_p, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
+ properties = gtk_image_menu_item_new_with_mnemonic (_("_Properties"));
+ gtk_widget_show (properties);
+ gtk_widget_set_sensitive ( properties , FALSE);
+ gtk_container_add (GTK_CONTAINER (menuitem1_menu), properties);
+ gtk_widget_add_accelerator (properties, "activate",accel_group,GDK_p, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
- tmp_image = gtk_image_new_from_stock ("gtk-properties", GTK_ICON_SIZE_MENU);
- gtk_widget_show (tmp_image);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (properties), tmp_image);
+ tmp_image = gtk_image_new_from_stock ("gtk-properties", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (tmp_image);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (properties), tmp_image);
- close1 = gtk_image_menu_item_new_from_stock ("gtk-close", accel_group);
- gtk_widget_set_sensitive (close1,FALSE);
- gtk_widget_show (close1);
- gtk_container_add (GTK_CONTAINER (menuitem1_menu), close1);
+ close1 = gtk_image_menu_item_new_from_stock ("gtk-close", accel_group);
+ gtk_widget_set_sensitive (close1,FALSE);
+ gtk_widget_show (close1);
+ gtk_container_add (GTK_CONTAINER (menuitem1_menu), close1);
- separatormenuitem2 = gtk_separator_menu_item_new ();
- gtk_widget_show (separatormenuitem2);
- gtk_container_add (GTK_CONTAINER (menuitem1_menu), separatormenuitem2);
- gtk_widget_set_sensitive (separatormenuitem2, FALSE);
+ separatormenuitem2 = gtk_separator_menu_item_new ();
+ gtk_widget_show (separatormenuitem2);
+ gtk_container_add (GTK_CONTAINER (menuitem1_menu), separatormenuitem2);
+ gtk_widget_set_sensitive (separatormenuitem2, FALSE);
- quit1 = gtk_image_menu_item_new_from_stock ("gtk-quit", accel_group);
- gtk_widget_show (quit1);
- gtk_container_add (GTK_CONTAINER (menuitem1_menu), quit1);
+ quit1 = gtk_image_menu_item_new_from_stock ("gtk-quit", accel_group);
+ gtk_widget_show (quit1);
+ gtk_container_add (GTK_CONTAINER (menuitem1_menu), quit1);
- menuitem2 = gtk_menu_item_new_with_mnemonic (_("_Action"));
- gtk_widget_show (menuitem2);
- gtk_container_add (GTK_CONTAINER (menubar1), menuitem2);
+ menuitem2 = gtk_menu_item_new_with_mnemonic (_("_Action"));
+ gtk_widget_show (menuitem2);
+ gtk_container_add (GTK_CONTAINER (menubar1), menuitem2);
- menuitem2_menu = gtk_menu_new ();
- gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem2), menuitem2_menu);
+ menuitem2_menu = gtk_menu_new ();
+ gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem2), menuitem2_menu);
- addfile = gtk_image_menu_item_new_with_mnemonic (_("_Add"));
- gtk_widget_set_sensitive (addfile,FALSE);
- gtk_widget_show (addfile);
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), addfile);
- gtk_widget_add_accelerator (addfile, "activate",accel_group,GDK_c, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
+ addfile = gtk_image_menu_item_new_with_mnemonic (_("_Add"));
+ gtk_widget_set_sensitive (addfile,FALSE);
+ gtk_widget_show (addfile);
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), addfile);
+ gtk_widget_add_accelerator (addfile, "activate",accel_group,GDK_c, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
- image2 = xa_main_window_find_image ("xarchiver-add.png", GTK_ICON_SIZE_MENU);
- gtk_widget_show (image2);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (addfile), image2);
+ image2 = xa_main_window_find_image ("xarchiver-add.png", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (image2);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (addfile), image2);
- extract_menu = gtk_image_menu_item_new_with_mnemonic (_("_Extract"));
- gtk_widget_set_sensitive (extract_menu,FALSE);
- gtk_widget_show (extract_menu);
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), extract_menu);
- gtk_widget_add_accelerator (extract_menu, "activate",accel_group,GDK_e, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
+ extract_menu = gtk_image_menu_item_new_with_mnemonic (_("_Extract"));
+ gtk_widget_set_sensitive (extract_menu,FALSE);
+ gtk_widget_show (extract_menu);
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), extract_menu);
+ gtk_widget_add_accelerator (extract_menu, "activate",accel_group,GDK_e, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
- image2 = xa_main_window_find_image ("xarchiver-extract.png", GTK_ICON_SIZE_MENU);
- gtk_widget_show (image2);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (extract_menu), image2);
+ image2 = xa_main_window_find_image ("xarchiver-extract.png", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (image2);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (extract_menu), image2);
- delete_menu = gtk_image_menu_item_new_from_stock ("gtk-delete", accel_group);
- gtk_widget_set_sensitive (delete_menu,FALSE);
- gtk_widget_show (delete_menu);
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), delete_menu);
- gtk_widget_add_accelerator (delete_menu, "activate",accel_group,GDK_d, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
+ delete_menu = gtk_image_menu_item_new_from_stock ("gtk-delete", accel_group);
+ gtk_widget_set_sensitive (delete_menu,FALSE);
+ gtk_widget_show (delete_menu);
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), delete_menu);
+ gtk_widget_add_accelerator (delete_menu, "activate",accel_group,GDK_d, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
- view_menu = gtk_image_menu_item_new_with_mnemonic (_("_View"));
- gtk_widget_set_sensitive (view_menu, FALSE);
- gtk_widget_show (view_menu);
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), view_menu);
- gtk_widget_add_accelerator (view_menu, "activate",accel_group,GDK_v, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
+ view_menu = gtk_image_menu_item_new_with_mnemonic (_("_View"));
+ gtk_widget_set_sensitive (view_menu, FALSE);
+ gtk_widget_show (view_menu);
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), view_menu);
+ gtk_widget_add_accelerator (view_menu, "activate",accel_group,GDK_v, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
- image2 = gtk_image_new_from_stock ("gtk-find", GTK_ICON_SIZE_MENU);
- gtk_widget_show (image2);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (view_menu), image2);
+ image2 = gtk_image_new_from_stock ("gtk-find", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (image2);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (view_menu), image2);
- separatormenuitem3 = gtk_separator_menu_item_new ();
- gtk_widget_show (separatormenuitem3);
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), separatormenuitem3);
- gtk_widget_set_sensitive (separatormenuitem3, FALSE);
+ separatormenuitem3 = gtk_separator_menu_item_new ();
+ gtk_widget_show (separatormenuitem3);
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), separatormenuitem3);
+ gtk_widget_set_sensitive (separatormenuitem3, FALSE);
- exe_menu = gtk_image_menu_item_new_with_mnemonic (_("Make SF_X"));
- gtk_widget_set_sensitive (exe_menu,FALSE);
- gtk_widget_show (exe_menu);
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), exe_menu);
- gtk_widget_add_accelerator (exe_menu, "activate",accel_group,GDK_x, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
+ exe_menu = gtk_image_menu_item_new_with_mnemonic (_("Make SF_X"));
+ gtk_widget_set_sensitive (exe_menu,FALSE);
+ gtk_widget_show (exe_menu);
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), exe_menu);
+ gtk_widget_add_accelerator (exe_menu, "activate",accel_group,GDK_x, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
- image2 = gtk_image_new_from_stock ("gtk-execute", GTK_ICON_SIZE_MENU);
- gtk_widget_show (image2);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (exe_menu), image2);
+ image2 = gtk_image_new_from_stock ("gtk-execute", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (image2);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (exe_menu), image2);
- comment_menu = gtk_image_menu_item_new_with_mnemonic (_("_Show comment"));
- gtk_widget_set_sensitive (comment_menu, FALSE);
- gtk_widget_show (comment_menu);
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), comment_menu);
- gtk_widget_add_accelerator (comment_menu, "activate",accel_group,GDK_s, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
+ comment_menu = gtk_image_menu_item_new_with_mnemonic (_("_Show comment"));
+ gtk_widget_set_sensitive (comment_menu, FALSE);
+ gtk_widget_show (comment_menu);
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), comment_menu);
+ gtk_widget_add_accelerator (comment_menu, "activate",accel_group,GDK_s, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
- tmp_image = gtk_image_new_from_stock ("gtk-justify-fill", GTK_ICON_SIZE_MENU);
- gtk_widget_show (tmp_image);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (comment_menu), tmp_image);
+ tmp_image = gtk_image_new_from_stock ("gtk-justify-fill", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (tmp_image);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (comment_menu), tmp_image);
- separatormenuitem4 = gtk_separator_menu_item_new ();
- gtk_widget_show (separatormenuitem4);
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), separatormenuitem4);
- gtk_widget_set_sensitive (separatormenuitem4, FALSE);
+ separatormenuitem4 = gtk_separator_menu_item_new ();
+ gtk_widget_show (separatormenuitem4);
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), separatormenuitem4);
+ gtk_widget_set_sensitive (separatormenuitem4, FALSE);
- select_all = gtk_image_menu_item_new_with_mnemonic (_("Sele_ct All"));
- gtk_widget_show (select_all);
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), select_all);
- gtk_widget_set_sensitive (select_all, FALSE);
- gtk_widget_add_accelerator (select_all, "activate",accel_group,GDK_a, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
+ select_all = gtk_image_menu_item_new_with_mnemonic (_("Sele_ct All"));
+ gtk_widget_show (select_all);
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), select_all);
+ gtk_widget_set_sensitive (select_all, FALSE);
+ gtk_widget_add_accelerator (select_all, "activate",accel_group,GDK_a, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
- deselect_all = gtk_image_menu_item_new_with_mnemonic (_("Dese_lect All"));
- gtk_widget_show (deselect_all);
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), deselect_all);
- gtk_widget_set_sensitive (deselect_all, FALSE);
- gtk_widget_add_accelerator (deselect_all, "activate",accel_group,GDK_l, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
+ deselect_all = gtk_image_menu_item_new_with_mnemonic (_("Dese_lect All"));
+ gtk_widget_show (deselect_all);
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), deselect_all);
+ gtk_widget_set_sensitive (deselect_all, FALSE);
+ gtk_widget_add_accelerator (deselect_all, "activate",accel_group,GDK_l, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
- separatormenuitem5 = gtk_separator_menu_item_new ();
- gtk_widget_show (separatormenuitem5);
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), separatormenuitem5);
- gtk_widget_set_sensitive (separatormenuitem5, FALSE);
+ separatormenuitem5 = gtk_separator_menu_item_new ();
+ gtk_widget_show (separatormenuitem5);
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), separatormenuitem5);
+ gtk_widget_set_sensitive (separatormenuitem5, FALSE);
- view_shell_output1 = gtk_image_menu_item_new_with_mnemonic (_("C_md-line output"));
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), view_shell_output1);
- gtk_widget_add_accelerator (view_shell_output1, "activate",accel_group,GDK_m, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
- gtk_widget_set_sensitive (view_shell_output1,FALSE);
- gtk_widget_show (view_shell_output1);
+ view_shell_output1 = gtk_image_menu_item_new_with_mnemonic (_("C_md-line output"));
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), view_shell_output1);
+ gtk_widget_add_accelerator (view_shell_output1, "activate",accel_group,GDK_m, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
+ gtk_widget_set_sensitive (view_shell_output1,FALSE);
+ gtk_widget_show (view_shell_output1);
- image2 = gtk_image_new_from_stock ("gtk-find-and-replace", GTK_ICON_SIZE_MENU);
- gtk_widget_show (image2);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (view_shell_output1), image2);
+ image2 = gtk_image_new_from_stock ("gtk-find-and-replace", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (image2);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (view_shell_output1), image2);
- password_entry = gtk_image_menu_item_new_with_mnemonic (_("Reset passwo_rd"));
- gtk_widget_show (password_entry);
- gtk_widget_set_sensitive ( password_entry , FALSE );
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), password_entry);
- gtk_widget_add_accelerator (password_entry, "activate",accel_group,GDK_r, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
+ password_entry = gtk_image_menu_item_new_with_mnemonic (_("Reset passwo_rd"));
+ gtk_widget_show (password_entry);
+ gtk_widget_set_sensitive ( password_entry , FALSE );
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), password_entry);
+ gtk_widget_add_accelerator (password_entry, "activate",accel_group,GDK_r, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
- separatormenuitem6 = gtk_separator_menu_item_new ();
- gtk_widget_show (separatormenuitem6);
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), separatormenuitem6);
- gtk_widget_set_sensitive (separatormenuitem6, FALSE);
+ separatormenuitem6 = gtk_separator_menu_item_new ();
+ gtk_widget_show (separatormenuitem6);
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), separatormenuitem6);
+ gtk_widget_set_sensitive (separatormenuitem6, FALSE);
- prefs_menu = gtk_image_menu_item_new_with_mnemonic (_("_Preferences"));
- gtk_widget_show (prefs_menu);
- gtk_container_add (GTK_CONTAINER (menuitem2_menu), prefs_menu);
- gtk_widget_add_accelerator (prefs_menu, "activate",accel_group,GDK_p, GDK_MOD1_MASK, GTK_ACCEL_VISIBLE);
+ prefs_menu = gtk_image_menu_item_new_with_mnemonic (_("_Preferences"));
+ gtk_widget_show (prefs_menu);
+ gtk_container_add (GTK_CONTAINER (menuitem2_menu), prefs_menu);
+ gtk_widget_add_accelerator (prefs_menu, "activate",accel_group,GDK_p, GDK_MOD1_MASK, GTK_ACCEL_VISIBLE);
- tmp_image = gtk_image_new_from_stock ("gtk-preferences", GTK_ICON_SIZE_MENU);
- gtk_widget_show (tmp_image);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (prefs_menu), tmp_image);
+ tmp_image = gtk_image_new_from_stock ("gtk-preferences", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (tmp_image);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (prefs_menu), tmp_image);
- menuitem4 = gtk_menu_item_new_with_mnemonic (_("_Help"));
- gtk_widget_show (menuitem4);
- gtk_container_add (GTK_CONTAINER (menubar1), menuitem4);
+ menuitem4 = gtk_menu_item_new_with_mnemonic (_("_Help"));
+ gtk_widget_show (menuitem4);
+ gtk_container_add (GTK_CONTAINER (menubar1), menuitem4);
- menuitem4_menu = gtk_menu_new ();
- gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem4), menuitem4_menu);
+ menuitem4_menu = gtk_menu_new ();
+ gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem4), menuitem4_menu);
- help1 = gtk_image_menu_item_new_from_stock ("gtk-help", accel_group);
- gtk_widget_show (help1);
- gtk_container_add (GTK_CONTAINER (menuitem4_menu), help1);
+ help1 = gtk_image_menu_item_new_from_stock ("gtk-help", accel_group);
+ gtk_widget_show (help1);
+ gtk_container_add (GTK_CONTAINER (menuitem4_menu), help1);
- about1 = gtk_image_menu_item_new_from_stock ("gtk-about", accel_group);
- gtk_widget_show (about1);
- gtk_container_add (GTK_CONTAINER (menuitem4_menu), about1);
+ about1 = gtk_image_menu_item_new_from_stock ("gtk-about", accel_group);
+ gtk_widget_show (about1);
+ gtk_container_add (GTK_CONTAINER (menuitem4_menu), about1);
- /* Create the toolbar */
- toolbar1 = gtk_toolbar_new ();
- gtk_widget_show (toolbar1);
- gtk_box_pack_start (GTK_BOX (vbox1), toolbar1, FALSE, FALSE, 0);
- gtk_toolbar_set_style (GTK_TOOLBAR (toolbar1), GTK_TOOLBAR_ICONS);
- tmp_toolbar_icon_size = gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1));
+ /* Create the toolbar */
+ toolbar1 = gtk_toolbar_new ();
+ gtk_widget_show (toolbar1);
+ gtk_box_pack_start (GTK_BOX (vbox1), toolbar1, FALSE, FALSE, 0);
+ gtk_toolbar_set_style (GTK_TOOLBAR (toolbar1), GTK_TOOLBAR_ICONS);
+ tmp_toolbar_icon_size = gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1));
- tmp_image = gtk_image_new_from_stock ("gtk-new", tmp_toolbar_icon_size);
- gtk_widget_show (tmp_image);
- New_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("New"));
- gtk_widget_show (New_button);
- gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (New_button), FALSE);
- gtk_container_add (GTK_CONTAINER (toolbar1), New_button);
- gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (New_button), tooltips, _("Create a new archive"), NULL);
+ tmp_image = gtk_image_new_from_stock ("gtk-new", tmp_toolbar_icon_size);
+ gtk_widget_show (tmp_image);
+ New_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("New"));
+ gtk_widget_show (New_button);
+ gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (New_button), FALSE);
+ gtk_container_add (GTK_CONTAINER (toolbar1), New_button);
+ gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (New_button), tooltips, _("Create a new archive"), NULL);
- tmp_image = gtk_image_new_from_stock ("gtk-open", tmp_toolbar_icon_size);
- gtk_widget_show (tmp_image);
- Open_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Open"));
- gtk_widget_show (Open_button);
- gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (Open_button), FALSE);
- gtk_container_add (GTK_CONTAINER (toolbar1), Open_button);
- gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (Open_button), tooltips, _("Open an archive"), NULL);
+ tmp_image = gtk_image_new_from_stock ("gtk-open", tmp_toolbar_icon_size);
+ gtk_widget_show (tmp_image);
+ Open_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Open"));
+ gtk_widget_show (Open_button);
+ gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (Open_button), FALSE);
+ gtk_container_add (GTK_CONTAINER (toolbar1), Open_button);
+ gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (Open_button), tooltips, _("Open an archive"), NULL);
- separatortoolitem1 = (GtkWidget*) gtk_separator_tool_item_new ();
- gtk_widget_show (separatortoolitem1);
- gtk_container_add (GTK_CONTAINER (toolbar1), separatortoolitem1);
+ separatortoolitem1 = (GtkWidget*) gtk_separator_tool_item_new ();
+ gtk_widget_show (separatortoolitem1);
+ gtk_container_add (GTK_CONTAINER (toolbar1), separatortoolitem1);
- tmp_image = gtk_image_new_from_stock ("gtk-go-back", tmp_toolbar_icon_size);
- gtk_widget_show (tmp_image);
- back_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Back"));
- gtk_widget_set_sensitive(back_button,FALSE);
- gtk_widget_show (back_button);
- gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (back_button), FALSE);
- gtk_container_add (GTK_CONTAINER (toolbar1), back_button);
- gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (back_button), tooltips, _("Back"), NULL);
+ tmp_image = gtk_image_new_from_stock ("gtk-go-back", tmp_toolbar_icon_size);
+ gtk_widget_show (tmp_image);
+ back_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Back"));
+ gtk_widget_set_sensitive(back_button,FALSE);
+ gtk_widget_show (back_button);
+ gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (back_button), FALSE);
+ gtk_container_add (GTK_CONTAINER (toolbar1), back_button);
+ gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (back_button), tooltips, _("Back"), NULL);
- tmp_image = gtk_image_new_from_stock ("gtk-go-up", tmp_toolbar_icon_size);
- gtk_widget_show (tmp_image);
- up_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Up"));
- gtk_widget_set_sensitive(up_button,FALSE);
- gtk_widget_show (up_button);
- gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (up_button), FALSE);
- gtk_container_add (GTK_CONTAINER (toolbar1), up_button);
- gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (up_button), tooltips, _("Up"), NULL);
+ tmp_image = gtk_image_new_from_stock ("gtk-go-up", tmp_toolbar_icon_size);
+ gtk_widget_show (tmp_image);
+ up_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Up"));
+ gtk_widget_set_sensitive(up_button,FALSE);
+ gtk_widget_show (up_button);
+ gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (up_button), FALSE);
+ gtk_container_add (GTK_CONTAINER (toolbar1), up_button);
+ gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (up_button), tooltips, _("Up"), NULL);
- tmp_image = gtk_image_new_from_stock ("gtk-go-forward", tmp_toolbar_icon_size);
- gtk_widget_show (tmp_image);
- forward_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Forward"));
- gtk_widget_set_sensitive(forward_button,FALSE);
- gtk_widget_show (forward_button);
- gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (forward_button), FALSE);
- gtk_container_add (GTK_CONTAINER (toolbar1), forward_button);
- gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (forward_button), tooltips, _("Forward"), NULL);
+ tmp_image = gtk_image_new_from_stock ("gtk-go-forward", tmp_toolbar_icon_size);
+ gtk_widget_show (tmp_image);
+ forward_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Forward"));
+ gtk_widget_set_sensitive(forward_button,FALSE);
+ gtk_widget_show (forward_button);
+ gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (forward_button), FALSE);
+ gtk_container_add (GTK_CONTAINER (toolbar1), forward_button);
+ gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (forward_button), tooltips, _("Forward"), NULL);
- tmp_image = gtk_image_new_from_stock ("gtk-home", tmp_toolbar_icon_size);
- gtk_widget_show (tmp_image);
- home_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Home"));
- gtk_widget_set_sensitive(home_button,FALSE);
- gtk_widget_show (home_button);
- gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (home_button), FALSE);
- gtk_container_add (GTK_CONTAINER (toolbar1), home_button);
- gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (home_button), tooltips, _("Root"), NULL);
+ tmp_image = gtk_image_new_from_stock ("gtk-home", tmp_toolbar_icon_size);
+ gtk_widget_show (tmp_image);
+ home_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Home"));
+ gtk_widget_set_sensitive(home_button,FALSE);
+ gtk_widget_show (home_button);
+ gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (home_button), FALSE);
+ gtk_container_add (GTK_CONTAINER (toolbar1), home_button);
+ gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (home_button), tooltips, _("Root"), NULL);
- separatortoolitem3 = (GtkWidget*) gtk_separator_tool_item_new ();
- gtk_widget_show (separatortoolitem3);
- gtk_container_add (GTK_CONTAINER (toolbar1), separatortoolitem3);
+ separatortoolitem3 = (GtkWidget*) gtk_separator_tool_item_new ();
+ gtk_widget_show (separatortoolitem3);
+ gtk_container_add (GTK_CONTAINER (toolbar1), separatortoolitem3);
- tmp_image = xa_main_window_find_image("xarchiver-add.png", GTK_ICON_SIZE_LARGE_TOOLBAR);
- gtk_widget_show (tmp_image);
- AddFile_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Add"));
- gtk_widget_set_sensitive (AddFile_button,FALSE);
- gtk_widget_show (AddFile_button);
- gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (AddFile_button), FALSE);
- gtk_container_add (GTK_CONTAINER (toolbar1), AddFile_button);
- gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (AddFile_button), tooltips, _("Add files"), NULL);
+ tmp_image = xa_main_window_find_image("xarchiver-add.png", GTK_ICON_SIZE_LARGE_TOOLBAR);
+ gtk_widget_show (tmp_image);
+ AddFile_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Add"));
+ gtk_widget_set_sensitive (AddFile_button,FALSE);
+ gtk_widget_show (AddFile_button);
+ gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (AddFile_button), FALSE);
+ gtk_container_add (GTK_CONTAINER (toolbar1), AddFile_button);
+ gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (AddFile_button), tooltips, _("Add files"), NULL);
- tmp_image = xa_main_window_find_image("xarchiver-extract.png", GTK_ICON_SIZE_LARGE_TOOLBAR);
- gtk_widget_show (tmp_image);
- Extract_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Extract"));
- gtk_widget_set_sensitive (Extract_button,FALSE);
- gtk_widget_show (Extract_button);
- gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (Extract_button), FALSE);
- gtk_container_add (GTK_CONTAINER (toolbar1), Extract_button);
- gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (Extract_button), tooltips, _("Extract files"), NULL);
+ tmp_image = xa_main_window_find_image("xarchiver-extract.png", GTK_ICON_SIZE_LARGE_TOOLBAR);
+ gtk_widget_show (tmp_image);
+ Extract_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Extract"));
+ gtk_widget_set_sensitive (Extract_button,FALSE);
+ gtk_widget_show (Extract_button);
+ gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (Extract_button), FALSE);
+ gtk_container_add (GTK_CONTAINER (toolbar1), Extract_button);
+ gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (Extract_button), tooltips, _("Extract files"), NULL);
- tmp_image = gtk_image_new_from_stock ("gtk-find", tmp_toolbar_icon_size);
- gtk_widget_show (tmp_image);
- View_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("View"));
- gtk_widget_show (View_button);
- gtk_widget_set_sensitive (View_button,FALSE);
- gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (View_button), FALSE);
- gtk_container_add (GTK_CONTAINER (toolbar1), View_button);
- gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (View_button), tooltips, _("View file with an external editor/viewer"), NULL);
+ tmp_image = gtk_image_new_from_stock ("gtk-find", tmp_toolbar_icon_size);
+ gtk_widget_show (tmp_image);
+ View_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("View"));
+ gtk_widget_show (View_button);
+ gtk_widget_set_sensitive (View_button,FALSE);
+ gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (View_button), FALSE);
+ gtk_container_add (GTK_CONTAINER (toolbar1), View_button);
+ gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (View_button), tooltips, _("View file with an external editor/viewer"), NULL);
- separatortoolitem2 = (GtkWidget*) gtk_separator_tool_item_new ();
- gtk_widget_show (separatortoolitem2);
- gtk_container_add (GTK_CONTAINER (toolbar1), separatortoolitem2);
+ separatortoolitem2 = (GtkWidget*) gtk_separator_tool_item_new ();
+ gtk_widget_show (separatortoolitem2);
+ gtk_container_add (GTK_CONTAINER (toolbar1), separatortoolitem2);
- tmp_image = gtk_image_new_from_stock ("gtk-stop", tmp_toolbar_icon_size);
- gtk_widget_show (tmp_image);
- Stop_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Stop"));
- gtk_widget_set_sensitive (Stop_button,FALSE);
- gtk_widget_show (Stop_button);
- gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM ( Stop_button ), FALSE);
- gtk_container_add (GTK_CONTAINER (toolbar1), Stop_button);
- gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (Stop_button), tooltips, _("Cancel current operation"), NULL);
+ tmp_image = gtk_image_new_from_stock ("gtk-stop", tmp_toolbar_icon_size);
+ gtk_widget_show (tmp_image);
+ Stop_button = (GtkWidget*) gtk_tool_button_new (tmp_image, _("Stop"));
+ gtk_widget_set_sensitive (Stop_button,FALSE);
+ gtk_widget_show (Stop_button);
+ gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM ( Stop_button ), FALSE);
+ gtk_container_add (GTK_CONTAINER (toolbar1), Stop_button);
+ gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (Stop_button), tooltips, _("Cancel current operation"), NULL);
- /* Location entry */
- toolbar2 = gtk_toolbar_new ();
- gtk_box_pack_start (GTK_BOX (vbox1), toolbar2, FALSE, FALSE, 0);
+ /* Location entry */
+ toolbar2 = gtk_toolbar_new ();
+ gtk_box_pack_start (GTK_BOX (vbox1), toolbar2, FALSE, FALSE, 0);
- toolitem1 = (GtkWidget*)gtk_tool_item_new();
- gtk_tool_item_set_expand(GTK_TOOL_ITEM(toolitem1), TRUE);
- gtk_container_add (GTK_CONTAINER (toolbar2), toolitem1);
+ toolitem1 = (GtkWidget*)gtk_tool_item_new();
+ gtk_tool_item_set_expand(GTK_TOOL_ITEM(toolitem1), TRUE);
+ gtk_container_add (GTK_CONTAINER (toolbar2), toolitem1);
- hbox1 = gtk_hbox_new(FALSE,2);
- gtk_container_add(GTK_CONTAINER (toolitem1),hbox1);
+ hbox1 = gtk_hbox_new(FALSE,2);
+ gtk_container_add(GTK_CONTAINER (toolitem1),hbox1);
- location_label = gtk_label_new(_("Location:"));
- gtk_box_pack_start (GTK_BOX (hbox1), location_label, FALSE, FALSE, 1);
+ location_label = gtk_label_new(_("Location:"));
+ gtk_box_pack_start (GTK_BOX (hbox1), location_label, FALSE, FALSE, 1);
- location_entry = gtk_entry_new();
- gtk_box_pack_start (GTK_BOX (hbox1), location_entry, TRUE, TRUE, 0);
- g_signal_connect (G_OBJECT (location_entry), "activate", G_CALLBACK (xa_location_entry_activated), NULL);
- if (show_location)
- gtk_widget_show_all(toolbar2);
+ location_entry = gtk_entry_new();
+ gtk_box_pack_start (GTK_BOX (hbox1), location_entry, TRUE, TRUE, 0);
+ g_signal_connect (G_OBJECT (location_entry), "activate", G_CALLBACK (xa_location_entry_activated), NULL);
+ if (show_location)
+ gtk_widget_show_all(toolbar2);
- /* Create the notebook widget */
- notebook = GTK_NOTEBOOK(gtk_notebook_new() );
- gtk_box_pack_start (GTK_BOX(vbox1), GTK_WIDGET(notebook),TRUE,TRUE,0);
- gtk_notebook_set_tab_pos (notebook, GTK_POS_TOP);
- gtk_notebook_set_scrollable (notebook,TRUE);
- gtk_notebook_popup_enable (notebook);
- gtk_widget_show (GTK_WIDGET(notebook));
- g_signal_connect ((gpointer) notebook, "switch-page",G_CALLBACK (xa_page_has_changed),NULL);
+ /* Create the notebook widget */
+ notebook = GTK_NOTEBOOK(gtk_notebook_new() );
+ gtk_box_pack_start (GTK_BOX(vbox1), GTK_WIDGET(notebook),TRUE,TRUE,0);
+ gtk_notebook_set_tab_pos (notebook, GTK_POS_TOP);
+ gtk_notebook_set_scrollable (notebook,TRUE);
+ gtk_notebook_popup_enable (notebook);
+ gtk_widget_show (GTK_WIDGET(notebook));
+ g_signal_connect ((gpointer) notebook, "switch-page",G_CALLBACK (xa_page_has_changed),NULL);
- gtk_drag_dest_set (GTK_WIDGET(notebook),GTK_DEST_DEFAULT_ALL,drop_targets,1,GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK | GDK_ACTION_ASK);
- g_signal_connect (G_OBJECT (notebook), "drag-data-received",G_CALLBACK (on_drag_data_received), NULL);
+ gtk_drag_dest_set (GTK_WIDGET(notebook),GTK_DEST_DEFAULT_ALL,drop_targets,1,GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK | GDK_ACTION_ASK);
+ g_signal_connect (G_OBJECT (notebook), "drag-data-received",G_CALLBACK (on_drag_data_received), NULL);
- hbox_sb = gtk_hbox_new (FALSE, 0);
- gtk_widget_show (hbox_sb);
- gtk_box_pack_end (GTK_BOX (vbox1), hbox_sb, FALSE, TRUE, 0);
+ hbox_sb = gtk_hbox_new (FALSE, 0);
+ gtk_widget_show (hbox_sb);
+ gtk_box_pack_end (GTK_BOX (vbox1), hbox_sb, FALSE, TRUE, 0);
- viewport1 = gtk_viewport_new (NULL, NULL);
- gtk_widget_show (viewport1);
- gtk_box_pack_start (GTK_BOX (hbox_sb), viewport1, TRUE, TRUE, 0);
+ viewport1 = gtk_viewport_new (NULL, NULL);
+ gtk_widget_show (viewport1);
+ gtk_box_pack_start (GTK_BOX (hbox_sb), viewport1, TRUE, TRUE, 0);
- info_label = gtk_label_new (NULL);
- gtk_misc_set_alignment (GTK_MISC(info_label), 0.0, 0.5);
- gtk_widget_show (info_label);
- gtk_container_add (GTK_CONTAINER (viewport1), info_label);
+ info_label = gtk_label_new (NULL);
+ gtk_misc_set_alignment (GTK_MISC(info_label), 0.0, 0.5);
+ gtk_widget_show (info_label);
+ gtk_container_add (GTK_CONTAINER (viewport1), info_label);
- viewport2 = gtk_viewport_new (NULL, NULL);
- gtk_box_pack_start (GTK_BOX (hbox_sb), viewport2, TRUE, TRUE, 0);
+ viewport2 = gtk_viewport_new (NULL, NULL);
+ gtk_box_pack_start (GTK_BOX (hbox_sb), viewport2, TRUE, TRUE, 0);
- progressbar = gtk_progress_bar_new ();
- gtk_widget_show (progressbar);
- gtk_widget_set_size_request(progressbar, 80, 1);
- gtk_container_add (GTK_CONTAINER (viewport2), progressbar);
+ progressbar = gtk_progress_bar_new ();
+ gtk_widget_show (progressbar);
+ gtk_widget_set_size_request(progressbar, 80, 1);
+ gtk_container_add (GTK_CONTAINER (viewport2), progressbar);
- g_signal_connect ((gpointer) new1, "activate", G_CALLBACK (xa_new_archive), NULL);
- g_signal_connect ((gpointer) open1, "activate", G_CALLBACK (xa_open_archive), NULL);
- g_signal_connect ((gpointer) check_menu, "activate", G_CALLBACK (xa_test_archive), NULL);
- g_signal_connect ((gpointer) properties, "activate", G_CALLBACK (xa_archive_properties), NULL);
- g_signal_connect ((gpointer) extract_menu, "activate", G_CALLBACK (xa_extract_archive), NULL);
- g_signal_connect ((gpointer) exe_menu, "activate", G_CALLBACK (xa_convert_sfx), NULL);
- g_signal_connect ((gpointer) addfile, "activate", G_CALLBACK (xa_add_files_archive), NULL);
- g_signal_connect ((gpointer) view_shell_output1, "activate", G_CALLBACK (xa_show_cmd_line_output), NULL);
- g_signal_connect ((gpointer) select_all, "activate", G_CALLBACK (xa_select_all), NULL);
- g_signal_connect ((gpointer) deselect_all, "activate", G_CALLBACK (xa_deselect_all), NULL);
- g_signal_connect ((gpointer) password_entry, "activate", G_CALLBACK (xa_reset_password), NULL);
- g_signal_connect ((gpointer) prefs_menu, "activate", G_CALLBACK (xa_show_prefs_dialog), NULL);
- g_signal_connect ((gpointer) close1, "activate", G_CALLBACK (xa_close_archive), NULL);
- g_signal_connect ((gpointer) quit1, "activate", G_CALLBACK (xa_quit_application), NULL);
- g_signal_connect ((gpointer) delete_menu, "activate", G_CALLBACK (xa_delete_archive), NULL);
- g_signal_connect ((gpointer) view_menu, "activate", G_CALLBACK (xa_view_file_inside_archive), NULL);
- g_signal_connect ((gpointer) comment_menu, "activate", G_CALLBACK (xa_show_archive_comment), NULL);
- g_signal_connect ((gpointer) help1, "activate", G_CALLBACK (xa_show_help), NULL);
- g_signal_connect ((gpointer) about1, "activate", G_CALLBACK (xa_about), NULL);
+ g_signal_connect ((gpointer) new1, "activate", G_CALLBACK (xa_new_archive), NULL);
+ g_signal_connect ((gpointer) open1, "activate", G_CALLBACK (xa_open_archive), NULL);
+ g_signal_connect ((gpointer) check_menu, "activate", G_CALLBACK (xa_test_archive), NULL);
+ g_signal_connect ((gpointer) properties, "activate", G_CALLBACK (xa_archive_properties), NULL);
+ g_signal_connect ((gpointer) extract_menu, "activate", G_CALLBACK (xa_extract_archive), NULL);
+ g_signal_connect ((gpointer) exe_menu, "activate", G_CALLBACK (xa_convert_sfx), NULL);
+ g_signal_connect ((gpointer) addfile, "activate", G_CALLBACK (xa_add_files_archive), NULL);
+ g_signal_connect ((gpointer) view_shell_output1, "activate", G_CALLBACK (xa_show_cmd_line_output), NULL);
+ g_signal_connect ((gpointer) select_all, "activate", G_CALLBACK (xa_select_all), NULL);
+ g_signal_connect ((gpointer) deselect_all, "activate", G_CALLBACK (xa_deselect_all), NULL);
+ g_signal_connect ((gpointer) password_entry, "activate", G_CALLBACK (xa_reset_password), NULL);
+ g_signal_connect ((gpointer) prefs_menu, "activate", G_CALLBACK (xa_show_prefs_dialog), NULL);
+ g_signal_connect ((gpointer) close1, "activate", G_CALLBACK (xa_close_archive), NULL);
+ g_signal_connect ((gpointer) quit1, "activate", G_CALLBACK (xa_quit_application), NULL);
+ g_signal_connect ((gpointer) delete_menu, "activate", G_CALLBACK (xa_delete_archive), NULL);
+ g_signal_connect ((gpointer) view_menu, "activate", G_CALLBACK (xa_view_file_inside_archive), NULL);
+ g_signal_connect ((gpointer) comment_menu, "activate", G_CALLBACK (xa_show_archive_comment), NULL);
+ g_signal_connect ((gpointer) help1, "activate", G_CALLBACK (xa_show_help), NULL);
+ g_signal_connect ((gpointer) about1, "activate", G_CALLBACK (xa_about), NULL);
- g_signal_connect ((gpointer) New_button, "clicked", G_CALLBACK (xa_new_archive), NULL);
- g_signal_connect ((gpointer) Open_button, "clicked", G_CALLBACK (xa_open_archive), NULL);
+ g_signal_connect ((gpointer) New_button, "clicked", G_CALLBACK (xa_new_archive), NULL);
+ g_signal_connect ((gpointer) Open_button, "clicked", G_CALLBACK (xa_open_archive), NULL);
- g_signal_connect ((gpointer) back_button, "clicked", G_CALLBACK (xa_handle_navigation_buttons), (gpointer) 1 );
- g_signal_connect ((gpointer) up_button, "clicked", G_CALLBACK (xa_handle_navigation_buttons), (gpointer) 2 );
- g_signal_connect ((gpointer) forward_button,"clicked", G_CALLBACK (xa_handle_navigation_buttons), (gpointer) 3 );
- g_signal_connect ((gpointer) home_button, "clicked", G_CALLBACK (xa_handle_navigation_buttons), (gpointer) 0 );
+ g_signal_connect ((gpointer) back_button, "clicked", G_CALLBACK (xa_handle_navigation_buttons), (gpointer) 1 );
+ g_signal_connect ((gpointer) up_button, "clicked", G_CALLBACK (xa_handle_navigation_buttons), (gpointer) 2 );
+ g_signal_connect ((gpointer) forward_button,"clicked", G_CALLBACK (xa_handle_navigation_buttons), (gpointer) 3 );
+ g_signal_connect ((gpointer) home_button, "clicked", G_CALLBACK (xa_handle_navigation_buttons), (gpointer) 0 );
- g_signal_connect ((gpointer) AddFile_button,"clicked", G_CALLBACK (xa_add_files_archive), NULL);
- g_signal_connect ((gpointer) Extract_button,"clicked", G_CALLBACK (xa_extract_archive), NULL);
- g_signal_connect ((gpointer) View_button, "clicked", G_CALLBACK (xa_view_file_inside_archive),NULL);
- g_signal_connect ((gpointer) Stop_button, "clicked", G_CALLBACK (xa_cancel_archive), NULL);
- g_signal_connect (MainWindow, "key-press-event", G_CALLBACK (key_press_function), NULL);
+ g_signal_connect ((gpointer) AddFile_button,"clicked", G_CALLBACK (xa_add_files_archive), NULL);
+ g_signal_connect ((gpointer) Extract_button,"clicked", G_CALLBACK (xa_extract_archive), NULL);
+ g_signal_connect ((gpointer) View_button, "clicked", G_CALLBACK (xa_view_file_inside_archive),NULL);
+ g_signal_connect ((gpointer) Stop_button, "clicked", G_CALLBACK (xa_cancel_archive), NULL);
+ g_signal_connect (MainWindow, "key-press-event", G_CALLBACK (key_press_function), NULL);
- gtk_window_add_accel_group (GTK_WINDOW (MainWindow), accel_group);
+ gtk_window_add_accel_group (GTK_WINDOW (MainWindow), accel_group);
}
int xa_progressbar_pulse (gpointer data)
{
- if ( ! GTK_WIDGET_VISIBLE(viewport2) )
- return FALSE;
+ if ( ! GTK_WIDGET_VISIBLE(viewport2) )
+ return FALSE;
- gtk_progress_bar_pulse(GTK_PROGRESS_BAR(progressbar) );
- return TRUE;
+ gtk_progress_bar_pulse(GTK_PROGRESS_BAR(progressbar) );
+ return TRUE;
}
void xa_page_has_changed (GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer user_data)
{
- gint id;
- GtkTreeSelection *selection;
+ gint id;
+ GtkTreeSelection *selection;
- id = xa_find_archive_index (page_num);
- if (id == -1)
- return;
+ id = xa_find_archive_index (page_num);
+ if (id == -1)
+ return;
- xa_set_window_title (MainWindow , archive[id]->path);
+ xa_set_window_title (MainWindow , archive[id]->path);
- if ( GTK_WIDGET_VISIBLE (viewport2) )
- {
- if (archive[id]->status == XA_ARCHIVESTATUS_IDLE)
- {
- gtk_widget_set_sensitive (Stop_button , FALSE);
- goto here;
- }
- xa_set_button_state (0,0,0,0,0,0,0,0);
- gtk_widget_set_sensitive ( Stop_button , TRUE);
- return;
- }
- xa_set_button_state (1,1,GTK_WIDGET_IS_SENSITIVE(close1),archive[id]->can_add,archive[id]->can_extract,archive[id]->has_sfx,archive[id]->has_test,archive[id]->has_properties);
+ if ( GTK_WIDGET_VISIBLE (viewport2) )
+ {
+ if (archive[id]->status == XA_ARCHIVESTATUS_IDLE)
+ {
+ gtk_widget_set_sensitive (Stop_button , FALSE);
+ goto here;
+ }
+ xa_set_button_state (0,0,0,0,0,0,0,0);
+ gtk_widget_set_sensitive ( Stop_button , TRUE);
+ return;
+ }
+ xa_set_button_state (1,1,GTK_WIDGET_IS_SENSITIVE(close1),archive[id]->can_add,archive[id]->can_extract,archive[id]->has_sfx,archive[id]->has_test,archive[id]->has_properties);
here:
- if (archive[id]->has_comment)
- gtk_widget_set_sensitive (comment_menu,TRUE);
- else
- gtk_widget_set_sensitive (comment_menu,FALSE);
+ if (archive[id]->has_comment)
+ gtk_widget_set_sensitive (comment_menu,TRUE);
+ else
+ gtk_widget_set_sensitive (comment_menu,FALSE);
- if (archive[id]->status != XA_ARCHIVESTATUS_OPEN && archive[id]->treeview != NULL)
- {
- selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW (archive[id]->treeview) );
- gint selected = gtk_tree_selection_count_selected_rows ( selection );
- if (selected == 0)
- xa_disable_delete_view_buttons (FALSE);
- else
- {
- if (archive[id]->type == XARCHIVETYPE_RAR && unrar)
- gtk_widget_set_sensitive ( delete_menu , FALSE );
- else if ( archive[id]->type != XARCHIVETYPE_RPM && archive[id]->type != XARCHIVETYPE_DEB )
- gtk_widget_set_sensitive ( delete_menu , TRUE );
- if (selected > 1 )
- {
- gtk_widget_set_sensitive ( View_button , FALSE);
- gtk_widget_set_sensitive ( view_menu, FALSE );
- }
- else
- {
- gtk_widget_set_sensitive ( View_button , TRUE );
- gtk_widget_set_sensitive ( view_menu, TRUE );
- }
- }
- /* Let's set the location bar */
- if (archive[id]->location_entry_path != NULL)
- gtk_entry_set_text(GTK_ENTRY(location_entry),archive[id]->location_entry_path);
- else
- gtk_entry_set_text(GTK_ENTRY(location_entry),"\0");
+ if (archive[id]->status != XA_ARCHIVESTATUS_OPEN && archive[id]->treeview != NULL)
+ {
+ selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW (archive[id]->treeview) );
+ gint selected = gtk_tree_selection_count_selected_rows ( selection );
+ if (selected == 0)
+ xa_disable_delete_view_buttons (FALSE);
+ else
+ {
+ if (archive[id]->type == XARCHIVETYPE_RAR && unrar)
+ gtk_widget_set_sensitive ( delete_menu , FALSE );
+ else if ( archive[id]->type != XARCHIVETYPE_RPM && archive[id]->type != XARCHIVETYPE_DEB )
+ gtk_widget_set_sensitive ( delete_menu , TRUE );
+ if (selected > 1 )
+ {
+ gtk_widget_set_sensitive ( View_button , FALSE);
+ gtk_widget_set_sensitive ( view_menu, FALSE );
+ }
+ else
+ {
+ gtk_widget_set_sensitive ( View_button , TRUE );
+ gtk_widget_set_sensitive ( view_menu, TRUE );
+ }
+ }
+ /* Let's set the location bar */
+ if (archive[id]->location_entry_path != NULL)
+ gtk_entry_set_text(GTK_ENTRY(location_entry),archive[id]->location_entry_path);
+ else
+ gtk_entry_set_text(GTK_ENTRY(location_entry),"\0");
- gtk_widget_grab_focus (GTK_WIDGET(archive[id]->treeview));
- }
+ gtk_widget_grab_focus (GTK_WIDGET(archive[id]->treeview));
+ }
}
void xa_add_page (XArchive *archive)
{
- GtkWidget *page_hbox, *label, *tab_label, *close_button, *image;
- GtkTooltips *close_button_tips = gtk_tooltips_new();
- gchar *filename_only;
+ GtkWidget *page_hbox, *label, *tab_label, *close_button, *image;
+ GtkTooltips *close_button_tips = gtk_tooltips_new();
+ gchar *filename_only;
- if (gtk_notebook_get_current_page(notebook) > -1)
- gtk_notebook_set_show_tabs (notebook,TRUE);
- else
- gtk_notebook_set_show_tabs (notebook,FALSE);
+ if (gtk_notebook_get_current_page(notebook) > -1)
+ gtk_notebook_set_show_tabs (notebook,TRUE);
+ else
+ gtk_notebook_set_show_tabs (notebook,FALSE);
- archive->scrollwindow = gtk_scrolled_window_new (NULL, NULL);
- g_object_set (G_OBJECT (archive->scrollwindow),"hscrollbar-policy", GTK_POLICY_AUTOMATIC,"vscrollbar-policy", GTK_POLICY_AUTOMATIC, NULL);
- gtk_widget_show (archive->scrollwindow);
+ archive->scrollwindow = gtk_scrolled_window_new (NULL, NULL);
+ g_object_set (G_OBJECT (archive->scrollwindow),"hscrollbar-policy", GTK_POLICY_AUTOMATIC,"vscrollbar-policy", GTK_POLICY_AUTOMATIC, NULL);
+ gtk_widget_show (archive->scrollwindow);
- page_hbox = gtk_hbox_new(FALSE, 0);
+ page_hbox = gtk_hbox_new(FALSE, 0);
- filename_only = g_strrstr ( archive->path, "/" );
- if (filename_only != NULL)
- {
- filename_only++;
- label = gtk_label_new (filename_only);
- tab_label = gtk_label_new (filename_only);
- }
- else
- {
- label = gtk_label_new (archive->path);
- tab_label = gtk_label_new (archive->path);
- }
+ filename_only = g_strrstr ( archive->path, "/" );
+ if (filename_only != NULL)
+ {
+ filename_only++;
+ label = gtk_label_new (filename_only);
+ tab_label = gtk_label_new (filename_only);
+ }
+ else
+ {
+ label = gtk_label_new (archive->path);
+ tab_label = gtk_label_new (archive->path);
+ }
- gtk_label_set_max_width_chars(GTK_LABEL(label), 50);
- gtk_label_set_ellipsize(GTK_LABEL(label), PANGO_ELLIPSIZE_START);
- gtk_box_pack_start(GTK_BOX(page_hbox), label, FALSE, FALSE, 0);
+ gtk_label_set_max_width_chars(GTK_LABEL(label), 50);
+ gtk_label_set_ellipsize(GTK_LABEL(label), PANGO_ELLIPSIZE_START);
+ gtk_box_pack_start(GTK_BOX(page_hbox), label, FALSE, FALSE, 0);
- close_button = gtk_button_new();
- gtk_tooltips_set_tip (close_button_tips, close_button, _("Close archive"), NULL);
- g_signal_connect (G_OBJECT(close_button), "clicked", G_CALLBACK(xa_close_page), (gpointer) archive->scrollwindow);
+ close_button = gtk_button_new();
+ gtk_tooltips_set_tip (close_button_tips, close_button, _("Close archive"), NULL);
+ g_signal_connect (G_OBJECT(close_button), "clicked", G_CALLBACK(xa_close_page), (gpointer) archive->scrollwindow);
- image = gtk_image_new_from_stock ("gtk-close", GTK_ICON_SIZE_MENU);
- gtk_container_add (GTK_CONTAINER(close_button), image);
- gtk_widget_set_size_request (close_button, 19, 18);
- gtk_button_set_relief (GTK_BUTTON(close_button), GTK_RELIEF_NONE);
- gtk_box_pack_end (GTK_BOX(page_hbox), close_button, FALSE, FALSE, 0);
- gtk_widget_show_all (page_hbox);
+ image = gtk_image_new_from_stock ("gtk-close", GTK_ICON_SIZE_MENU);
+ gtk_container_add (GTK_CONTAINER(close_button), image);
+ gtk_widget_set_size_request (close_button, 19, 18);
+ gtk_button_set_relief (GTK_BUTTON(close_button), GTK_RELIEF_NONE);
+ gtk_box_pack_end (GTK_BOX(page_hbox), close_button, FALSE, FALSE, 0);
+ gtk_widget_show_all (page_hbox);
- gtk_misc_set_alignment(GTK_MISC(tab_label), 0.0, 0);
- gtk_notebook_append_page_menu (notebook, archive->scrollwindow,page_hbox,tab_label);
- gtk_notebook_set_current_page(notebook, -1);
- gtk_notebook_set_tab_reorderable(notebook, archive->scrollwindow,TRUE);
- archive->treeview = gtk_tree_view_new ();
- gtk_container_add (GTK_CONTAINER (archive->scrollwindow), archive->treeview);
- gtk_widget_show (archive->treeview);
- gtk_tree_view_set_rules_hint ( GTK_TREE_VIEW (archive->treeview),TRUE);
- gtk_tree_view_set_search_equal_func (GTK_TREE_VIEW (archive->treeview),(GtkTreeViewSearchEqualFunc) treeview_select_search,NULL,NULL);
- GtkTreeSelection *sel = gtk_tree_view_get_selection( GTK_TREE_VIEW (archive->treeview));
- gtk_tree_selection_set_mode(sel, GTK_SELECTION_MULTIPLE);
- gtk_tree_view_set_rubber_banding(GTK_TREE_VIEW(archive->treeview),TRUE);
+ gtk_misc_set_alignment(GTK_MISC(tab_label), 0.0, 0);
+ gtk_notebook_append_page_menu (notebook, archive->scrollwindow,page_hbox,tab_label);
+ gtk_notebook_set_current_page(notebook, -1);
+ gtk_notebook_set_tab_reorderable(notebook, archive->scrollwindow,TRUE);
+ archive->treeview = gtk_tree_view_new ();
+ gtk_container_add (GTK_CONTAINER (archive->scrollwindow), archive->treeview);
+ gtk_widget_show (archive->treeview);
+ gtk_tree_view_set_rules_hint ( GTK_TREE_VIEW (archive->treeview),TRUE);
+ gtk_tree_view_set_search_equal_func (GTK_TREE_VIEW (archive->treeview),(GtkTreeViewSearchEqualFunc) treeview_select_search,NULL,NULL);
+ GtkTreeSelection *sel = gtk_tree_view_get_selection( GTK_TREE_VIEW (archive->treeview));
+ gtk_tree_selection_set_mode(sel, GTK_SELECTION_MULTIPLE);
+ gtk_tree_view_set_rubber_banding(GTK_TREE_VIEW(archive->treeview),TRUE);
- gtk_drag_source_set (archive->treeview, GDK_BUTTON1_MASK, drag_targets, 1, GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK | GDK_ACTION_ASK);
- g_signal_connect ((gpointer) sel, "changed", G_CALLBACK (xa_activate_delete_and_view),archive);
- g_signal_connect (G_OBJECT (archive->treeview), "drag-begin", G_CALLBACK (drag_begin),archive);
- g_signal_connect (G_OBJECT (archive->treeview), "drag-data-get",G_CALLBACK (drag_data_get),archive);
- g_signal_connect (G_OBJECT (archive->treeview), "drag-end", G_CALLBACK (drag_end),NULL);
- g_signal_connect (G_OBJECT (archive->treeview), "row-activated",G_CALLBACK (xa_treeview_row_activated),archive);
- g_signal_connect (G_OBJECT (archive->treeview), "button-press-event",G_CALLBACK (xa_mouse_button_event),archive);
+ gtk_drag_source_set (archive->treeview, GDK_BUTTON1_MASK, drag_targets, 1, GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK | GDK_ACTION_ASK);
+ g_signal_connect ((gpointer) sel, "changed", G_CALLBACK (xa_activate_delete_and_view),archive);
+ g_signal_connect (G_OBJECT (archive->treeview), "drag-begin", G_CALLBACK (drag_begin),archive);
+ g_signal_connect (G_OBJECT (archive->treeview), "drag-data-get",G_CALLBACK (drag_data_get),archive);
+ g_signal_connect (G_OBJECT (archive->treeview), "drag-end", G_CALLBACK (drag_end),NULL);
+ g_signal_connect (G_OBJECT (archive->treeview), "row-activated",G_CALLBACK (xa_treeview_row_activated),archive);
+ g_signal_connect (G_OBJECT (archive->treeview), "button-press-event",G_CALLBACK (xa_mouse_button_event),archive);
}
void xa_close_page (GtkWidget *widget, gpointer data)
{
- xa_close_archive ( NULL , data );
+ xa_close_archive ( NULL , data );
}
gchar *password_dialog ()
{
- GtkWidget *passwd;
- GtkWidget *dialog_vbox1;
- GtkWidget *hbox1;
- GtkWidget *label1;
- GtkWidget *password_entry;
- GtkWidget *dialog_action_area1;
- GtkWidget *cancelbutton1;
- GtkWidget *okbutton1;
- gboolean done = FALSE;
- gchar *password = NULL;
- gint current_page;
- gint idx;
+ GtkWidget *passwd;
+ GtkWidget *dialog_vbox1;
+ GtkWidget *hbox1;
+ GtkWidget *label1;
+ GtkWidget *password_entry;
+ GtkWidget *dialog_action_area1;
+ GtkWidget *cancelbutton1;
+ GtkWidget *okbutton1;
+ gboolean done = FALSE;
+ gchar *password = NULL;
+ gint current_page;
+ gint idx;
- current_page = gtk_notebook_get_current_page (notebook);
- idx = xa_find_archive_index (current_page);
+ current_page = gtk_notebook_get_current_page (notebook);
+ idx = xa_find_archive_index (current_page);
- passwd = gtk_dialog_new ();
- gtk_window_set_title (GTK_WINDOW (passwd),_("Enter Archive Password"));
- gtk_window_set_type_hint (GTK_WINDOW (passwd), GDK_WINDOW_TYPE_HINT_DIALOG);
- gtk_window_set_transient_for ( GTK_WINDOW (passwd) , GTK_WINDOW (MainWindow) );
- gtk_window_set_default_size(GTK_WINDOW(passwd), 300, 80);
+ passwd = gtk_dialog_new ();
+ gtk_window_set_title (GTK_WINDOW (passwd),_("Enter Archive Password"));
+ gtk_window_set_type_hint (GTK_WINDOW (passwd), GDK_WINDOW_TYPE_HINT_DIALOG);
+ gtk_window_set_transient_for ( GTK_WINDOW (passwd) , GTK_WINDOW (MainWindow) );
+ gtk_window_set_default_size(GTK_WINDOW(passwd), 300, 80);
- dialog_vbox1 = GTK_DIALOG (passwd)->vbox;
- gtk_widget_show (dialog_vbox1);
+ dialog_vbox1 = GTK_DIALOG (passwd)->vbox;
+ gtk_widget_show (dialog_vbox1);
- hbox1 = gtk_hbox_new (FALSE, 0);
- gtk_widget_show (hbox1);
- gtk_box_pack_start (GTK_BOX (dialog_vbox1), hbox1, TRUE, FALSE, 0);
+ hbox1 = gtk_hbox_new (FALSE, 0);
+ gtk_widget_show (hbox1);
+ gtk_box_pack_start (GTK_BOX (dialog_vbox1), hbox1, TRUE, FALSE, 0);
- label1 = gtk_label_new (_("Password:"));
- gtk_widget_show (label1);
- gtk_box_pack_start (GTK_BOX (hbox1), label1, FALSE, FALSE, 0);
+ label1 = gtk_label_new (_("Password:"));
+ gtk_widget_show (label1);
+ gtk_box_pack_start (GTK_BOX (hbox1), label1, FALSE, FALSE, 0);
- password_entry = gtk_entry_new ();
- gtk_box_pack_start (GTK_BOX (hbox1), password_entry, TRUE, TRUE, 0);
- gtk_entry_set_visibility (GTK_ENTRY (password_entry), FALSE);
- gtk_entry_set_activates_default(GTK_ENTRY(password_entry), TRUE);
+ password_entry = gtk_entry_new ();
+ gtk_box_pack_start (GTK_BOX (hbox1), password_entry, TRUE, TRUE, 0);
+ gtk_entry_set_visibility (GTK_ENTRY (password_entry), FALSE);
+ gtk_entry_set_activates_default(GTK_ENTRY(password_entry), TRUE);
- if (current_page > 0 && archive[idx]->passwd != NULL)
- gtk_entry_set_text (GTK_ENTRY(password_entry),archive[idx]->passwd);
- gtk_widget_show (password_entry);
+ if (current_page > 0 && archive[idx]->passwd != NULL)
+ gtk_entry_set_text (GTK_ENTRY(password_entry),archive[idx]->passwd);
+ gtk_widget_show (password_entry);
- dialog_action_area1 = GTK_DIALOG (passwd)->action_area;
- gtk_widget_show (dialog_action_area1);
- gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area1), GTK_BUTTONBOX_END);
+ dialog_action_area1 = GTK_DIALOG (passwd)->action_area;
+ gtk_widget_show (dialog_action_area1);
+ gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area1), GTK_BUTTONBOX_END);
- cancelbutton1 = gtk_button_new_from_stock ("gtk-cancel");
- gtk_widget_show (cancelbutton1);
- gtk_dialog_add_action_widget (GTK_DIALOG (passwd), cancelbutton1, GTK_RESPONSE_CANCEL);
- GTK_WIDGET_SET_FLAGS (cancelbutton1, GTK_CAN_DEFAULT);
+ cancelbutton1 = gtk_button_new_from_stock ("gtk-cancel");
+ gtk_widget_show (cancelbutton1);
+ gtk_dialog_add_action_widget (GTK_DIALOG (passwd), cancelbutton1, GTK_RESPONSE_CANCEL);
+ GTK_WIDGET_SET_FLAGS (cancelbutton1, GTK_CAN_DEFAULT);
- okbutton1 = gtk_button_new_from_stock ("gtk-ok");
- gtk_widget_show (okbutton1);
- gtk_dialog_add_action_widget (GTK_DIALOG (passwd), okbutton1, GTK_RESPONSE_OK);
- GTK_WIDGET_SET_FLAGS (okbutton1, GTK_CAN_DEFAULT);
- gtk_dialog_set_default_response (GTK_DIALOG (passwd), GTK_RESPONSE_OK);
+ okbutton1 = gtk_button_new_from_stock ("gtk-ok");
+ gtk_widget_show (okbutton1);
+ gtk_dialog_add_action_widget (GTK_DIALOG (passwd), okbutton1, GTK_RESPONSE_OK);
+ GTK_WIDGET_SET_FLAGS (okbutton1, GTK_CAN_DEFAULT);
+ gtk_dialog_set_default_response (GTK_DIALOG (passwd), GTK_RESPONSE_OK);
- while ( ! done )
- {
- switch (gtk_dialog_run ( GTK_DIALOG (passwd ) ) )
- {
- case GTK_RESPONSE_CANCEL:
- case GTK_RESPONSE_DELETE_EVENT:
- done = TRUE;
- password = NULL;
- break;
+ while ( ! done )
+ {
+ switch (gtk_dialog_run ( GTK_DIALOG (passwd ) ) )
+ {
+ case GTK_RESPONSE_CANCEL:
+ case GTK_RESPONSE_DELETE_EVENT:
+ done = TRUE;
+ password = NULL;
+ break;
- case GTK_RESPONSE_OK:
- password = g_strdup (gtk_entry_get_text ( GTK_ENTRY (password_entry) ));
- if (strlen(password) == 0)
- {
- response = xa_show_message_dialog (GTK_WINDOW (MainWindow),GTK_DIALOG_MODAL,GTK_MESSAGE_ERROR,GTK_BUTTONS_OK, _("You missed the password!"),_("Please enter it!") );
- break;
- }
- done = TRUE;
- break;
- }
- }
- gtk_widget_destroy (passwd);
- return password;
+ case GTK_RESPONSE_OK:
+ password = g_strdup (gtk_entry_get_text ( GTK_ENTRY (password_entry) ));
+ if (strlen(password) == 0)
+ {
+ response = xa_show_message_dialog (GTK_WINDOW (MainWindow),GTK_DIALOG_MODAL,GTK_MESSAGE_ERROR,GTK_BUTTONS_OK, _("You missed the password!"),_("Please enter it!") );
+ break;
+ }
+ done = TRUE;
+ break;
+ }
+ }
+ gtk_widget_destroy (passwd);
+ return password;
}
widget_data *xa_create_output_window(gchar *title)
{
- GtkWidget *vbox,*textview,*scrolledwindow;
- widget_data *data;
+ GtkWidget *vbox,*textview,*scrolledwindow;
+ widget_data *data;
- data = g_new0(widget_data,1);
- data->dialog1 = gtk_dialog_new_with_buttons (title,
- GTK_WINDOW (MainWindow), GTK_DIALOG_NO_SEPARATOR,
- GTK_STOCK_CLOSE,GTK_RESPONSE_CLOSE, NULL);
- gtk_dialog_set_default_response (GTK_DIALOG (data->dialog1), GTK_RESPONSE_CLOSE);
- gtk_widget_set_size_request (data->dialog1, 400, 250);
- vbox = GTK_DIALOG (data->dialog1)->vbox;
+ data = g_new0(widget_data,1);
+ data->dialog1 = gtk_dialog_new_with_buttons (title,
+ GTK_WINDOW (MainWindow), GTK_DIALOG_NO_SEPARATOR,
+ GTK_STOCK_CLOSE,GTK_RESPONSE_CLOSE, NULL);
+ gtk_dialog_set_default_response (GTK_DIALOG (data->dialog1), GTK_RESPONSE_CLOSE);
+ gtk_widget_set_size_request (data->dialog1, 400, 250);
+ vbox = GTK_DIALOG (data->dialog1)->vbox;
- scrolledwindow = gtk_scrolled_window_new (NULL, NULL);
- gtk_box_pack_start (GTK_BOX (vbox), scrolledwindow, TRUE, TRUE, 0);
- gtk_container_set_border_width (GTK_CONTAINER (scrolledwindow), 4);
- g_object_set (G_OBJECT (scrolledwindow),"hscrollbar-policy", GTK_POLICY_AUTOMATIC,"shadow-type", GTK_SHADOW_IN,"vscrollbar-policy", GTK_POLICY_AUTOMATIC, NULL);
+ scrolledwindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_box_pack_start (GTK_BOX (vbox), scrolledwindow, TRUE, TRUE, 0);
+ gtk_container_set_border_width (GTK_CONTAINER (scrolledwindow), 4);
+ g_object_set (G_OBJECT (scrolledwindow),"hscrollbar-policy", GTK_POLICY_AUTOMATIC,"shadow-type", GTK_SHADOW_IN,"vscrollbar-policy", GTK_POLICY_AUTOMATIC, NULL);
- data->textbuffer = gtk_text_buffer_new (NULL);
- gtk_text_buffer_create_tag (data->textbuffer, "font","family", "monospace", NULL);
- gtk_text_buffer_get_iter_at_offset (data->textbuffer, &data->iter, 0);
+ data->textbuffer = gtk_text_buffer_new (NULL);
+ gtk_text_buffer_create_tag (data->textbuffer, "font","family", "monospace", NULL);
+ gtk_text_buffer_get_iter_at_offset (data->textbuffer, &data->iter, 0);
- textview = gtk_text_view_new_with_buffer (data->textbuffer);
- g_object_unref (data->textbuffer);
- gtk_container_add (GTK_CONTAINER (scrolledwindow), textview);
- gtk_text_view_set_editable (GTK_TEXT_VIEW (textview), FALSE);
- gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW (textview), FALSE);
+ textview = gtk_text_view_new_with_buffer (data->textbuffer);
+ g_object_unref (data->textbuffer);
+ gtk_container_add (GTK_CONTAINER (scrolledwindow), textview);
+ gtk_text_view_set_editable (GTK_TEXT_VIEW (textview), FALSE);
+ gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW (textview), FALSE);
- gtk_widget_show_all (data->dialog1);
- return data;
+ gtk_widget_show_all (data->dialog1);
+ return data;
}
+
+static void on_xa_view_activate( GtkMenuItem* mi, gpointer user_data )
+{
+
+}
+
+static void on_xa_extract_activate( GtkMenuItem* mi, gpointer user_data )
+{
+
+}
+
+static void on_xa_cut_activate( GtkMenuItem* mi, gpointer user_data )
+{
+
+}
+
+static void on_xa_copy_activate( GtkMenuItem* mi, gpointer user_data )
+{
+
+}
+
+static void on_xa_paste_activate( GtkMenuItem* mi, gpointer user_data )
+{
+
+}
+
+static void on_xa_delete_activate( GtkMenuItem* mi, gpointer user_data )
+{
+
+}
+
+static void on_xa_rename_activate( GtkMenuItem* mi, gpointer user_data )
+{
+
+}
+
void xa_create_popup_menu()
{
- GtkWidget *cut;
- GtkWidget *image6;
- GtkWidget *copy;
- GtkWidget *image7;
- GtkWidget *paste;
- GtkWidget *image8;
- GtkWidget *separator;
- GtkWidget *view;
- GtkWidget *extract;
- GtkWidget *image9;
- GtkWidget *ddelete;
- GtkWidget *image10;
- GtkWidget *rename;
- GtkWidget *image11;
+ GtkWidget *cut;
+ GtkWidget *image6;
+ GtkWidget *copy;
+ GtkWidget *image7;
+ GtkWidget *paste;
+ GtkWidget *image8;
+ GtkWidget *separator;
+ GtkWidget *view;
+ GtkWidget *extract;
+ GtkWidget *image9;
+ GtkWidget *ddelete;
+ GtkWidget *image10;
+ GtkWidget *rename;
+ GtkWidget *image11;
- xa_popup_menu = gtk_menu_new();
+ xa_popup_menu = gtk_menu_new();
- view = gtk_image_menu_item_new_with_mnemonic (_("View"));
- gtk_widget_show (view);
- gtk_container_add (GTK_CONTAINER (xa_popup_menu),view);
+ view = gtk_image_menu_item_new_with_mnemonic (_("View"));
+ gtk_widget_show (view);
+ gtk_container_add (GTK_CONTAINER (xa_popup_menu),view);
- image9 = gtk_image_new_from_stock ("gtk-find", GTK_ICON_SIZE_MENU);
- gtk_widget_show (image9);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (view), image9);
+ image9 = gtk_image_new_from_stock ("gtk-find", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (image9);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (view), image9);
- extract = gtk_image_menu_item_new_with_mnemonic (_("Extract"));
- gtk_widget_show (extract);
- gtk_container_add (GTK_CONTAINER (xa_popup_menu),extract);
-
- image9 = xa_main_window_find_image ("xarchiver-extract.png", GTK_ICON_SIZE_MENU);
- gtk_widget_show (image9);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (extract), image9);
+ extract = gtk_image_menu_item_new_with_mnemonic (_("Extract"));
+ gtk_widget_show (extract);
+ gtk_container_add (GTK_CONTAINER (xa_popup_menu),extract);
- separator = gtk_separator_menu_item_new ();
- gtk_widget_show (separator);
- gtk_container_add (GTK_CONTAINER (xa_popup_menu), separator);
- gtk_widget_set_sensitive (separator,FALSE);
-
- cut = gtk_image_menu_item_new_with_mnemonic (_("Cut"));
- gtk_widget_show (cut);
- gtk_container_add (GTK_CONTAINER (xa_popup_menu), cut);
+ image9 = xa_main_window_find_image ("xarchiver-extract.png", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (image9);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (extract), image9);
- image6 = gtk_image_new_from_stock ("gtk-cut", GTK_ICON_SIZE_MENU);
- gtk_widget_show (image6);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (cut), image6);
+ separator = gtk_separator_menu_item_new ();
+ gtk_widget_show (separator);
+ gtk_container_add (GTK_CONTAINER (xa_popup_menu), separator);
+ gtk_widget_set_sensitive (separator,FALSE);
- copy = gtk_image_menu_item_new_with_mnemonic (_("Copy"));
- gtk_widget_show (copy);
- gtk_container_add (GTK_CONTAINER (xa_popup_menu), copy);
+ cut = gtk_image_menu_item_new_with_mnemonic (_("Cut"));
+ gtk_widget_show (cut);
+ gtk_container_add (GTK_CONTAINER (xa_popup_menu), cut);
- image7 = gtk_image_new_from_stock ("gtk-copy", GTK_ICON_SIZE_MENU);
- gtk_widget_show (image7);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (copy), image7);
+ image6 = gtk_image_new_from_stock ("gtk-cut", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (image6);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (cut), image6);
- paste = gtk_image_menu_item_new_with_mnemonic (_("Paste"));
- gtk_widget_show (paste);
- gtk_container_add (GTK_CONTAINER (xa_popup_menu), paste);
+ copy = gtk_image_menu_item_new_with_mnemonic (_("Copy"));
+ gtk_widget_show (copy);
+ gtk_container_add (GTK_CONTAINER (xa_popup_menu), copy);
- image8 = gtk_image_new_from_stock ("gtk-paste", GTK_ICON_SIZE_MENU);
- gtk_widget_show (image8);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (paste), image8);
+ image7 = gtk_image_new_from_stock ("gtk-copy", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (image7);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (copy), image7);
- separator = gtk_separator_menu_item_new();
- gtk_widget_show (separator);
- gtk_container_add (GTK_CONTAINER (xa_popup_menu), separator);
- gtk_widget_set_sensitive (separator,FALSE);
+ paste = gtk_image_menu_item_new_with_mnemonic (_("Paste"));
+ gtk_widget_show (paste);
+ gtk_container_add (GTK_CONTAINER (xa_popup_menu), paste);
- ddelete = gtk_image_menu_item_new_with_mnemonic (_("Delete"));
- gtk_widget_show (ddelete);
- gtk_container_add (GTK_CONTAINER (xa_popup_menu), ddelete);
+ image8 = gtk_image_new_from_stock ("gtk-paste", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (image8);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (paste), image8);
- image10 = gtk_image_new_from_stock ("gtk-delete", GTK_ICON_SIZE_MENU);
- gtk_widget_show (image10);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (ddelete), image10);
+ separator = gtk_separator_menu_item_new();
+ gtk_widget_show (separator);
+ gtk_container_add (GTK_CONTAINER (xa_popup_menu), separator);
+ gtk_widget_set_sensitive (separator,FALSE);
- rename = gtk_image_menu_item_new_with_mnemonic (_("Rename"));
- gtk_widget_show (rename);
- gtk_container_add (GTK_CONTAINER (xa_popup_menu), rename);
+ ddelete = gtk_image_menu_item_new_with_mnemonic (_("Delete"));
+ gtk_widget_show (ddelete);
+ gtk_container_add (GTK_CONTAINER (xa_popup_menu), ddelete);
- image11 = gtk_image_new_from_stock ("gtk-refresh", GTK_ICON_SIZE_MENU);
- gtk_widget_show (image11);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (rename), image11);
+ image10 = gtk_image_new_from_stock ("gtk-delete", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (image10);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (ddelete), image10);
- /*g_signal_connect ((gpointer) cut, "activate",G_CALLBACK (on_xa_cut_activate),NULL);
- g_signal_connect ((gpointer) copy, "activate",G_CALLBACK (on_xa_copy_activate),NULL);
- g_signal_connect ((gpointer) paste, "activate",G_CALLBACK (on_xa_paste_activate),NULL);
- g_signal_connect ((gpointer) open, "activate",G_CALLBACK (on_xa_open_activate),NULL);
- g_signal_connect ((gpointer) ddelete, "activate",G_CALLBACK (on_xa_delete_activate),NULL);
- g_signal_connect ((gpointer) rename, "activate",G_CALLBACK (on_xa_rename_activate),NULL);*/
+ rename = gtk_image_menu_item_new_with_mnemonic (_("Rename"));
+ gtk_widget_show (rename);
+ gtk_container_add (GTK_CONTAINER (xa_popup_menu), rename);
+
+ image11 = gtk_image_new_from_stock ("gtk-refresh", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (image11);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (rename), image11);
+
+ g_signal_connect ((gpointer) view, "activate",G_CALLBACK (on_xa_view_activate),NULL);
+ g_signal_connect ((gpointer) extract, "activate",G_CALLBACK (on_xa_extract_activate),NULL);
+
+ g_signal_connect ((gpointer) cut, "activate",G_CALLBACK (on_xa_cut_activate),NULL);
+ g_signal_connect ((gpointer) copy, "activate",G_CALLBACK (on_xa_copy_activate),NULL);
+ g_signal_connect ((gpointer) paste, "activate",G_CALLBACK (on_xa_paste_activate),NULL);
+ g_signal_connect ((gpointer) ddelete, "activate",G_CALLBACK (on_xa_delete_activate),NULL);
+ g_signal_connect ((gpointer) rename, "activate",G_CALLBACK (on_xa_rename_activate),NULL);
}
GtkWidget *create_archive_properties_window()
{
- archive_properties_window = gtk_dialog_new_with_buttons (_("Archive Properties Window"),
- GTK_WINDOW (MainWindow), GTK_DIALOG_DESTROY_WITH_PARENT,
- GTK_STOCK_CLOSE, GTK_RESPONSE_CANCEL, NULL);
+ archive_properties_window = gtk_dialog_new_with_buttons (_("Archive Properties Window"),
+ GTK_WINDOW (MainWindow), GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_STOCK_CLOSE, GTK_RESPONSE_CANCEL, NULL);
- g_signal_connect(archive_properties_window, "response", G_CALLBACK(gtk_widget_destroy), NULL);
- g_signal_connect(archive_properties_window, "delete-event", G_CALLBACK(gtk_widget_destroy), NULL);
+ g_signal_connect(archive_properties_window, "response", G_CALLBACK(gtk_widget_destroy), NULL);
+ g_signal_connect(archive_properties_window, "delete-event", G_CALLBACK(gtk_widget_destroy), NULL);
- gtk_window_set_position (GTK_WINDOW (archive_properties_window), GTK_WIN_POS_CENTER);
- gtk_window_set_resizable (GTK_WINDOW (archive_properties_window), FALSE);
- gtk_window_set_modal (GTK_WINDOW (archive_properties_window), TRUE);
- gtk_window_set_type_hint (GTK_WINDOW (archive_properties_window), GDK_WINDOW_TYPE_HINT_UTILITY);
+ gtk_window_set_position (GTK_WINDOW (archive_properties_window), GTK_WIN_POS_CENTER);
+ gtk_window_set_resizable (GTK_WINDOW (archive_properties_window), FALSE);
+ gtk_window_set_modal (GTK_WINDOW (archive_properties_window), TRUE);
+ gtk_window_set_type_hint (GTK_WINDOW (archive_properties_window), GDK_WINDOW_TYPE_HINT_UTILITY);
- table1 = gtk_table_new (10, 2, TRUE);
- gtk_container_add (GTK_CONTAINER (GTK_DIALOG (archive_properties_window)->vbox), table1);
- gtk_table_set_row_spacings (GTK_TABLE (table1), 6);
- gtk_table_set_col_spacings (GTK_TABLE (table1), 6);
+ table1 = gtk_table_new (10, 2, TRUE);
+ gtk_container_add (GTK_CONTAINER (GTK_DIALOG (archive_properties_window)->vbox), table1);
+ gtk_table_set_row_spacings (GTK_TABLE (table1), 6);
+ gtk_table_set_col_spacings (GTK_TABLE (table1), 6);
- name_label = gtk_label_new ("");
- set_label ( name_label , _("Name:"));
- gtk_table_attach (GTK_TABLE (table1), name_label, 0, 1, 0, 1,
+ name_label = gtk_label_new ("");
+ set_label ( name_label , _("Name:"));
+ gtk_table_attach (GTK_TABLE (table1), name_label, 0, 1, 0, 1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), 0, 0);
- gtk_misc_set_alignment (GTK_MISC (name_label), 0.99, 0.5);
+ gtk_misc_set_alignment (GTK_MISC (name_label), 0.99, 0.5);
- path_label = gtk_label_new ("");
- set_label ( path_label , _("Path:"));
- gtk_table_attach (GTK_TABLE (table1), path_label, 0, 1, 1, 2,
+ path_label = gtk_label_new ("");
+ set_label ( path_label , _("Path:"));
+ gtk_table_attach (GTK_TABLE (table1), path_label, 0, 1, 1, 2,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), 0, 0);
- gtk_misc_set_alignment (GTK_MISC (path_label), 0.99, 0.5);
+ gtk_misc_set_alignment (GTK_MISC (path_label), 0.99, 0.5);
- type_label = gtk_label_new ("");
- set_label ( type_label , _("Type:"));
- gtk_table_attach (GTK_TABLE (table1), type_label, 0, 1, 2, 3,
+ type_label = gtk_label_new ("");
+ set_label ( type_label , _("Type:"));
+ gtk_table_attach (GTK_TABLE (table1), type_label, 0, 1, 2, 3,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), 0, 0);
- gtk_misc_set_alignment (GTK_MISC (type_label), 0.99, 0.5);
+ gtk_misc_set_alignment (GTK_MISC (type_label), 0.99, 0.5);
- modified_label = gtk_label_new ("");
- set_label ( modified_label , _("Modified on:"));
- gtk_table_attach (GTK_TABLE (table1), modified_label, 0, 1, 3, 4,
+ modified_label = gtk_label_new ("");
+ set_label ( modified_label , _("Modified on:"));
+ gtk_table_attach (GTK_TABLE (table1), modified_label, 0, 1, 3, 4,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), 0, 0);
- gtk_misc_set_alignment (GTK_MISC (modified_label), 0.99, 0.5);
+ gtk_misc_set_alignment (GTK_MISC (modified_label), 0.99, 0.5);
- size_label = gtk_label_new ("");
- set_label ( size_label , _("Archive size:"));
- gtk_table_attach (GTK_TABLE (table1), size_label, 0, 1, 4, 5,
+ size_label = gtk_label_new ("");
+ set_label ( size_label , _("Archive size:"));
+ gtk_table_attach (GTK_TABLE (table1), size_label, 0, 1, 4, 5,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), 0, 0);
- gtk_misc_set_alignment (GTK_MISC (size_label), 0.99, 0.5);
+ gtk_misc_set_alignment (GTK_MISC (size_label), 0.99, 0.5);
- content_label = gtk_label_new ("");
- set_label ( content_label , _("Content size:"));
- gtk_table_attach (GTK_TABLE (table1), content_label, 0, 1, 5, 6,
+ content_label = gtk_label_new ("");
+ set_label ( content_label , _("Content size:"));
+ gtk_table_attach (GTK_TABLE (table1), content_label, 0, 1, 5, 6,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), 0, 0);
- gtk_misc_set_alignment (GTK_MISC (content_label), 0.99, 0.5);
+ gtk_misc_set_alignment (GTK_MISC (content_label), 0.99, 0.5);
- comment_label = gtk_label_new ("");
- set_label ( comment_label , _("Comment:"));
- gtk_table_attach (GTK_TABLE (table1), comment_label, 0, 1, 6, 7,
+ comment_label = gtk_label_new ("");
+ set_label ( comment_label , _("Comment:"));
+ gtk_table_attach (GTK_TABLE (table1), comment_label, 0, 1, 6, 7,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), 0, 0);
- gtk_misc_set_alignment (GTK_MISC (comment_label), 0.99, 0.5);
+ gtk_misc_set_alignment (GTK_MISC (comment_label), 0.99, 0.5);
- compression_label = gtk_label_new ("");
- set_label ( compression_label , _("Compression ratio:"));
- gtk_table_attach (GTK_TABLE (table1), compression_label, 0, 1, 9, 10,
+ compression_label = gtk_label_new ("");
+ set_label ( compression_label , _("Compression ratio:"));
+ gtk_table_attach (GTK_TABLE (table1), compression_label, 0, 1, 9, 10,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), 0, 0);
- gtk_misc_set_alignment (GTK_MISC (compression_label), 0.99, 0.5);
+ gtk_misc_set_alignment (GTK_MISC (compression_label), 0.99, 0.5);
- number_of_files_label = gtk_label_new ("");
- set_label ( number_of_files_label , _("Number of files:"));
- gtk_table_attach (GTK_TABLE (table1), number_of_files_label, 0, 1, 7, 8,
+ number_of_files_label = gtk_label_new ("");
+ set_label ( number_of_files_label , _("Number of files:"));
+ gtk_table_attach (GTK_TABLE (table1), number_of_files_label, 0, 1, 7, 8,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), 0, 0);
- gtk_misc_set_alignment (GTK_MISC (number_of_files_label), 0.99, 0.5);
+ gtk_misc_set_alignment (GTK_MISC (number_of_files_label), 0.99, 0.5);
- number_of_dirs_label = gtk_label_new ("");
- set_label ( number_of_dirs_label , _("Number of dirs:"));
- gtk_table_attach (GTK_TABLE (table1), number_of_dirs_label, 0, 1, 8, 9,
+ number_of_dirs_label = gtk_label_new ("");
+ set_label ( number_of_dirs_label , _("Number of dirs:"));
+ gtk_table_attach (GTK_TABLE (table1), number_of_dirs_label, 0, 1, 8, 9,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), 0, 0);
- gtk_misc_set_alignment (GTK_MISC (number_of_dirs_label), 0.99, 0.5);
+ gtk_misc_set_alignment (GTK_MISC (number_of_dirs_label), 0.99, 0.5);
- compression_data = gtk_entry_new ();
- gtk_editable_set_editable (GTK_EDITABLE (compression_data), FALSE);
- gtk_entry_set_has_frame (GTK_ENTRY (compression_data), FALSE);
- gtk_table_attach (GTK_TABLE (table1), compression_data, 1, 2, 9, 10,
+ compression_data = gtk_entry_new ();
+ gtk_editable_set_editable (GTK_EDITABLE (compression_data), FALSE);
+ gtk_entry_set_has_frame (GTK_ENTRY (compression_data), FALSE);
+ gtk_table_attach (GTK_TABLE (table1), compression_data, 1, 2, 9, 10,
(GtkAttachOptions) (GTK_FILL | GTK_EXPAND),
(GtkAttachOptions) (0), 0, 0);
- number_of_dirs_data = gtk_entry_new ();
- gtk_editable_set_editable (GTK_EDITABLE (number_of_dirs_data), FALSE);
- gtk_entry_set_has_frame (GTK_ENTRY (number_of_dirs_data), FALSE);
- gtk_table_attach (GTK_TABLE (table1), number_of_dirs_data, 1, 2, 8, 9,
+ number_of_dirs_data = gtk_entry_new ();
+ gtk_editable_set_editable (GTK_EDITABLE (number_of_dirs_data), FALSE);
+ gtk_entry_set_has_frame (GTK_ENTRY (number_of_dirs_data), FALSE);
+ gtk_table_attach (GTK_TABLE (table1), number_of_dirs_data, 1, 2, 8, 9,
(GtkAttachOptions) (GTK_FILL | GTK_EXPAND),
(GtkAttachOptions) (0), 0, 0);
- number_of_files_data = gtk_entry_new ();
- gtk_editable_set_editable (GTK_EDITABLE (number_of_files_data), FALSE);
- gtk_entry_set_has_frame (GTK_ENTRY (number_of_files_data), FALSE);
- gtk_table_attach (GTK_TABLE (table1), number_of_files_data, 1, 2, 7, 8,
+ number_of_files_data = gtk_entry_new ();
+ gtk_editable_set_editable (GTK_EDITABLE (number_of_files_data), FALSE);
+ gtk_entry_set_has_frame (GTK_ENTRY (number_of_files_data), FALSE);
+ gtk_table_attach (GTK_TABLE (table1), number_of_files_data, 1, 2, 7, 8,
(GtkAttachOptions) (GTK_FILL | GTK_EXPAND),
(GtkAttachOptions) (0), 0, 0);
- comment_data = gtk_entry_new ();
- gtk_editable_set_editable (GTK_EDITABLE (comment_data), FALSE);
- gtk_entry_set_has_frame (GTK_ENTRY (comment_data), FALSE);
- gtk_table_attach (GTK_TABLE (table1), comment_data, 1, 2, 6, 7,
+ comment_data = gtk_entry_new ();
+ gtk_editable_set_editable (GTK_EDITABLE (comment_data), FALSE);
+ gtk_entry_set_has_frame (GTK_ENTRY (comment_data), FALSE);
+ gtk_table_attach (GTK_TABLE (table1), comment_data, 1, 2, 6, 7,
(GtkAttachOptions) (GTK_FILL | GTK_EXPAND),
(GtkAttachOptions) (0), 0, 0);
- content_data = gtk_entry_new ();
- gtk_editable_set_editable (GTK_EDITABLE (content_data), FALSE);
- gtk_entry_set_has_frame (GTK_ENTRY (content_data), FALSE);
- gtk_table_attach (GTK_TABLE (table1), content_data, 1, 2, 5, 6,
+ content_data = gtk_entry_new ();
+ gtk_editable_set_editable (GTK_EDITABLE (content_data), FALSE);
+ gtk_entry_set_has_frame (GTK_ENTRY (content_data), FALSE);
+ gtk_table_attach (GTK_TABLE (table1), content_data, 1, 2, 5, 6,
(GtkAttachOptions) (GTK_FILL | GTK_EXPAND),
(GtkAttachOptions) (0), 0, 0);
- size_data = gtk_entry_new ();
- gtk_editable_set_editable (GTK_EDITABLE (size_data), FALSE);
- gtk_entry_set_has_frame (GTK_ENTRY (size_data), FALSE);
- gtk_table_attach (GTK_TABLE (table1), size_data, 1, 2, 4, 5,
+ size_data = gtk_entry_new ();
+ gtk_editable_set_editable (GTK_EDITABLE (size_data), FALSE);
+ gtk_entry_set_has_frame (GTK_ENTRY (size_data), FALSE);
+ gtk_table_attach (GTK_TABLE (table1), size_data, 1, 2, 4, 5,
(GtkAttachOptions) (GTK_FILL | GTK_EXPAND),
(GtkAttachOptions) (0), 0, 0);
- modified_data = gtk_entry_new ();
- gtk_table_attach (GTK_TABLE (table1), modified_data, 1, 2, 3, 4,
+ modified_data = gtk_entry_new ();
+ gtk_table_attach (GTK_TABLE (table1), modified_data, 1, 2, 3, 4,
(GtkAttachOptions) (GTK_FILL | GTK_EXPAND),
(GtkAttachOptions) (0), 0, 0);
- gtk_editable_set_editable (GTK_EDITABLE (modified_data), FALSE);
- gtk_entry_set_has_frame (GTK_ENTRY (modified_data), FALSE);
+ gtk_editable_set_editable (GTK_EDITABLE (modified_data), FALSE);
+ gtk_entry_set_has_frame (GTK_ENTRY (modified_data), FALSE);
- type_data = gtk_entry_new ();
- gtk_editable_set_editable (GTK_EDITABLE (type_data), FALSE);
- gtk_entry_set_has_frame (GTK_ENTRY (type_data), FALSE);
- gtk_table_attach (GTK_TABLE (table1), type_data, 1, 2, 2, 3,
+ type_data = gtk_entry_new ();
+ gtk_editable_set_editable (GTK_EDITABLE (type_data), FALSE);
+ gtk_entry_set_has_frame (GTK_ENTRY (type_data), FALSE);
+ gtk_table_attach (GTK_TABLE (table1), type_data, 1, 2, 2, 3,
(GtkAttachOptions) (GTK_FILL | GTK_EXPAND),
(GtkAttachOptions) (0), 0, 0);
- path_data = gtk_entry_new ();
- gtk_editable_set_editable (GTK_EDITABLE (path_data), FALSE);
- gtk_entry_set_has_frame (GTK_ENTRY (path_data), FALSE);
- gtk_table_attach (GTK_TABLE (table1), path_data, 1, 2, 1, 2,
+ path_data = gtk_entry_new ();
+ gtk_editable_set_editable (GTK_EDITABLE (path_data), FALSE);
+ gtk_entry_set_has_frame (GTK_ENTRY (path_data), FALSE);
+ gtk_table_attach (GTK_TABLE (table1), path_data, 1, 2, 1, 2,
(GtkAttachOptions) (GTK_FILL | GTK_EXPAND),
(GtkAttachOptions) (0), 0, 0);
- name_data = gtk_entry_new ();
- gtk_editable_set_editable (GTK_EDITABLE (name_data), FALSE);
- gtk_entry_set_has_frame (GTK_ENTRY (name_data), FALSE);
- gtk_table_attach (GTK_TABLE (table1), name_data, 1, 2, 0, 1,
+ name_data = gtk_entry_new ();
+ gtk_editable_set_editable (GTK_EDITABLE (name_data), FALSE);
+ gtk_entry_set_has_frame (GTK_ENTRY (name_data), FALSE);
+ gtk_table_attach (GTK_TABLE (table1), name_data, 1, 2, 0, 1,
(GtkAttachOptions) (GTK_FILL | GTK_EXPAND),
(GtkAttachOptions) (0), 0, 0);
- return archive_properties_window;
+ return archive_properties_window;
}
void set_label (GtkWidget *label,gchar *text)
@@ -980,79 +1018,79 @@
void xa_set_button_state (gboolean New, gboolean Open,gboolean Close, gboolean add,gboolean extract, gboolean sfx, gboolean test, gboolean info)
{
- gtk_widget_set_sensitive (New_button, New);
+ gtk_widget_set_sensitive (New_button, New);
gtk_widget_set_sensitive (new1, New);
- gtk_widget_set_sensitive (Open_button, Open);
+ gtk_widget_set_sensitive (Open_button, Open);
gtk_widget_set_sensitive (open1, Open);
gtk_widget_set_sensitive (close1, Close);
- gtk_widget_set_sensitive (AddFile_button, add);
- gtk_widget_set_sensitive (addfile, add);
- gtk_widget_set_sensitive (Extract_button, extract);
- gtk_widget_set_sensitive (extract_menu, extract);
- gtk_widget_set_sensitive (exe_menu, sfx);
- gtk_widget_set_sensitive (check_menu, test);
- gtk_widget_set_sensitive (properties, info);
- //gtk_widget_set_sensitive (select_all, select);
+ gtk_widget_set_sensitive (AddFile_button, add);
+ gtk_widget_set_sensitive (addfile, add);
+ gtk_widget_set_sensitive (Extract_button, extract);
+ gtk_widget_set_sensitive (extract_menu, extract);
+ gtk_widget_set_sensitive (exe_menu, sfx);
+ gtk_widget_set_sensitive (check_menu, test);
+ gtk_widget_set_sensitive (properties, info);
+ //gtk_widget_set_sensitive (select_all, select);
}
void xa_handle_navigation_buttons (GtkMenuItem *menuitem, gpointer user_data)
{
- unsigned short int bp = GPOINTER_TO_UINT(user_data);
- gint current_page;
- gint idx;
- XEntry *new_entry = NULL;
+ unsigned short int bp = GPOINTER_TO_UINT(user_data);
+ gint current_page;
+ gint idx;
+ XEntry *new_entry = NULL;
- current_page = gtk_notebook_get_current_page (notebook);
- idx = xa_find_archive_index (current_page);
+ current_page = gtk_notebook_get_current_page (notebook);
+ idx = xa_find_archive_index (current_page);
- switch (bp)
- {
- /* Root */
- case 0:
- if (archive[idx]->location_entry_path != NULL)
- {
- g_free(archive[idx]->location_entry_path);
- archive[idx]->location_entry_path = NULL;
- }
- xa_update_window_with_archive_entries(archive[idx],NULL);
- break;
+ switch (bp)
+ {
+ /* Root */
+ case 0:
+ if (archive[idx]->location_entry_path != NULL)
+ {
+ g_free(archive[idx]->location_entry_path);
+ archive[idx]->location_entry_path = NULL;
+ }
+ xa_update_window_with_archive_entries(archive[idx],NULL);
+ break;
- /* Back */
- case 1:
- if (g_slist_find(archive[idx]->forward,archive[idx]->current_entry) == NULL)
- archive[idx]->forward = g_slist_prepend(archive[idx]->forward,archive[idx]->current_entry);
- xa_update_window_with_archive_entries(archive[idx],archive[idx]->back->data);
- archive[idx]->back = archive[idx]->back->next;
- if (archive[idx]->back == NULL)
- gtk_widget_set_sensitive(back_button,FALSE);
- if (archive[idx]->forward != NULL)
- gtk_widget_set_sensitive(forward_button,TRUE);
- break;
+ /* Back */
+ case 1:
+ if (g_slist_find(archive[idx]->forward,archive[idx]->current_entry) == NULL)
+ archive[idx]->forward = g_slist_prepend(archive[idx]->forward,archive[idx]->current_entry);
+ xa_update_window_with_archive_entries(archive[idx],archive[idx]->back->data);
+ archive[idx]->back = archive[idx]->back->next;
+ if (archive[idx]->back == NULL)
+ gtk_widget_set_sensitive(back_button,FALSE);
+ if (archive[idx]->forward != NULL)
+ gtk_widget_set_sensitive(forward_button,TRUE);
+ break;
- /* Up */
- case 2:
- archive[idx]->forward = g_slist_prepend(archive[idx]->forward,archive[idx]->current_entry);
- new_entry = archive[idx]->current_entry;
- if (new_entry->prev->prev == NULL)
- {
- xa_update_window_with_archive_entries(archive[idx],NULL);
- gtk_widget_set_sensitive(up_button,FALSE);
- return;
- }
- xa_update_window_with_archive_entries(archive[idx],new_entry->prev);
- break;
+ /* Up */
+ case 2:
+ archive[idx]->forward = g_slist_prepend(archive[idx]->forward,archive[idx]->current_entry);
+ new_entry = archive[idx]->current_entry;
+ if (new_entry->prev->prev == NULL)
+ {
+ xa_update_window_with_archive_entries(archive[idx],NULL);
+ gtk_widget_set_sensitive(up_button,FALSE);
+ return;
+ }
+ xa_update_window_with_archive_entries(archive[idx],new_entry->prev);
+ break;
- /* Forward */
- case 3:
- if (g_slist_find(archive[idx]->back,archive[idx]->current_entry) == NULL)
- archive[idx]->back = g_slist_prepend(archive[idx]->back,archive[idx]->current_entry);
- xa_update_window_with_archive_entries(archive[idx],archive[idx]->forward->data);
- archive[idx]->forward = archive[idx]->forward->next;
- if (archive[idx]->forward == NULL)
- {
- gtk_widget_set_sensitive(back_button,TRUE);
- gtk_widget_set_sensitive(forward_button,FALSE);
- }
- break;
- }
+ /* Forward */
+ case 3:
+ if (g_slist_find(archive[idx]->back,archive[idx]->current_entry) == NULL)
+ archive[idx]->back = g_slist_prepend(archive[idx]->back,archive[idx]->current_entry);
+ xa_update_window_with_archive_entries(archive[idx],archive[idx]->forward->data);
+ archive[idx]->forward = archive[idx]->forward->next;
+ if (archive[idx]->forward == NULL)
+ {
+ gtk_widget_set_sensitive(back_button,TRUE);
+ gtk_widget_set_sensitive(forward_button,FALSE);
+ }
+ break;
+ }
}
Copied: xarchiver/branches/xarchiver-pcman/src/mime-type (from rev 26879, xarchiver/trunk/src/mime-type)
Modified: xarchiver/branches/xarchiver-pcman/src/mime.c
===================================================================
--- xarchiver/trunk/src/mime.c 2008-04-21 17:19:51 UTC (rev 26878)
+++ xarchiver/branches/xarchiver-pcman/src/mime.c 2008-04-21 19:46:12 UTC (rev 26880)
@@ -20,29 +20,29 @@
#include <config.h>
#endif
-#include "glib-mem.h" /* provide compatibility macros for g_slice */
+#include "glib-mem.h" /* provide compatibility macros for g_slice */
#include "mime.h"
typedef struct _XAMimeType
{
- char* name;
- char* icon_name;
- char* desc;
- GdkPixbuf* icon;
+ char* name;
+ char* icon_name;
+ char* desc;
+ GdkPixbuf* icon;
}XAMimeType;
static GHashTable *mime_cache = NULL;
static GdkPixbuf *folder_icon = NULL;
static GdkPixbuf *lock_icon = NULL;
-
+
static xa_mime_type_free( XAMimeType* type )
{
- g_free( type->name );
- g_free( type->icon_name );
- g_free( type->desc );
- if( type->icon )
- g_object_unref( type->icon );
- g_slice_free( XAMimeType, type );
+ g_free( type->name );
+ g_free( type->icon_name );
+ g_free( type->desc );
+ if( type->icon )
+ g_object_unref( type->icon );
+ g_slice_free( XAMimeType, type );
}
void xa_mime_type_init()
@@ -54,7 +54,6 @@
int i, n_caches;
*/
mime_type_init();
-
#if 0
/* install file alteration monitor for mime-cache */
caches = mime_type_get_caches( &n_caches );
@@ -84,141 +83,141 @@
type = (XAMimeType*)g_hash_table_lookup( mime_cache, name );
if( G_UNLIKELY( ! type ) )
{
- type = g_slice_new0( XAMimeType );
- type->name = g_strdup( name );
- g_hash_table_insert( mime_cache, type->name, type);
+ type = g_slice_new0( XAMimeType );
+ type->name = g_strdup( name );
+ g_hash_table_insert( mime_cache, type->name, type);
}
- return type;
+ return type;
}
const char *xa_get_stock_mime_icon(char *filename)
{
- const char *mime;
- const char *icon_name = "binary";
+ const char *mime;
+ const char *icon_name = "binary";
- //g_print ("%s\t%s\n",filename,mime);
- if (strstr(filename,".ogg") || strstr(filename,".flac") )
- icon_name = "sound";
- else if (strncmp(mime,"image/",6) == 0)
- icon_name = "image";
- else if (strcmp(mime,"text/html") == 0)
- icon_name = "html";
- else if (strncmp(mime,"text/",5) == 0)
- icon_name = "txt";
- else if (strcmp(mime,"application/rtf") == 0 || strcmp(mime,"application/pdf") == 0 || strcmp(mime,"application/msword") == 0
- || strcmp (mime,"application/vnd.oasis.opendocument.text") == 0)
- icon_name = "document";
- else if (strcmp(mime,"audio/mpeg") == 0 || strcmp(mime,"audio/midi") == 0 )
- icon_name = "sound";
- else if (strcmp(mime,"application/vnd.ms-excel") == 0 || strcmp(mime,"application/vnd.oasis.opendocument.spreadsheet") == 0)
- icon_name = "gnome-mime-application-vnd.ms-excel";
- else if (strcmp(mime,"application/vnd.ms-powerpoint") == 0 || strcmp (mime,"application/vnd.oasis.opendocument.presentation") == 0)
- icon_name = "gnome-mime-application-vnd.ms-powerpoint";
- else if (strcmp(mime,"application/zip") == 0 || strcmp(mime,"application/x-rar") == 0 || strcmp(mime,"application/x-tar") == 0
- || strcmp(mime,"application/x-7z-compressed") == 0 || strcmp(mime,"application/x-bzip-compressed-tar") == 0
- || strcmp (mime,"application/x-compressed-tar") == 0 || strcmp (mime,"application/x-lha") == 0
- || strcmp (mime,"application/x-rpm") == 0 || strcmp (mime,"application/x-deb") == 0
- || strcmp (mime,"application/x-bzip") == 0 || strcmp (mime,"application/x-gzip") == 0)
- icon_name = "package";
- else if (strcmp(mime,"application/x-shockwave-flash") == 0 || strcmp(mime,"video/mpeg") == 0 || strcmp(mime,"video/quicktime") == 0
- || strcmp(mime,"video/x-msvideo") == 0 || strcmp(mime,"application/x-flash-video") == 0)
- icon_name = "video";
- else if (strcmp(mime,"application/x-cd-image") == 0)
- icon_name = "application-x-cd-image";
- else if (strcmp(mime,"application/x-php") == 0)
- icon_name = "gnome-mime-application-x-php";
- else if (strcmp(mime,"application/x-perl") == 0 || strcmp (mime,"application/x-csh") == 0 || strcmp (mime,"application/x-shellscript") == 0)
- icon_name = "gnome-mime-application-x-perl";
- else if (strcmp(mime,"application/x-font-ttf") == 0)
- icon_name = "gnome-mime-application-x-font-ttf";
- return icon_name;
+ //g_print ("%s\t%s\n",filename,mime);
+ if (strstr(filename,".ogg") || strstr(filename,".flac") )
+ icon_name = "sound";
+ else if (strncmp(mime,"image/",6) == 0)
+ icon_name = "image";
+ else if (strcmp(mime,"text/html") == 0)
+ icon_name = "html";
+ else if (strncmp(mime,"text/",5) == 0)
+ icon_name = "txt";
+ else if (strcmp(mime,"application/rtf") == 0 || strcmp(mime,"application/pdf") == 0 || strcmp(mime,"application/msword") == 0
+ || strcmp (mime,"application/vnd.oasis.opendocument.text") == 0)
+ icon_name = "document";
+ else if (strcmp(mime,"audio/mpeg") == 0 || strcmp(mime,"audio/midi") == 0 )
+ icon_name = "sound";
+ else if (strcmp(mime,"application/vnd.ms-excel") == 0 || strcmp(mime,"application/vnd.oasis.opendocument.spreadsheet") == 0)
+ icon_name = "gnome-mime-application-vnd.ms-excel";
+ else if (strcmp(mime,"application/vnd.ms-powerpoint") == 0 || strcmp (mime,"application/vnd.oasis.opendocument.presentation") == 0)
+ icon_name = "gnome-mime-application-vnd.ms-powerpoint";
+ else if (strcmp(mime,"application/zip") == 0 || strcmp(mime,"application/x-rar") == 0 || strcmp(mime,"application/x-tar") == 0
+ || strcmp(mime,"application/x-7z-compressed") == 0 || strcmp(mime,"application/x-bzip-compressed-tar") == 0
+ || strcmp (mime,"application/x-compressed-tar") == 0 || strcmp (mime,"application/x-lha") == 0
+ || strcmp (mime,"application/x-rpm") == 0 || strcmp (mime,"application/x-deb") == 0
+ || strcmp (mime,"application/x-bzip") == 0 || strcmp (mime,"application/x-gzip") == 0)
+ icon_name = "package";
+ else if (strcmp(mime,"application/x-shockwave-flash") == 0 || strcmp(mime,"video/mpeg") == 0 || strcmp(mime,"video/quicktime") == 0
+ || strcmp(mime,"video/x-msvideo") == 0 || strcmp(mime,"application/x-flash-video") == 0)
+ icon_name = "video";
+ else if (strcmp(mime,"application/x-cd-image") == 0)
+ icon_name = "application-x-cd-image";
+ else if (strcmp(mime,"application/x-php") == 0)
+ icon_name = "gnome-mime-application-x-php";
+ else if (strcmp(mime,"application/x-perl") == 0 || strcmp (mime,"application/x-csh") == 0 || strcmp (mime,"application/x-shellscript") == 0)
+ icon_name = "gnome-mime-application-x-perl";
+ else if (strcmp(mime,"application/x-font-ttf") == 0)
+ icon_name = "gnome-mime-application-x-font-ttf";
+ return icon_name;
}
GdkPixbuf *xa_get_pixbuf_icon_from_cache(gchar *filename)
{
char icon_name[ 100 ];
- const char* mime_type;
- XAMimeType* mime;
+ const char* mime_type;
+ XAMimeType* mime;
- if (strcmp(filename,"folder") == 0)
- {
- if( G_LIKELY( folder_icon ) )
- return (GdkPixbuf*)g_object_ref( folder_icon );
- folder_icon = gtk_icon_theme_load_icon(icon_theme,"folder", 20, 0, NULL);
- if( G_UNLIKELY( ! folder_icon ) )
- folder_icon = gtk_icon_theme_load_icon(icon_theme,"gnome-fs-directory", 20, 0, NULL);
- return folder_icon ? (GdkPixbuf*)g_object_ref( folder_icon ) : NULL;
- }
- else if (strcmp(filename,"lock") == 0)
- {
- if( G_LIKELY( lock_icon ) )
- return (GdkPixbuf*)g_object_ref( lock_icon );
- lock_icon = gtk_icon_theme_load_icon(icon_theme,GTK_STOCK_DIALOG_AUTHENTICATION, 20, 0,NULL);
- return lock_icon ? (GdkPixbuf*)g_object_ref( lock_icon ) : NULL;
- }
- else
- {
- char* sep;
- GdkPixbuf* icon = NULL;
+ if (strcmp(filename,"folder") == 0)
+ {
+ if( G_LIKELY( folder_icon ) )
+ return (GdkPixbuf*)g_object_ref( folder_icon );
+ folder_icon = gtk_icon_theme_load_icon(icon_theme,"folder", 20, 0, NULL);
+ if( G_UNLIKELY( ! folder_icon ) )
+ folder_icon = gtk_icon_theme_load_icon(icon_theme,"gnome-fs-directory", 20, 0, NULL);
+ return folder_icon ? (GdkPixbuf*)g_object_ref( folder_icon ) : NULL;
+ }
+ else if (strcmp(filename,"lock") == 0)
+ {
+ if( G_LIKELY( lock_icon ) )
+ return (GdkPixbuf*)g_object_ref( lock_icon );
+ lock_icon = gtk_icon_theme_load_icon(icon_theme,GTK_STOCK_DIALOG_AUTHENTICATION, 20, 0,NULL);
+ return lock_icon ? (GdkPixbuf*)g_object_ref( lock_icon ) : NULL;
+ }
+ else
+ {
+ char* sep;
+ GdkPixbuf* icon = NULL;
#ifdef USE_MIMETYPE
- mime_type = mime_type_get_by_filename(filename, NULL);
+ mime_type = mime_type_get_by_filename(filename, NULL);
#else
- mime_type = xdg_mime_get_mime_type_from_file_name(filename);
+ mime_type = xdg_mime_get_mime_type_from_file_name(filename);
#endif
- if( mime_type )
- {
- mime = lookup_mime_type( mime_type );
+ if( mime_type )
+ {
+ mime = lookup_mime_type( mime_type );
- if( mime->icon )
- return (GdkPixbuf*)g_object_ref( mime->icon );
+ if( mime->icon )
+ return (GdkPixbuf*)g_object_ref( mime->icon );
- sep = strchr( mime->name, '/' );
- if ( sep )
- {
- strcpy( icon_name, mime->name );
- icon_name[ (sep - mime->name) ] = '-';
- icon = gtk_icon_theme_load_icon ( icon_theme, icon_name, 20, 0, NULL );
- if ( ! icon )
- {
- strcpy( icon_name, "gnome-mime-" );
- strncat( icon_name, mime->name, ( sep - mime->name ) );
- strcat( icon_name, "-" );
- strcat( icon_name, sep + 1 );
- icon = gtk_icon_theme_load_icon ( icon_theme, icon_name, 20, 0, NULL );
- }
- if ( G_UNLIKELY( ! icon ) )
- {
- icon_name[ 11 ] = 0;
- strncat( icon_name, mime->name, ( sep - mime->name ) );
- icon = gtk_icon_theme_load_icon ( icon_theme, icon_name, 20, 0, NULL );
- }
- }
- }
+ sep = strchr( mime->name, '/' );
+ if ( sep )
+ {
+ strcpy( icon_name, mime->name );
+ icon_name[ (sep - mime->name) ] = '-';
+ icon = gtk_icon_theme_load_icon ( icon_theme, icon_name, 20, 0, NULL );
+ if ( ! icon )
+ {
+ strcpy( icon_name, "gnome-mime-" );
+ strncat( icon_name, mime->name, ( sep - mime->name ) );
+ strcat( icon_name, "-" );
+ strcat( icon_name, sep + 1 );
+ icon = gtk_icon_theme_load_icon ( icon_theme, icon_name, 20, 0, NULL );
+ }
+ if ( G_UNLIKELY( ! icon ) )
+ {
+ icon_name[ 11 ] = 0;
+ strncat( icon_name, mime->name, ( sep - mime->name ) );
+ icon = gtk_icon_theme_load_icon ( icon_theme, icon_name, 20, 0, NULL );
+ }
+ }
+ }
- if( G_UNLIKELY( !icon ) )
- {
- const char* fallback = xa_get_stock_mime_icon(filename);
- icon = gtk_icon_theme_load_icon ( icon_theme, fallback, 20, 0, NULL );
- }
- if( G_UNLIKELY( !icon ) )
- {
- /* prevent endless recursion of XDG_MIME_TYPE_UNKNOWN */
- if( G_LIKELY( strcmp(mime->name, XDG_MIME_TYPE_UNKNOWN) ) )
- {
- /* FIXME: fallback to icon of parent mime-type */
- icon = xa_get_pixbuf_icon_from_cache( XDG_MIME_TYPE_UNKNOWN );
- }
- else /* unknown */
- icon = gtk_icon_theme_load_icon ( icon_theme, "unknown", 20, 0, NULL );
- }
+ if( G_UNLIKELY( !icon ) )
+ {
+ const char* fallback = xa_get_stock_mime_icon(filename);
+ icon = gtk_icon_theme_load_icon ( icon_theme, fallback, 20, 0, NULL );
+ }
+ if( G_UNLIKELY( !icon ) )
+ {
+ /* prevent endless recursion of XDG_MIME_TYPE_UNKNOWN */
+ if( G_LIKELY( strcmp(mime->name, XDG_MIME_TYPE_UNKNOWN) ) )
+ {
+ /* FIXME: fallback to icon of parent mime-type */
+ icon = xa_get_pixbuf_icon_from_cache( XDG_MIME_TYPE_UNKNOWN );
+ }
+ else /* unknown */
+ icon = gtk_icon_theme_load_icon ( icon_theme, "unknown", 20, 0, NULL );
+ }
- mime->icon = icon;
- return (GdkPixbuf*)g_object_ref( icon );
- }
- return NULL;
+ mime->icon = icon;
+ return (GdkPixbuf*)g_object_ref( icon );
+ }
+ return NULL;
}
void xa_free_icon_cache()
{
- g_hash_table_destroy( mime_cache );
+ g_hash_table_destroy( mime_cache );
}
Modified: xarchiver/branches/xarchiver-pcman/src/pref_dialog.c
===================================================================
--- xarchiver/trunk/src/pref_dialog.c 2008-04-21 17:19:51 UTC (rev 26878)
+++ xarchiver/branches/xarchiver-pcman/src/pref_dialog.c 2008-04-21 19:46:12 UTC (rev 26880)
@@ -26,498 +26,503 @@
extern gboolean unrar;
Prefs_dialog_data *xa_create_prefs_dialog()
{
- GtkWidget *vbox1, *vbox4, *hbox1, *scrolledwindow1, *prefs_iconview, *label5;
- GtkWidget *label1, *label2, *label3, *label4, *frame1, *frame2, *frame3, *alignment1, *alignment2, *alignment3;
- GtkWidget *label6, *label7, *label8, *label9, *table1, *table2;
- GtkTreeIter iter;
- GList *archive_type;
- GdkPixbuf *icon_pixbuf;
- Prefs_dialog_data *prefs_data;
+ GtkWidget *vbox1, *vbox4, *hbox1, *scrolledwindow1, *prefs_iconview, *label5;
+ GtkWidget *label1, *label2, *label3, *label4, *frame1, *frame2, *frame3, *alignment1, *alignment2, *alignment3;
+ GtkWidget *label6, *label7, *label8, *label9, *table1, *table2;
+ GtkTreeIter iter;
+ GList *archive_type;
+ GdkPixbuf *icon_pixbuf;
+ Prefs_dialog_data *prefs_data;
- prefs_data = g_new0 (Prefs_dialog_data,1);
- prefs_data->dialog1 = gtk_dialog_new_with_buttons (_("Preferences"),
- GTK_WINDOW (MainWindow), GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
- GTK_STOCK_CANCEL,GTK_RESPONSE_CANCEL,GTK_STOCK_OK,GTK_RESPONSE_OK, NULL);
- tooltips = gtk_tooltips_new ();
- gtk_dialog_set_default_response (GTK_DIALOG (prefs_data->dialog1), GTK_RESPONSE_OK);
+ prefs_data = g_new0 (Prefs_dialog_data,1);
+ prefs_data->dialog1 = gtk_dialog_new_with_buttons (_("Preferences"),
+ GTK_WINDOW (MainWindow), GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_STOCK_CANCEL,GTK_RESPONSE_CANCEL,GTK_STOCK_OK,GTK_RESPONSE_OK, NULL);
+ tooltips = gtk_tooltips_new ();
+ gtk_dialog_set_default_response (GTK_DIALOG (prefs_data->dialog1), GTK_RESPONSE_OK);
- vbox1 = GTK_DIALOG (prefs_data->dialog1)->vbox;
- hbox1 = gtk_hbox_new (FALSE, 6);
- gtk_box_pack_start (GTK_BOX (vbox1), hbox1, TRUE, TRUE, 6);
+ vbox1 = GTK_DIALOG (prefs_data->dialog1)->vbox;
+ hbox1 = gtk_hbox_new (FALSE, 6);
+ gtk_box_pack_start (GTK_BOX (vbox1), hbox1, TRUE, TRUE, 6);
- scrolledwindow1 = gtk_scrolled_window_new (NULL, NULL);
- gtk_box_pack_start (GTK_BOX (hbox1), scrolledwindow1, TRUE, TRUE, 6);
- g_object_set (G_OBJECT (scrolledwindow1),"hscrollbar-policy", GTK_POLICY_NEVER,"shadow-type", GTK_SHADOW_IN,"vscrollbar-policy", GTK_POLICY_NEVER, NULL);
-
- prefs_data->prefs_liststore = gtk_list_store_new (3,GDK_TYPE_PIXBUF,G_TYPE_STRING,G_TYPE_UINT);
- gtk_list_store_append (prefs_data->prefs_liststore,&iter);
- gchar *pixbuf_file = g_strconcat(DATADIR,"/pixmaps/xarchiver-behaviour.svg",NULL);
- icon_pixbuf = gdk_pixbuf_new_from_file (pixbuf_file,NULL);
- g_free (pixbuf_file);
- gtk_list_store_set (prefs_data->prefs_liststore, &iter, 0, icon_pixbuf, 1, _("Behaviour"),2,0,-1);
- if(icon_pixbuf != NULL)
- g_object_unref (icon_pixbuf);
+ scrolledwindow1 = gtk_scrolled_window_new (NULL, NULL);
+ gtk_box_pack_start (GTK_BOX (hbox1), scrolledwindow1, TRUE, TRUE, 6);
+ g_object_set (G_OBJECT (scrolledwindow1),"hscrollbar-policy", GTK_POLICY_NEVER,"shadow-type", GTK_SHADOW_IN,"vscrollbar-policy", GTK_POLICY_NEVER, NULL);
- gtk_list_store_append (prefs_data->prefs_liststore, &iter);
- icon_pixbuf = gtk_widget_render_icon (prefs_data->dialog1, "gtk-find", GTK_ICON_SIZE_DND, NULL);
- gtk_list_store_set (prefs_data->prefs_liststore, &iter, 0, icon_pixbuf, 1, _("View"),2,1,-1);
- g_object_unref (icon_pixbuf);
+ prefs_data->prefs_liststore = gtk_list_store_new (3,GDK_TYPE_PIXBUF,G_TYPE_STRING,G_TYPE_UINT);
+ gtk_list_store_append (prefs_data->prefs_liststore,&iter);
+ gchar *pixbuf_file = g_strconcat(DATADIR,"/pixmaps/xarchiver-behaviour.svg",NULL);
+ icon_pixbuf = gdk_pixbuf_new_from_file (pixbuf_file,NULL);
+ g_free (pixbuf_file);
+ gtk_list_store_set (prefs_data->prefs_liststore, &iter, 0, icon_pixbuf, 1, _("Behaviour"),2,0,-1);
+ if(icon_pixbuf != NULL)
+ g_object_unref (icon_pixbuf);
- gtk_list_store_append (prefs_data->prefs_liststore, &iter);
- icon_pixbuf = gtk_widget_render_icon (prefs_data->dialog1, "gtk-execute", GTK_ICON_SIZE_DND, NULL);
- gtk_list_store_set (prefs_data->prefs_liststore, &iter, 0, icon_pixbuf, 1, _("Advanced"),2,2,-1);
- g_object_unref (icon_pixbuf);
+ gtk_list_store_append (prefs_data->prefs_liststore, &iter);
+ icon_pixbuf = gtk_widget_render_icon (prefs_data->dialog1, "gtk-find", GTK_ICON_SIZE_DND, NULL);
+ gtk_list_store_set (prefs_data->prefs_liststore, &iter, 0, icon_pixbuf, 1, _("View"),2,1,-1);
+ g_object_unref (icon_pixbuf);
- prefs_iconview = gtk_icon_view_new_with_model(GTK_TREE_MODEL(prefs_data->prefs_liststore));
- g_object_unref (prefs_data->prefs_liststore);
+ gtk_list_store_append (prefs_data->prefs_liststore, &iter);
+ icon_pixbuf = gtk_widget_render_icon (prefs_data->dialog1, "gtk-execute", GTK_ICON_SIZE_DND, NULL);
+ gtk_list_store_set (prefs_data->prefs_liststore, &iter, 0, icon_pixbuf, 1, _("Advanced"),2,2,-1);
+ g_object_unref (icon_pixbuf);
- gtk_widget_set_size_request(prefs_iconview, 140, 190);
- gtk_icon_view_set_orientation (GTK_ICON_VIEW (prefs_iconview), GTK_ORIENTATION_VERTICAL);
- gtk_icon_view_set_item_width (GTK_ICON_VIEW (prefs_iconview),130);
- gtk_icon_view_set_columns (GTK_ICON_VIEW (prefs_iconview),1);
- gtk_icon_view_set_pixbuf_column (GTK_ICON_VIEW (prefs_iconview), 0);
- gtk_icon_view_set_text_column(GTK_ICON_VIEW (prefs_iconview), 1);
- gtk_container_add (GTK_CONTAINER (scrolledwindow1), prefs_iconview);
-
- prefs_data->prefs_notebook = gtk_notebook_new ();
- g_object_set (G_OBJECT (prefs_data->prefs_notebook),"show-border", FALSE,"show-tabs", FALSE,"enable-popup",FALSE,NULL);
- gtk_box_pack_start (GTK_BOX (hbox1), prefs_data->prefs_notebook, TRUE, TRUE, 0);
- GTK_WIDGET_UNSET_FLAGS (prefs_data->prefs_notebook, GTK_CAN_FOCUS);
- g_signal_connect (G_OBJECT (prefs_iconview), "selection-changed",G_CALLBACK (xa_prefs_iconview_changed), prefs_data);
+ prefs_iconview = gtk_icon_view_new_with_model(GTK_TREE_MODEL(prefs_data->prefs_liststore));
+ g_object_unref (prefs_data->prefs_liststore);
- /* Behaviour page*/
- frame1 = gtk_frame_new (NULL);
- gtk_container_add (GTK_CONTAINER (prefs_data->prefs_notebook), frame1);
- gtk_frame_set_shadow_type (GTK_FRAME (frame1), GTK_SHADOW_NONE);
+ gtk_widget_set_size_request(prefs_iconview, 140, 190);
+ gtk_icon_view_set_orientation (GTK_ICON_VIEW (prefs_iconview), GTK_ORIENTATION_VERTICAL);
+ gtk_icon_view_set_item_width (GTK_ICON_VIEW (prefs_iconview),130);
+ gtk_icon_view_set_columns (GTK_ICON_VIEW (prefs_iconview),1);
+ gtk_icon_view_set_pixbuf_column (GTK_ICON_VIEW (prefs_iconview), 0);
+ gtk_icon_view_set_text_column(GTK_ICON_VIEW (prefs_iconview), 1);
+ gtk_container_add (GTK_CONTAINER (scrolledwindow1), prefs_iconview);
- alignment1 = gtk_alignment_new (0.5, 0.5, 1, 1);
- gtk_container_add (GTK_CONTAINER (frame1), alignment1);
- gtk_alignment_set_padding (GTK_ALIGNMENT (alignment1), 0, 0, 12, 0);
+ prefs_data->prefs_notebook = gtk_notebook_new ();
+ g_object_set (G_OBJECT (prefs_data->prefs_notebook),"show-border", FALSE,"show-tabs", FALSE,"enable-popup",FALSE,NULL);
+ gtk_box_pack_start (GTK_BOX (hbox1), prefs_data->prefs_notebook, TRUE, TRUE, 0);
+ GTK_WIDGET_UNSET_FLAGS (prefs_data->prefs_notebook, GTK_CAN_FOCUS);
+ g_signal_connect (G_OBJECT (prefs_iconview), "selection-changed",G_CALLBACK (xa_prefs_iconview_changed), prefs_data);
- vbox4 = gtk_vbox_new (FALSE, 2);
- gtk_container_add (GTK_CONTAINER (alignment1), vbox4);
+ /* Behaviour page*/
+ frame1 = gtk_frame_new (NULL);
+ gtk_container_add (GTK_CONTAINER (prefs_data->prefs_notebook), frame1);
+ gtk_frame_set_shadow_type (GTK_FRAME (frame1), GTK_SHADOW_NONE);
- hbox1 = gtk_hbox_new (FALSE, 5);
- gtk_box_pack_start (GTK_BOX (vbox4), hbox1, FALSE, TRUE, 0);
+ alignment1 = gtk_alignment_new (0.5, 0.5, 1, 1);
+ gtk_container_add (GTK_CONTAINER (frame1), alignment1);
+ gtk_alignment_set_padding (GTK_ALIGNMENT (alignment1), 0, 0, 12, 0);
- label4 = gtk_label_new (_("Preferred archive format"));
- gtk_box_pack_start (GTK_BOX (hbox1), label4, FALSE, FALSE, 0);
+ vbox4 = gtk_vbox_new (FALSE, 2);
+ gtk_container_add (GTK_CONTAINER (alignment1), vbox4);
- prefs_data->combo_prefered_format = gtk_combo_box_new_text();
- gtk_box_pack_start (GTK_BOX (hbox1), prefs_data->combo_prefered_format, FALSE, TRUE, 0);
- archive_type = g_list_first (ArchiveType);
- while ( archive_type != NULL )
- {
- if (archive_type->data == "tgz" || archive_type->data == "rpm" || (archive_type->data == "rar" && unrar) )
- goto next;
- else
- gtk_combo_box_append_text (GTK_COMBO_BOX (prefs_data->combo_prefered_format),archive_type->data );
- next:
- archive_type = g_list_next (archive_type);
- }
+ hbox1 = gtk_hbox_new (FALSE, 5);
+ gtk_box_pack_start (GTK_BOX (vbox4), hbox1, FALSE, TRUE, 0);
- prefs_data->allow_dir_extract_with_dnd = gtk_check_button_new_with_mnemonic (_("Allow extracting dirs by drag and drop"));
- gtk_box_pack_start (GTK_BOX (vbox4), prefs_data->allow_dir_extract_with_dnd, FALSE, FALSE, 0);
- gtk_button_set_focus_on_click (GTK_BUTTON (prefs_data->allow_dir_extract_with_dnd), FALSE);
+ label4 = gtk_label_new (_("Preferred archive format"));
+ gtk_box_pack_start (GTK_BOX (hbox1), label4, FALSE, FALSE, 0);
- prefs_data->confirm_deletion = gtk_check_button_new_with_mnemonic (_("Confirm deletion of files"));
- gtk_box_pack_start (GTK_BOX (vbox4), prefs_data->confirm_deletion, FALSE, FALSE, 0);
- gtk_button_set_focus_on_click (GTK_BUTTON (prefs_data->confirm_deletion), FALSE);
+ prefs_data->combo_prefered_format = gtk_combo_box_new_text();
+ gtk_box_pack_start (GTK_BOX (hbox1), prefs_data->combo_prefered_format, FALSE, TRUE, 0);
+ archive_type = g_list_first (ArchiveType);
+ while ( archive_type != NULL )
+ {
+ if (archive_type->data == "tgz" || archive_type->data == "rpm" || (archive_type->data == "rar" && unrar) )
+ goto next;
+ else
+ gtk_combo_box_append_text (GTK_COMBO_BOX (prefs_data->combo_prefered_format),archive_type->data );
+ next:
+ archive_type = g_list_next (archive_type);
+ }
- label1 = gtk_label_new ("");
- gtk_notebook_set_tab_label (GTK_NOTEBOOK (prefs_data->prefs_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (prefs_data->prefs_notebook), 0), label1);
+ prefs_data->allow_dir_extract_with_dnd = gtk_check_button_new_with_mnemonic (_("Allow extracting dirs by drag and drop"));
+ gtk_box_pack_start (GTK_BOX (vbox4), prefs_data->allow_dir_extract_with_dnd, FALSE, FALSE, 0);
+ gtk_button_set_focus_on_click (GTK_BUTTON (prefs_data->allow_dir_extract_with_dnd), FALSE);
- /* View page*/
- frame2 = gtk_frame_new (NULL);
- gtk_container_add (GTK_CONTAINER (prefs_data->prefs_notebook), frame2);
- gtk_frame_set_shadow_type (GTK_FRAME (frame2), GTK_SHADOW_NONE);
+ prefs_data->confirm_deletion = gtk_check_button_new_with_mnemonic (_("Confirm deletion of files"));
+ gtk_box_pack_start (GTK_BOX (vbox4), prefs_data->confirm_deletion, FALSE, FALSE, 0);
+ gtk_button_set_focus_on_click (GTK_BUTTON (prefs_data->confirm_deletion), FALSE);
- alignment2 = gtk_alignment_new (0.5, 0.5, 1, 1);
- gtk_container_add (GTK_CONTAINER (frame2), alignment2);
- gtk_alignment_set_padding (GTK_ALIGNMENT (alignment2), 0, 0, 12, 0);
+ label1 = gtk_label_new ("");
+ gtk_notebook_set_tab_label (GTK_NOTEBOOK (prefs_data->prefs_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (prefs_data->prefs_notebook), 0), label1);
- table1 = gtk_table_new (6, 2,FALSE);
- gtk_container_add (GTK_CONTAINER (alignment2), table1);
- gtk_table_set_row_spacings (GTK_TABLE (table1), 2);
- gtk_table_set_col_spacings (GTK_TABLE (table1), 4);
+ /* View page*/
+ frame2 = gtk_frame_new (NULL);
+ gtk_container_add (GTK_CONTAINER (prefs_data->prefs_notebook), frame2);
+ gtk_frame_set_shadow_type (GTK_FRAME (frame2), GTK_SHADOW_NONE);
- label5 = gtk_label_new (_("View archive content as"));
- gtk_table_attach (GTK_TABLE (table1), label5, 0, 1, 0, 1,
+ alignment2 = gtk_alignment_new (0.5, 0.5, 1, 1);
+ gtk_container_add (GTK_CONTAINER (frame2), alignment2);
+ gtk_alignment_set_padding (GTK_ALIGNMENT (alignment2), 0, 0, 12, 0);
+
+ table1 = gtk_table_new (6, 2,FALSE);
+ gtk_container_add (GTK_CONTAINER (alignment2), table1);
+ gtk_table_set_row_spacings (GTK_TABLE (table1), 2);
+ gtk_table_set_col_spacings (GTK_TABLE (table1), 4);
+
+#if 0 /* hold this temporarily for 0.5 release */
+ label5 = gtk_label_new (_("View archive content as"));
+ gtk_table_attach (GTK_TABLE (table1), label5, 0, 1, 0, 1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_SHRINK), 0, 0);
- gtk_misc_set_alignment (GTK_MISC (label5), 0, 0.5);
- prefs_data->combo_archive_view = gtk_combo_box_new_text();
- gtk_combo_box_append_text (GTK_COMBO_BOX (prefs_data->combo_archive_view), _("list") );
- gtk_combo_box_append_text (GTK_COMBO_BOX (prefs_data->combo_archive_view), _("icon") );
- gtk_table_attach (GTK_TABLE (table1), prefs_data->combo_archive_view, 1, 2, 0, 1,
+ gtk_misc_set_alignment (GTK_MISC (label5), 0, 0.5);
+ prefs_data->combo_archive_view = gtk_combo_box_new_text();
+ gtk_combo_box_append_text (GTK_COMBO_BOX (prefs_data->combo_archive_view), _("list") );
+ gtk_combo_box_append_text (GTK_COMBO_BOX (prefs_data->combo_archive_view), _("icon") );
+ gtk_table_attach (GTK_TABLE (table1), prefs_dat