void on_populate_popup( GtkEntry *entry, GtkMenu *menu, PtkFileBrowser* file_browser ) { if ( !file_browser ) return; XSetContext* context = xset_context_new(); main_context_fill( file_browser, context ); GtkAccelGroup* accel_group = gtk_accel_group_new(); XSet* set = xset_get( "sep_entry" ); xset_add_menuitem( NULL, file_browser, GTK_WIDGET( menu ), accel_group, set ); // New Bookmark set = xset_set_cb( "book_add", on_add_bookmark, file_browser ); const char* text = gtk_entry_get_text( GTK_ENTRY( entry ) ); set->disable = !( text && ( g_file_test( text, G_FILE_TEST_EXISTS ) || strstr( text, ":/" ) || g_str_has_prefix( text, "//" ) ) ); xset_add_menuitem( NULL, file_browser, GTK_WIDGET( menu ), accel_group, set ); set = xset_get( "path_seek" ); xset_add_menuitem( NULL, file_browser, GTK_WIDGET( menu ), accel_group, set ); set = xset_set_cb( "path_hand", on_protocol_handlers, file_browser ); xset_add_menuitem( NULL, file_browser, GTK_WIDGET( menu ), accel_group, set ); set = xset_set_cb_panel( file_browser->mypanel, "font_path", main_update_fonts, file_browser ); xset_add_menuitem( NULL, file_browser, GTK_WIDGET( menu ), accel_group, set ); set = xset_set_cb( "path_help", ptk_path_entry_man, file_browser ); xset_add_menuitem( NULL, file_browser, GTK_WIDGET( menu ), accel_group, set ); gtk_widget_show_all( GTK_WIDGET( menu ) ); g_signal_connect( menu, "key-press-event", G_CALLBACK( xset_menu_keypress ), NULL ); }
void on_populate_popup( GtkEntry *entry, GtkMenu *menu, PtkFileBrowser* file_browser ) { if ( !file_browser ) return; XSetContext* context = xset_context_new(); main_context_fill( file_browser, context ); GtkAccelGroup* accel_group = gtk_accel_group_new(); XSet* set = xset_get( "sep_entry" ); xset_add_menuitem( NULL, file_browser, GTK_WIDGET( menu ), accel_group, set ); set = xset_get( "path_hand" ); xset_add_menuitem( NULL, file_browser, GTK_WIDGET( menu ), accel_group, set ); set = xset_set_cb_panel( file_browser->mypanel, "font_path", main_update_fonts, file_browser ); xset_add_menuitem( NULL, file_browser, GTK_WIDGET( menu ), accel_group, set ); set = xset_set_cb( "path_help", ptk_path_entry_man, file_browser ); xset_add_menuitem( NULL, file_browser, GTK_WIDGET( menu ), accel_group, set ); gtk_widget_show_all( GTK_WIDGET( menu ) ); g_signal_connect( menu, "key-press-event", G_CALLBACK( xset_menu_keypress ), NULL ); }