diff -rc rox-menu-source/AppInfo.xml rox-menu-source_new/AppInfo.xml *** rox-menu-source/AppInfo.xml Wed Jul 4 18:08:23 2001 --- rox-menu-source_new/AppInfo.xml Mon Oct 21 18:45:43 2002 *************** *** 7,11 **** --- 7,14 ---- GNU General Public License 2 http://www.mindcrisis.f2s.com/rox + + + Pops up a menu with most used applications. diff -rc rox-menu-source/AppRun rox-menu-source_new/AppRun *** rox-menu-source/AppRun Sun May 27 13:04:09 2001 --- rox-menu-source_new/AppRun Mon Oct 21 18:45:43 2002 *************** *** 17,31 **** case $1 in --debug) shift ; DEBUGGER=gdb ;; --compile) ! if [ ! -d $APP_DIR/src ] ; then ! echo "ERROR from $0:" >&2 ! echo "Cannot compile - source code is missing!" >&2 ! exit 1 ! fi ! echo "Compiling $APP_DIR... please wait..." >&2 ! (rm -f $APP_DIR/src/.arch) && (echo $PLATFORM > $APP_DIR/src/.arch) ! (cd $APP_DIR/src; make) ! exit 1 esac BIN=$APP_DIR/$PLATFORM/$PROG --- 17,36 ---- case $1 in --debug) shift ; DEBUGGER=gdb ;; --compile) ! if [ ! -d $APP_DIR/src ] ; then ! echo "ERROR from $0:" >&2 ! echo "Cannot compile - source code is missing!" >&2 ! exit 1 ! fi ! echo "Compiling $APP_DIR... please wait..." >&2 ! (rm -f $APP_DIR/src/.arch) && (echo $PLATFORM > $APP_DIR/src/.arch) ! (cd $APP_DIR/src; make) ! exit 1 ! ;; ! --quit) ! killall ROX-Menu ! exit 0 ! ;; esac BIN=$APP_DIR/$PLATFORM/$PROG Only in rox-menu-source_new: AppletRun~ Only in rox-menu-source_new: Linux-ix86 Only in rox-menu-source_new: ROX-Menu Only in rox-menu-source_new/src: .arch Only in rox-menu-source_new/src: choices.o diff -rc rox-menu-source/src/menu_applet.c rox-menu-source_new/src/menu_applet.c *** rox-menu-source/src/menu_applet.c Wed Jul 4 18:10:31 2001 --- rox-menu-source_new/src/menu_applet.c Mon Oct 21 18:49:08 2002 *************** *** 198,213 **** { GtkWidget *hbox, *pixmap, *label; char icon_path[256]; hbox = gtk_hbox_new(FALSE, 5); gtk_widget_show(hbox); gtk_container_add(GTK_CONTAINER(menuitem), hbox); snprintf(icon_path, 256, "%s/AppIcon.xpm", dir); if (from == NULL) { ! pixmap = create_pixmap(GTK_WIDGET(button), icon_path); } else { ! pixmap = create_pixmap_d(GTK_WIDGET(button), from); } gtk_widget_show(pixmap); gtk_box_pack_start(GTK_BOX(hbox), pixmap, FALSE, FALSE, 0); --- 198,224 ---- { GtkWidget *hbox, *pixmap, *label; char icon_path[256]; + /* To check if a file is open */ + FILE *app_icon=NULL; hbox = gtk_hbox_new(FALSE, 5); gtk_widget_show(hbox); gtk_container_add(GTK_CONTAINER(menuitem), hbox); snprintf(icon_path, 256, "%s/AppIcon.xpm", dir); + /* Now let's try to open the file */ + app_icon=fopen(icon_path,"r"); + if (app_icon == NULL) { + snprintf(icon_path, 256, "%s/.DirIcon", dir); + app_icon=fopen(icon_path,"r"); + } + if (from == NULL) { ! pixmap = create_pixmap(GTK_WIDGET(button), icon_path); ! } else if (app_icon != NULL) { ! pixmap = create_pixmap(GTK_WIDGET(button), icon_path); } else { ! pixmap = create_pixmap_d(GTK_WIDGET(button), from); } gtk_widget_show(pixmap); gtk_box_pack_start(GTK_BOX(hbox), pixmap, FALSE, FALSE, 0); *************** *** 352,357 **** --- 363,384 ---- } + /* + Some signal handlers for destroying the window. I found it annoying + that clicking the WM's 'X' left the program running. + -P.G. + */ + gint delete_event(GtkWidget *widget, GdkEvent *event, gpointer data) + { + return(FALSE); + } + + void destroy(GtkWidget *widget, gpointer data) + { + gtk_main_quit(); + } + /* End edit -P.G. */ + int main(int argc, char *argv[], char * envp[]) { struct sigaction act; *************** *** 364,376 **** label_font=gdk_font_load("-adobe-helvetica-bold-r-normal-*-*-120-*-*-p-*-iso8859-1"); if (argc > 1) { ! window = gtk_plug_new(atol(argv[1])); ! gtk_signal_connect(GTK_OBJECT(window), "destroy", GTK_SIGNAL_FUNC(gtk_main_quit), "WM destroy"); } else { window = gtk_window_new(GTK_WINDOW_TOPLEVEL); } /* Let child processes die */ act.sa_handler = child_died; --- 391,412 ---- label_font=gdk_font_load("-adobe-helvetica-bold-r-normal-*-*-120-*-*-p-*-iso8859-1"); if (argc > 1) { ! window = gtk_plug_new(atol(argv[1])); ! /* ! I have no idea why this was in the if block, so I just ! moved that signal handler outside. -P.G. ! gtk_signal_connect(GTK_OBJECT(window), "destroy", GTK_SIGNAL_FUNC(gtk_main_quit), "WM destroy"); + */ } else { window = gtk_window_new(GTK_WINDOW_TOPLEVEL); } + /* Add those signal handlers -P.G. */ + gtk_signal_connect(GTK_OBJECT(window), "delete_event", + GTK_SIGNAL_FUNC(delete_event), NULL); + gtk_signal_connect(GTK_OBJECT(window), "destroy", + GTK_SIGNAL_FUNC(destroy), NULL); /* Let child processes die */ act.sa_handler = child_died; Only in rox-menu-source_new/src: menu_applet.o