From: Larin Hennessy (larin@science.oregonstate.edu)
Date: Fri Mar 07 2003 - 19:59:05 EST
OK, another C -> C++ change comes to mind.  What about
changing #define to const and/or inline template functions
depending on the situation?
For example, the WordPerfect importer/exporter has a group
of formatting codes in ie_impexp_WordPerfect.h:
#define WP_TOP_SOFT_SPACE 128 // (0x80)
...
#define WP_TOP_DISPLAY_NUMBER_REFERENCE_GROUP 0xDA
Should these be converted to:
const char WP_TOP_SOFT_SPACE = 0x80;
...
const char WP_TOP_DISPLAY_NUMBER_REFERENCE_GROUP = 0xDA;
?
It seems that if these values represent character values in files, using 
the hex
representation would be more intuitive.
I would also like to look at the feasability of changing some of the 
define statements
to templates.  For example in ie_imp_DocBook.cpp there is X_CheckDocument:
#define X_CheckError(v)                 do {  if (!(v)) \
                                                                  { 
UT_DEBUGMSG(("DOM: X_CheckError failed: %s\n", #v)); \
                                                                     
m_error = UT_ERROR;                 \
                                                                     
return; } } while (0)
into:
UT_Error X_CheckError(char * v)
{
    do
    {
        if (!v)
        {
            UT_DEBUGMSG("DOM:_CheckError failed: %s\n", v);
            return UT_ERROR;
        }
    } while (0);
}
Note that the above is just an idea and has not been tested.
Any thoughts on wether this would be acceptable?
-Larin
Dom Lachowicz wrote:
>>I think Larin meant ie_exp_WordPerfect.cpp, which
>>does have such a list.
>>Marc would know more about this (he wrote the code),
>>but I believe the
>>magic is only a temporary hack until we actually
>>figure out what the
>>magic means. :-) It should become history..
>>eventually.
>>    
>>
>
>Indeed it does. The (char) should stay for the above
>reason, and the fact that 192 reinterpret_cast<char>()
>is  much much worse than 192 (char) from a readability
>perspective. reinterpret_cast gains us nothing here. 
>
>On a related note, I just committed a dos2unix version
>of exp_WordPerfect.cpp to remove the ^M problem.
>
>Dom
>
>__________________________________________________
>Do you Yahoo!?
>Yahoo! Tax Center - forms, calculators, tips, more
>http://taxes.yahoo.com/
>  
>
This archive was generated by hypermail 2.1.4 : Fri Mar 07 2003 - 20:05:38 EST