al_create_native_file_dialog man page

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.

Info

Allegro reference manual