FLTK 1.3.4
fl_utf8.h File Reference

header for Unicode and UTF-8 character handling More...

#include "Fl_Export.H"
#include "fl_types.h"
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <locale.h>

Go to the source code of this file.

Macros

#define xchar   unsigned short
 

Functions

FL_EXPORT int fl_access (const char *f, int mode)
 Cross-platform function to test a files access() with a UTF-8 encoded name or value. More...
 
FL_EXPORT int fl_chmod (const char *f, int mode)
 Cross-platform function to set a files mode() with a UTF-8 encoded name or value. More...
 
FL_EXPORT int fl_execvp (const char *file, char *const *argv)
 
FL_EXPORT FILE * fl_fopen (const char *f, const char *mode)
 Cross-platform function to open files with a UTF-8 encoded name. More...
 
FL_EXPORT char * fl_getcwd (char *b, int l)
 Cross-platform function to get the current working directory as a UTF-8 encoded value. More...
 
FL_EXPORT char * fl_getenv (const char *v)
 Cross-platform function to get environment variables with a UTF-8 encoded name or value. More...
 
FL_EXPORT char fl_make_path (const char *path)
 Cross-platform function to recursively create a path in the file system. More...
 
FL_EXPORT void fl_make_path_for_file (const char *path)
 Cross-platform function to create a path for the file in the file system. More...
 
FL_EXPORT int fl_mkdir (const char *f, int mode)
 Cross-platform function to create a directory with a UTF-8 encoded name. More...
 
FL_EXPORT unsigned int fl_nonspacing (unsigned int ucs)
 Returns true if the Unicode character ucs is non-spacing. More...
 
FL_EXPORT int fl_open (const char *f, int oflags,...)
 Cross-platform function to open files with a UTF-8 encoded name. More...
 
FL_EXPORT int fl_rename (const char *f, const char *n)
 Cross-platform function to rename a filesystem object using UTF-8 encoded names. More...
 
FL_EXPORT int fl_rmdir (const char *f)
 Cross-platform function to remove a directory with a UTF-8 encoded name. More...
 
FL_EXPORT int fl_stat (const char *f, struct stat *b)
 Cross-platform function to stat() a file using a UTF-8 encoded name or value. More...
 
FL_EXPORT int fl_system (const char *cmd)
 Cross-platform function to run a system command with a UTF-8 encoded string. More...
 
FL_EXPORT int fl_tolower (unsigned int ucs)
 Returns the Unicode lower case value of ucs.
 
FL_EXPORT int fl_toupper (unsigned int ucs)
 Returns the Unicode upper case value of ucs.
 
FL_EXPORT unsigned fl_ucs_to_Utf16 (const unsigned ucs, unsigned short *dst, const unsigned dstlen)
 
FL_EXPORT int fl_unlink (const char *f)
 Cross-platform function to unlink() (that is, delete) a file using a UTF-8 encoded filename. More...
 
FL_EXPORT char * fl_utf2mbcs (const char *s)
 Converts UTF-8 string s to a local multi-byte character string.
 
FL_EXPORT const char * fl_utf8back (const char *p, const char *start, const char *end)
 
FL_EXPORT int fl_utf8bytes (unsigned ucs)
 Return the number of bytes needed to encode the given UCS4 character in UTF-8. More...
 
FL_EXPORT unsigned fl_utf8decode (const char *p, const char *end, int *len)
 
FL_EXPORT int fl_utf8encode (unsigned ucs, char *buf)
 
FL_EXPORT unsigned fl_utf8from_mb (char *dst, unsigned dstlen, const char *src, unsigned srclen)
 
FL_EXPORT unsigned fl_utf8froma (char *dst, unsigned dstlen, const char *src, unsigned srclen)
 
FL_EXPORT unsigned fl_utf8fromwc (char *dst, unsigned dstlen, const wchar_t *src, unsigned srclen)
 
FL_EXPORT const char * fl_utf8fwd (const char *p, const char *start, const char *end)
 
FL_EXPORT int fl_utf8len (char c)
 Returns the byte length of the UTF-8 sequence with first byte c, or -1 if c is not valid. More...
 
FL_EXPORT int fl_utf8len1 (char c)
 Returns the byte length of the UTF-8 sequence with first byte c, or 1 if c is not valid. More...
 
FL_EXPORT int fl_utf8locale (void)
 
FL_EXPORT int fl_utf8test (const char *src, unsigned len)
 
FL_EXPORT unsigned fl_utf8to_mb (const char *src, unsigned srclen, char *dst, unsigned dstlen)
 
FL_EXPORT unsigned fl_utf8toa (const char *src, unsigned srclen, char *dst, unsigned dstlen)
 
FL_EXPORT unsigned fl_utf8toUtf16 (const char *src, unsigned srclen, unsigned short *dst, unsigned dstlen)
 
FL_EXPORT unsigned fl_utf8towc (const char *src, unsigned srclen, wchar_t *dst, unsigned dstlen)
 Converts a UTF-8 string into a wide character string. More...
 
FL_EXPORT int fl_utf_nb_char (const unsigned char *buf, int len)
 Returns the number of Unicode chars in the UTF-8 string.
 
FL_EXPORT int fl_utf_strcasecmp (const char *s1, const char *s2)
 UTF-8 aware strcasecmp - converts to Unicode and tests. More...
 
FL_EXPORT int fl_utf_strncasecmp (const char *s1, const char *s2, int n)
 UTF-8 aware strncasecmp - converts to lower case Unicode and tests. More...
 
FL_EXPORT int fl_utf_tolower (const unsigned char *str, int len, char *buf)
 Converts the string str to its lower case equivalent into buf. More...
 
FL_EXPORT int fl_utf_toupper (const unsigned char *str, int len, char *buf)
 Converts the string str to its upper case equivalent into buf. More...
 
FL_EXPORT int fl_wcwidth (const char *src)
 extended wrapper around fl_wcwidth_(unsigned int ucs) function. More...
 
FL_EXPORT int fl_wcwidth_ (unsigned int ucs)
 wrapper to adapt Markus Kuhn's implementation of wcwidth() for FLTK More...
 

Detailed Description

header for Unicode and UTF-8 character handling