al_create_native_file_dialog(3)

NAME

al_create_native_file_dialog - Allegro 5 API

SYNOPSIS

    #include <allegro5/allegro_native_dialog.h>
    ALLEGRO_FILECHOOSER *al_create_native_file_dialog(
       char const *initial_path,
       char const *title,
       char const *patterns,
       int mode)

DESCRIPTION

Creates a new native file dialog. You should only have one such dialog opened at a time.

Parameters:

•   initial_path: The initial search path and filename. Can be NULL. To start with a blank file name the string should end with a directory separator (this should be the common case).

•   title: Title of the dialog.

•   patterns: A list of semi-colon separated patterns to match. This should not contain any whitespace characters. If a pattern contains the '/' character, then it is treated as a MIME type (e.g. 'image/png'). Not all platforms support file patterns. If the native dialog does not provide support, this parameter is ignored.

•   mode: 0, or a combination of the following flags:

ALLEGRO_FILECHOOSER_FILE_MUST_EXIST
    If supported by the native dialog, it will not allow entering new names, but just allow existing files to be selected. Else it is ignored.

ALLEGRO_FILECHOOSER_SAVE
    If the native dialog system has a different dialog for saving (for example one which allows creating new directories), it is used. Else it is ignored.

ALLEGRO_FILECHOOSER_FOLDER
    If there is support for a separate dialog to select a folder instead of a file, it will be used.

ALLEGRO_FILECHOOSER_PICTURES
    If a different dialog is available for selecting pictures, it is used. Else it is ignored.

ALLEGRO_FILECHOOSER_SHOW_HIDDEN
    If the platform supports it, also hidden files will be shown.

ALLEGRO_FILECHOOSER_MULTIPLE
    If supported, allow selecting multiple files.

Returns:

A handle to the dialog which you can pass to al_show_native_file_dialog(3) to display it, and from which you then can query the results using al_get_native_file_dialog_count(3) and al_get_native_file_dialog_path(3). When you are done, call al_destroy_native_file_dialog(3) on it.

If a dialog window could not be created then this function returns NULL.