home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / trialva / ibmcppw / include / locale.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-02-20  |  3.8 KB  |  130 lines

  1. #if (defined(__IBMC__) || defined(__IBMCPP__))
  2. #pragma info( none )
  3. #ifndef __CHKHDR__
  4.    #pragma info( none )
  5. #endif
  6. #pragma info( restore )
  7. #endif
  8.  
  9. #ifndef __locale_h
  10.    #define __locale_h
  11.  
  12.    #ifdef __cplusplus
  13.       extern "C" {
  14.    #endif
  15.  
  16.    #ifndef  _LNK_CONV
  17.       #ifdef _M_I386
  18.          #define _LNK_CONV   _Optlink
  19.       #else
  20.          #define _LNK_CONV
  21.       #endif
  22.    #endif
  23.  
  24.    #ifndef _IMPORT
  25.       #ifdef __IMPORTLIB__
  26.          #define _IMPORT _Import
  27.       #else
  28.          #define _IMPORT
  29.       #endif
  30.    #endif
  31.  
  32.    /********************************************************************/
  33.    /*  <locale.h> header file                                          */
  34.    /*                                                                  */
  35.    /*  VisualAge for C++ for Windows, Version 3.5                      */
  36.    /*    Licensed Material - Property of IBM                           */
  37.    /*                                                                  */
  38.    /*  5801-ARR and Other Materials                                    */
  39.    /*                                                                  */
  40.    /*  (c) Copyright IBM Corp 1991, 1996. All rights reserved.         */
  41.    /*                                                                  */
  42.    /********************************************************************/
  43.  
  44.    #ifndef NULL
  45.       #if (defined(__EXTENDED__)  || defined( __cplusplus ))
  46.          #define NULL 0
  47.       #else
  48.          #define NULL ((void *)0)
  49.       #endif
  50.    #endif
  51.  
  52.    /* Categories */
  53.  
  54.    #define LC_ALL       (-1)
  55.    #define LC_COLLATE    0
  56.    #define LC_CTYPE      1
  57.    #define LC_NUMERIC    2
  58.    #define LC_MONETARY   3
  59.    #define LC_TIME       4
  60.    #define LC_TOD        5
  61.    #define LC_MESSAGES   6
  62.    #define LC_SYNTAX     7
  63.  
  64.    /* Locales */
  65.  
  66.    #define LC_C          "C"
  67.  
  68.    struct lconv
  69.       {
  70.       char * decimal_point;
  71.       char * thousands_sep;
  72.       char * grouping;
  73.       char * int_curr_symbol;
  74.       char * currency_symbol;
  75.       char * mon_decimal_point;
  76.       char * mon_thousands_sep;
  77.       char * mon_grouping;
  78.       char * positive_sign;
  79.       char * negative_sign;
  80.       char   int_frac_digits;
  81.       char   frac_digits;
  82.       char   p_cs_precedes;
  83.       char   p_sep_by_space;
  84.       char   n_cs_precedes;
  85.       char   n_sep_by_space;
  86.       char   p_sign_posn;
  87.       char   n_sign_posn;
  88.       char *left_parenthesis;
  89.       char *right_parenthesis;
  90.       char *debit_sign;
  91.       char *credit_sign;
  92.       };
  93.  
  94.    /* Prototype definitions */
  95.  
  96.    extern char         * _IMPORT _LNK_CONV setlocale( int, const char * );
  97.    extern struct lconv * _IMPORT _LNK_CONV localeconv( void );
  98.  
  99.    #ifdef __EXTENDED__
  100.    struct dtconv {
  101.             char *abbrev_month_names[12]; /* Abbreviated month names      */
  102.             char *month_names[12];        /* full month names             */
  103.             char *abbrev_day_names[7];    /* Abbreviated day names        */
  104.             char *day_names[7];           /* full day names               */
  105.             char *date_time_format;       /* date and time format         */
  106.             char *date_format;            /* date format                  */
  107.             char *time_format;            /* time format                  */
  108.             char *am_string;              /* AM string                    */
  109.             char *pm_string;              /* PM string                    */
  110.             char *time_format_ampm;       /* long date format             */
  111.     };
  112.  
  113.     extern struct dtconv * _LNK_CONV localdtconv(void);
  114.   #endif
  115.  
  116.    #ifdef __cplusplus
  117.       }
  118.    #endif
  119.  
  120. #endif
  121.  
  122. #if (defined(__IBMC__) || defined(__IBMCPP__))
  123. #pragma info( none )
  124. #ifndef __CHKHDR__
  125.    #pragma info( restore )
  126. #endif
  127. #pragma info( restore )
  128. #endif
  129.  
  130.