Documented the fl_fopen() utility function.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9702 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Manolo Gouy 2012-10-19 09:23:05 +00:00
parent 702b452540
commit 406bafecc6
4 changed files with 24 additions and 0 deletions

View File

@ -83,6 +83,11 @@
} }
\endcode \endcode
The Fl_Native_File_Chooser widget transmits UTF-8 encoded filenames to its user. It is
recommended to open files that may have non-ASCII names with the fl_fopen() utility
function that handles these names in a cross-platform way (whereas the standard
fopen() function fails on the MSWindows platform to open files with a non-ASCII name).
<B>Platform Specific Caveats</B> <B>Platform Specific Caveats</B>
- Under X windows, it's best if you call Fl_File_Icon::load_system_icons() - Under X windows, it's best if you call Fl_File_Icon::load_system_icons()

View File

@ -473,6 +473,12 @@ match is found, a global search is done (e.g.
The Windows interface provides access to the WIN32 GDI The Windows interface provides access to the WIN32 GDI
state information and data structures. state information and data structures.
\subsection non_ascii_filenames Using filenames with non-ASCII characters
In FLTK, all strings, including filenames, are UTF-8 encoded. The utility function
fl_fopen() allows to open files potentially having non-ASCII names in a
cross-platform fashion, whereas the standard fopen() function fails to do so.
\subsection osissues_win32_messages Handling Other WIN32 Messages \subsection osissues_win32_messages Handling Other WIN32 Messages
By default a single WNDCLASSEX called "FLTK" is By default a single WNDCLASSEX called "FLTK" is

View File

@ -26,6 +26,11 @@
\image html Fl_File_Chooser.jpg \image html Fl_File_Chooser.jpg
\image latex Fl_File_Chooser.jpg "Fl_File_Chooser" width=12cm \image latex Fl_File_Chooser.jpg "Fl_File_Chooser" width=12cm
The Fl_File_Chooser widget transmits UTF-8 encoded filenames to its user. It is
recommended to open files that may have non-ASCII names with the fl_fopen() utility
function that handles these names in a cross-platform way (whereas the standard
fopen() function fails on the MSWindows platform to open files with a non-ASCII name).
The Fl_File_Chooser class also exports several static values The Fl_File_Chooser class also exports several static values
that may be used to localize or customize the appearance of all file chooser that may be used to localize or customize the appearance of all file chooser

View File

@ -541,6 +541,14 @@ int fl_open(const char* f, int oflags, ...)
#endif #endif
} }
/** Cross-platform function to open files with a UTF-8 encoded name.
This function is especially useful under the MSWindows platform where the
standard fopen() function fails with UTF-8 encoded non-ASCII filenames.
\param f the UTF-8 encoded filename
\param mode same as the second argument of the standard fopen() function
\return a FILE pointer upon successful completion, or NULL in case of error.
*/
FILE *fl_fopen(const char* f, const char *mode) FILE *fl_fopen(const char* f, const char *mode)
{ {
#if defined (WIN32) && !defined(__CYGWIN__) #if defined (WIN32) && !defined(__CYGWIN__)