[PATCH] winecfg: Add trackbar to set screen resolution in
graphics tab (try 2)
Nigel Liang
ncliang at gmail.com
Mon Jul 30 13:17:08 CDT 2007
On 7/30/07, Alexandre Julliard <julliard at winehq.org> wrote:
> Nigel Liang <ncliang at gmail.com> writes:
>
> > +/* Utility functions to convert between WCHAR and long */
> > +long wcstolong(WCHAR * wcs)
> > +{
> > + int i;
> > + long lRet = 0;
> > + BOOL bNeg = FALSE;
> > +
> > + for (i = 0; wcs[i] != '\0'; i++) {
> > + if (i == 0 && wcs[i] == '-') {
> > + bNeg = TRUE;
> > + continue;
> > + }
> > +
> > + lRet = lRet * 10 + (wcs[i] - '0');
> > + }
> > + return (bNeg ? -lRet : lRet);
> > +}
> > +
> > +WCHAR *longtow(long num, WCHAR *wcs)
> > +{
> > + static const WCHAR str[] = { '%', 'l', 'd', 0 };
> > + wsprintfW(wcs, str, num);
> > + return wcs;
> > +}
>
> That's ugly. You should avoid using long if not really necessary,
> since it doesn't have the same size in MSVC. You shouldn't name a
> function wcs something since that's what wchar_t functions use. In any
> case we already have atoiW for that purpose. Also I don't think
> wrapping wsprintf is needed.
>
> --
> Alexandre Julliard
> julliard at winehq.org
>
Yeah, I did not like those either. The reason that I used them is
because trying to use the _ltow and wcstol functions from
msvcrt/stdlib.h caused a bunch of conflicting type errors. I'll get
rid of them....
-Nigel
More information about the wine-devel
mailing list