View Single Post
qwerty12's Avatar
Posts: 4,274 | Thanked: 5,358 times | Joined on Sep 2007 @ Looking at y'all and sighing
#5
In GTK+, having the Hildon file chooser dialog open, already navigated to the .sounds directory works fine. (You can compile the attached to verify that.)

I know **** all about Qt so I wouldn't take this seriously, but you could try:
  • Ensuring that the device is not in Mass Storage mode. ;P
  • Try setting the path after the dialog is instantiated.

PHP Code:
/* gcc file-chooser-example.c $(pkg-config --cflags --libs glib-2.0 gtk+-2.0 hildon-1 hildon-fm-2) -Wall */

#include <stdlib.h>
#include <glib.h>
#include <gtk/gtk.h>
#include <hildon/hildon.h>
#include <hildon/hildon-file-chooser-dialog.h>

static void on_file_chooser_dialog_response (GtkWidget *file_chooser_dialoggint response_idgpointer user_data G_GNUC_UNUSED)
{
    if (
response_id == GTK_RESPONSE_OK)
    {
        
char *filename gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (file_chooser_dialog));
        
GtkWidget *note hildon_note_new_information (GTK_WINDOW (file_chooser_dialog), filename);
        
gtk_dialog_run (GTK_DIALOG (note));
        
gtk_widget_destroy (note);
        
g_free (filename);
    }

    
gtk_widget_destroy (file_chooser_dialog);
    
gtk_main_quit ();
}

int main (int argccharargv[])
{
    
GtkWidget *file_chooser_dialog;
    
GtkFileFilter *file_chooser_filter;

    
g_assert (g_file_test ("/home/user/MyDocs/.sounds"G_FILE_TEST_IS_DIR));

    
hildon_gtk_init (&argc, &argv);

    
file_chooser_dialog hildon_file_chooser_dialog_new (NULLGTK_FILE_CHOOSER_ACTION_OPEN);
    
gtk_window_set_title (GTK_WINDOW (file_chooser_dialog), "Open Sound");
    
gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (file_chooser_dialog), "/home/user/MyDocs/.sounds");
    
file_chooser_filter gtk_file_filter_new ();
    
/* gtk_file_filter_set_name (file_chooser_filter, "Wave Files"); */ /* No point with the HildonFileChooserDialog... */
    
gtk_file_filter_add_pattern (file_chooser_filter"*.wav");
    
gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (file_chooser_dialog), file_chooser_filter);
    
gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (file_chooser_dialog), file_chooser_filter);

    
g_signal_connect (G_OBJECT (file_chooser_dialog), "response"G_CALLBACK (on_file_chooser_dialog_response), NULL);
    
gtk_widget_show_all (file_chooser_dialog);

    
gtk_main ();

    return 
EXIT_SUCCESS;


Last edited by qwerty12; 2010-01-01 at 18:05.
 

The Following User Says Thank You to qwerty12 For This Useful Post: