Listview scroll patch

Chris Morgan cmorgan at alum.wpi.edu
Thu Dec 26 22:58:27 CST 2002


Hmm.... for some reason I was thinking it had to be done via a macro but I 
suppose I can return a pointer to a static string just as easily.  I figured 
someone would balk at that cool macro ;-) hahah

Chris



On Thursday 26 December 2002 09:51 pm, Dimitrie O. Paun wrote:
> On December 26, 2002 04:06 pm, Chris Morgan wrote:
> > +/* Replace the scroll value with text */
> > +#define SCROLL_CODE_TEXT(nScrollCode) \
> > +       (nScrollCode == SB_LINELEFT) ? "SB_LINELEFT" : (nScrollCode ==
> > SB_LINERIGHT) \ +               ? "SB_LINERIGHT" : (nScrollCode ==
> > SB_INTERNAL) ? "SB_INTERNAL" : \ +               (nScrollCode ==
> > SB_PAGELEFT) ? "SB_PAGELEFT" : (nScrollCode == \
> > +               SB_PAGERIGHT) ? "SB_PAGERIGHT" : (nScrollCode ==
> > SB_THUMBPOSITION) ? \ +               "SB_THUMBPOSITION" : (nScrollCode
> > == SB_THUMBTRACK) ? \ +               "SB_THUMBTRACK" : \
> > +               (nScrollCode == SB_ENDSCROLL) ? "SB_ENDSCROLL" \
> > +               : "unknown"
>
> Please do not introduce such macros. I don't really think it's necessary
> to transform the code to text (it clutters the output), but if you
> insist on doing it, just do it through a function:
>
> static inline LPCSTR debugscrollcode(INT nScrollCode)
> {
>  ...
> }
>
> This is the pattern used throughout listview.c. But in general speaking,
> if you can do it without macros, then macros are not the answer.




More information about the wine-devel mailing list