Changeset 2093 for trunk/src


Ignore:
Timestamp:
Dec 16, 1999, 5:53:59 PM (26 years ago)
Author:
cbratschi
Message:

text output changes, desktop WM_GETTEXT fixed, scrollbar DC changes

Location:
trunk/src/user32
Files:
1 added
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/Makefile

    r2084 r2093  
    1 # $Id: Makefile,v 1.48 1999-12-16 00:11:45 sandervl Exp $
     1# $Id: Makefile,v 1.49 1999-12-16 16:53:56 cbratschi Exp $
    22
    33#
     
    4242        winprop.obj wingdi.obj oslibgdi.obj winaccel.obj win32wbasepos.obj \
    4343        oslibres.obj dummy.obj oslibmenu.obj dc.obj timer.obj \
    44         caret.obj resource.obj winproc.obj \
     44        caret.obj resource.obj winproc.obj text.obj \
    4545        windlgmsg.obj windlg.obj win32wdesktop.obj
    4646
     
    5252!ifdef DEBUG
    5353!ifdef NODEBUGINFO
    54         ilink /nodeb /map /noe /NOD /NoLogo /NOFREE @$(TARGET).lrf
     54        ilink /nodeb /map /noe /NOD /NoLogo /NOFREE @$(TARGET).lrf
    5555!else
    56         ilink /de /map  /noe /NOD /dbgpack /NoLogo /NOFREE @$(TARGET).lrf
     56        ilink /de /map  /noe /NOD /dbgpack /NoLogo /NOFREE @$(TARGET).lrf
    5757!endif
    5858!else
    59         ilink /map  /noe /NOD /NoLogo /FREE @$(TARGET).lrf
     59        ilink /map  /noe /NOD /NoLogo /FREE @$(TARGET).lrf
    6060!endif
    6161        $(CP) $@ $(PDWIN32_BIN)
     
    6464        @echo Creating file <<$(@B).lrf
    6565$(OBJS)
    66 $(PDWIN32_LIB)/pmwinx.lib 
    67 $(PDWIN32_LIB)/gdi32.lib 
    68 $(PDWIN32_LIB)/kernel32.lib 
     66$(PDWIN32_LIB)/pmwinx.lib
     67$(PDWIN32_LIB)/gdi32.lib
     68$(PDWIN32_LIB)/kernel32.lib
    6969$(PDWIN32_LIB)/libuls.lib
    70 $(PDWIN32_LIB)/odincrt.lib 
     70$(PDWIN32_LIB)/odincrt.lib
    7171OS2386.LIB
    7272$(RTLLIB_O)
     
    8282
    8383
    84 resource.asm: user32.rc 
    85     $(RC) $(RCFLAGS) -o resource.asm user32.rc 
     84resource.asm: user32.rc
     85    $(RC) $(RCFLAGS) -o resource.asm user32.rc
    8686
    8787resource.obj: resource.asm
     
    148148timer.obj:      timer.cpp win32wbase.h timer.h
    149149caret.obj:      caret.cpp win32wbase.h caret.h dcdata.h
     150text.obj:       text.cpp
    150151
    151152clipboard.obj:  clipboard.cpp
  • trunk/src/user32/edit.cpp

    r1960 r2093  
    1 /* $Id: edit.cpp,v 1.22 1999-12-03 17:30:15 cbratschi Exp $ */
     1/* $Id: edit.cpp,v 1.23 1999-12-16 16:53:56 cbratschi Exp $ */
    22/*
    33 *      Edit control
     
    1212 *
    1313 * Status:  complete
    14  * Version: 5.00 (without undocumented specs)
     14 * Version: 5.00
    1515 */
    1616
     
    2020    new in Win98, Win2k: for single line too
    2121  - WinNT/Win2k: higher size limits (single: 0x7FFFFFFE, multi: none)
    22   - problems with selection update: perhaps an Open32 bug
    23     TextOutA: draws at wrong position
    24     I've removed the workarounds, it makes no sense to fix GDI32 bugs here
    25     -> rewrite TextOut and TabbedTextOut
    2622*/
    2723
     
    11501146
    11511147                if (IntersectRect(&rcUpdate, &rcWnd, &rcLine))
    1152                         InvalidateRect(hwnd, &rcUpdate, FALSE);
     1148                        InvalidateRect(hwnd, &rcUpdate, TRUE);
    11531149        } else {
    11541150                EDIT_GetLineRect(hwnd, es, sl, sc,
     
    11571153                                &rcLine);
    11581154                if (IntersectRect(&rcUpdate, &rcWnd, &rcLine))
    1159                         InvalidateRect(hwnd, &rcUpdate, FALSE);
     1155                        InvalidateRect(hwnd, &rcUpdate, TRUE);
    11601156                for (l = sl + 1 ; l < el ; l++) {
    11611157                        EDIT_GetLineRect(hwnd, es, l, 0,
     
    11641160                                &rcLine);
    11651161                        if (IntersectRect(&rcUpdate, &rcWnd, &rcLine))
    1166                                 InvalidateRect(hwnd, &rcUpdate, FALSE);
     1162                                InvalidateRect(hwnd, &rcUpdate, TRUE);
    11671163                }
    11681164                EDIT_GetLineRect(hwnd, es, el, 0, ec, &rcLine);
    11691165                if (IntersectRect(&rcUpdate, &rcWnd, &rcLine))
    1170                         InvalidateRect(hwnd, &rcUpdate, FALSE);
     1166                        InvalidateRect(hwnd, &rcUpdate, TRUE);
    11711167        }
    11721168        ShowCaret(hwnd);
     
    15741570        e = MIN(li + ll, MAX(li, e));
    15751571
    1576         if (rev && (s != e) &&
    1577                         ((es->flags & EF_FOCUSED) || (es->style & ES_NOHIDESEL)))
     1572        if (rev && (s != e) && ((es->flags & EF_FOCUSED) || (es->style & ES_NOHIDESEL)))
    15781573        {
    1579           x += EDIT_PaintText(hwnd, es, dc, x, y, line, 0, s - li, FALSE);
    1580           x += EDIT_PaintText(hwnd, es, dc, x, y, line, s - li, e - s, TRUE);
    1581           x += EDIT_PaintText(hwnd, es, dc, x, y, line, e - li, li + ll - e, FALSE);
     1574          HRGN oldRgn,newRgn,combRgn;
     1575          RECT rect;
     1576          //CB: OS/2 has problems with relative string positions (i.e. Communicator)
     1577          //    fix: always calculate string from starting point, tab bugs fixed too
     1578          //    otherwise we have 'dancing characters'
     1579
     1580          if (!(es->style & ES_MULTILINE))
     1581          {
     1582            SIZE size;
     1583
     1584            rect.top = y;
     1585            rect.bottom = y+es->line_height;
     1586            GetTextExtentPoint32A(dc,es->text+li,s-li,&size);
     1587            rect.left = x+size.cx;
     1588            GetTextExtentPoint32A(dc,es->text+li,e-li,&size);
     1589            rect.right = x+size.cx;
     1590
     1591            oldRgn = CreateRectRgnIndirect(&rect); //dummy parameter
     1592            GetClipRgn(dc,oldRgn);
     1593            newRgn = CreateRectRgnIndirect(&rect);
     1594            combRgn = CreateRectRgnIndirect(&rect); //dummy parameter
     1595            CombineRgn(combRgn,oldRgn,newRgn,RGN_XOR);
     1596            SelectClipRgn(dc,combRgn);
     1597            EDIT_PaintText(hwnd,es,dc,x,y,line,0,ll,FALSE);
     1598            CombineRgn(combRgn,oldRgn,newRgn,RGN_AND);
     1599            SelectClipRgn(dc,combRgn);
     1600            EDIT_PaintText(hwnd,es,dc,x,y,line,0,e-li,TRUE);
     1601            DeleteObject(oldRgn);
     1602            DeleteObject(newRgn);
     1603            DeleteObject(combRgn);
     1604          } else
     1605          {
     1606            rect.top = y;
     1607            rect.bottom = y+es->line_height;
     1608            rect.left = x+LOWORD(TabbedTextOutA(dc,x,y,es->text+li,s-li,es->tabs_count,es->tabs,es->format_rect.left-es->x_offset));
     1609            rect.right = x+LOWORD(TabbedTextOutA(dc,x,y,es->text+li,e-li,es->tabs_count,es->tabs,es->format_rect.left-es->x_offset));
     1610
     1611            oldRgn = CreateRectRgnIndirect(&rect); //dummy parameter
     1612            GetClipRgn(dc,oldRgn);
     1613            newRgn = CreateRectRgnIndirect(&rect);
     1614            combRgn = CreateRectRgnIndirect(&rect); //dummy parameter
     1615            CombineRgn(combRgn,oldRgn,newRgn,RGN_XOR);
     1616            SelectClipRgn(dc,combRgn);
     1617            EDIT_PaintText(hwnd,es,dc,x,y,line,0,ll,FALSE);
     1618            CombineRgn(combRgn,oldRgn,newRgn,RGN_AND);
     1619            SelectClipRgn(dc,combRgn);
     1620            EDIT_PaintText(hwnd,es,dc,x,y,line,0,e-li,TRUE);
     1621            SelectClipRgn(dc,oldRgn);
     1622            DeleteObject(oldRgn);
     1623            DeleteObject(newRgn);
     1624            DeleteObject(combRgn);
     1625          }
    15821626        } else  EDIT_PaintText(hwnd, es, dc, x, y, line, 0, ll, FALSE);
    15831627}
     
    16001644        BkColor = GetBkColor(dc);
    16011645        TextColor = GetTextColor(dc);
    1602         if (rev) {
     1646        if (rev)
     1647        {
    16031648                SetBkColor(dc, GetSysColor(COLOR_HIGHLIGHT));
    16041649                SetTextColor(dc, GetSysColor(COLOR_HIGHLIGHTTEXT));
    16051650        }
    16061651        li = EDIT_EM_LineIndex(hwnd, es, line);
    1607         if (es->style & ES_MULTILINE) {
     1652        if (es->style & ES_MULTILINE)
     1653        {
    16081654                ret = (INT)LOWORD(TabbedTextOutA(dc, x, y, es->text + li + col, count,
    16091655                                        es->tabs_count, es->tabs, es->format_rect.left - es->x_offset));
     
    16241670            HeapFree(es->heap, 0, text);
    16251671        }
    1626         if (rev) {
     1672        if (rev)
     1673        {
    16271674                SetBkColor(dc, BkColor);
    16281675                SetTextColor(dc, TextColor);
  • trunk/src/user32/scroll.cpp

    r1960 r2093  
    1 /* $Id: scroll.cpp,v 1.27 1999-12-03 17:30:17 cbratschi Exp $ */
     1/* $Id: scroll.cpp,v 1.28 1999-12-16 16:53:57 cbratschi Exp $ */
    22/*
    33 * Scrollbar control
     
    638638  HDC hdc;
    639639
    640     hdc = GetDCEx( hwnd, 0, DCX_CACHE | ((nBar == SB_CTL) ? 0 : DCX_WINDOW));
     640
     641    hdc = GetDC(hwnd);
    641642
    642643    if (!hdc) return;
     
    810811        if (SCROLL_FocusWin == hwnd && SCROLL_Highlighted)
    811812        {
    812           hdc = GetDCEx(hwnd,0,DCX_CACHE);
     813          hdc = GetDC(hwnd);
    813814          SCROLL_DrawScrollBar(hwnd,hdc,nBar,FALSE,TRUE);
    814815          ReleaseDC(hwnd,hdc);
     
    866867          {
    867868            SCROLL_Highlighted = FALSE;
    868             hdc = GetDCEx(hwnd,0,DCX_CACHE);
     869            hdc = GetDC(hwnd);
    869870            SCROLL_DrawScrollBar(hwnd,hdc,nBar,FALSE,TRUE);
    870871            ReleaseDC(hwnd,hdc);
     
    885886          if (!SCROLL_Scrolling)
    886887          {
    887             hdc = GetDCEx(hwnd,0,DCX_CACHE);
     888            hdc = GetDC(hwnd);
    888889            SCROLL_DrawScrollBar(hwnd,hdc,nBar,FALSE,TRUE);
    889890            ReleaseDC(hwnd,hdc);
     
    896897    }
    897898
    898     hdc = GetDCEx(hwnd,0,DCX_CACHE | ((nBar == SB_CTL) ? 0:DCX_WINDOW));
     899    hdc = GetDC(hwnd);
    899900
    900901    switch(SCROLL_trackHitTest)
  • trunk/src/user32/uitools.cpp

    r1781 r2093  
    1 /* $Id: uitools.cpp,v 1.17 1999-11-19 17:59:35 cbratschi Exp $ */
     1/* $Id: uitools.cpp,v 1.18 1999-12-16 16:53:57 cbratschi Exp $ */
    22/*
    33 * User Interface Functions
     
    13581358    return FALSE;
    13591359}
    1360 
    1361 
    1362 /*****************************************************************************
    1363  * Name      : int WIN32API DrawTextExA
    1364  * Purpose   : The DrawTextEx function draw the text in the rectangle
    1365  * Parameters:
    1366  * Variables :
    1367  * Result    : If the function succeeds, the return value is the height of the
    1368  *             text, otherwise zero.
    1369  * Remark    : TODO: Returned number of characters is always the entire string
    1370  *             since there is no way to know the real answer this way.
    1371  * Status    : PARTIALLY IMPLEMENTED AND TESTED
    1372  *
    1373  * Author    : Rene Pronk [Thu, 1999/07/29 15:03]
    1374  *             Christoph Bratschi: implemented DT_END_ELLIPSIS (Header control)
    1375  *****************************************************************************/
    1376 
    1377 int WIN32API DrawTextExA (HDC hdc, LPCSTR lpchText, int cchText, LPRECT lprc,
    1378                           UINT dwDTFormat, LPDRAWTEXTPARAMS lpDTParams) {
    1379 
    1380    int result;
    1381    UINT oldDTFormat;
    1382 
    1383    dprintf(("USER32:DrawTextExA (%08xh,%s,%08xh,%08xh,%08xh,%08xh).\n",
    1384             hdc, lpchText, cchText, lprc, dwDTFormat, lpDTParams));
    1385 
    1386    if (lpDTParams != NULL) {
    1387            // 'create' margins
    1388            lprc->left += lpDTParams->iLeftMargin;
    1389            lprc->right -= lpDTParams->iRightMargin;
    1390 
    1391            // just assume all the text has been drawn
    1392            if (cchText != -1)
    1393                    lpDTParams->uiLengthDrawn = cchText;
    1394            else {
    1395                    // determine string length
    1396                    int size = 0;
    1397                    while ((BYTE) *(lpchText + size) != 0)
    1398                            size ++;
    1399                    lpDTParams->uiLengthDrawn = size;
    1400            }
    1401    }
    1402 
    1403    oldDTFormat = dwDTFormat & ~(DT_END_ELLIPSIS | DT_PATH_ELLIPSIS | DT_MODIFYSTRING | DT_EXPANDTABS);
    1404    if (dwDTFormat & DT_END_ELLIPSIS && lpchText && (cchText != 0))
    1405    {
    1406      int textWidth,width;
    1407      RECT rect;
    1408 
    1409      if (cchText == -1) cchText = lstrlenA(lpchText);
    1410      SetRectEmpty(&rect);
    1411      DrawTextA(hdc,lpchText,cchText,&rect,oldDTFormat | DT_CALCRECT);
    1412      width = lprc->right-lprc->left;
    1413      textWidth = rect.right-rect.left;
    1414      if (textWidth > width && width > 0)
    1415      {
    1416        char* newText;
    1417        int endWidth,newTextLen;
    1418 
    1419        DrawTextA(hdc,"...",3,&rect,DT_CALCRECT | DT_SINGLELINE | DT_LEFT);
    1420        endWidth = rect.right-rect.left;
    1421        newText = (char*)malloc(cchText+3);
    1422        lstrcpyA(newText,lpchText);
    1423        newTextLen = cchText+1;
    1424        do
    1425        {
    1426          newTextLen--;
    1427          DrawTextA(hdc,newText,newTextLen,&rect,oldDTFormat | DT_CALCRECT);
    1428          textWidth = rect.right-rect.left;
    1429        } while (textWidth+endWidth > width && newTextLen > 1);
    1430 
    1431        lstrcpyA(&newText[newTextLen],"...");
    1432        result = DrawTextA(hdc,newText,-1,lprc,oldDTFormat);;
    1433 
    1434        if (dwDTFormat & DT_MODIFYSTRING) lstrcpynA((LPSTR)lpchText,newText,cchText);
    1435        free(newText);
    1436      } else result = DrawTextA(hdc,lpchText,cchText,lprc,oldDTFormat);
    1437    } else
    1438      result = DrawTextA (hdc, lpchText, cchText, lprc, oldDTFormat);
    1439 
    1440    if (lpDTParams != NULL) {
    1441            // don't forget to restore the margins
    1442            lprc->left -= lpDTParams->iLeftMargin;
    1443            lprc->right += lpDTParams->iRightMargin;
    1444    }
    1445 
    1446    return result;
    1447 }
    1448 
    1449 
    1450 
    1451 /*****************************************************************************
    1452  * Name      : int WIN32API DrawTextExW
    1453  * Purpose   : The DrawTextEx function draw the text in the rectangle
    1454  * Parameters:
    1455  * Variables :
    1456  * Result    : If the function succeeds, the return value is the height of the
    1457  *             text, otherwise zero.
    1458  * Remark    : TODO: Returned number of characters is always the entire string
    1459  *             since there is no way to know the real answer this way.
    1460  * Status    : PARTIALLY IMPLEMENTED AND TESTED
    1461  *
    1462  * Author    : Rene Pronk [Thu, 1999/07/29 15:03]
    1463  *****************************************************************************/
    1464 
    1465 int WIN32API DrawTextExW (HDC hdc, LPWSTR lpchText, int cchText, LPRECT lprc,
    1466                           UINT dwDTFormat, LPDRAWTEXTPARAMS lpDTParams) {
    1467 
    1468    char *astring = UnicodeToAsciiString((LPWSTR)lpchText);
    1469    int   rc;
    1470 
    1471    dprintf(("USER32:DrawTextExW (%08xh,%s,%08xh,%08xh,%08xh,%08xh).\n",
    1472             hdc, astring, cchText, lprc, dwDTFormat, lpDTParams));
    1473 
    1474    rc = DrawTextExA (hdc, astring, cchText, lprc, dwDTFormat, lpDTParams);
    1475    if (dwDTFormat & DT_MODIFYSTRING) AsciiToUnicode(astring,lpchText);
    1476    FreeAsciiString(astring);
    1477    return(rc);
    1478 }
    1479 
    1480 
    14811360/******************************************************************************
    14821361 *
     
    19001779    return O32_DrawMenuBar(window->getOS2FrameWindowHandle());
    19011780}
    1902 //******************************************************************************
    1903 //******************************************************************************
    1904 int WIN32API DrawTextW( HDC hDC, LPCWSTR lpString, int nCount, PRECT lpRect, UINT nFormat)
    1905 {
    1906  char *astring = UnicodeToAsciiString((LPWSTR)lpString);
    1907  int   rc;
    1908 
    1909 #ifdef DEBUG
    1910     WriteLog("USER32:  DrawTextW %s\n", astring);
    1911 #endif
    1912     rc = O32_DrawText(hDC,astring,nCount,lpRect,nFormat);
    1913     FreeAsciiString(astring);
    1914     return(rc);
    1915 }
    1916 //******************************************************************************
    1917 //******************************************************************************
    1918 int WIN32API DrawTextA(HDC hDC, LPCSTR lpString, int nCount, PRECT lpRect, UINT nFormat)
    1919 {
    1920 #ifdef DEBUG
    1921     WriteLog("USER32: DrawTextA %s %d", lpString,nCount);
    1922 #endif
    1923     return O32_DrawText(hDC,lpString,nCount,lpRect,nFormat);
    1924 }
    19251781/*****************************************************************************
    19261782 * Name      : BOOL WIN32API DrawAnimatedRects
  • trunk/src/user32/user32.cpp

    r2084 r2093  
    1 /* $Id: user32.cpp,v 1.59 1999-12-16 00:11:45 sandervl Exp $ */
     1/* $Id: user32.cpp,v 1.60 1999-12-16 16:53:58 cbratschi Exp $ */
    22
    33/*
     
    16451645}
    16461646//******************************************************************************
    1647 //TODO: Not complete
    1648 //******************************************************************************
    1649 BOOL WIN32API GrayStringA(HDC hdc, HBRUSH hBrush, GRAYSTRINGPROC lpOutputFunc,
    1650                           LPARAM lpData, int nCount, int X, int Y, int nWidth,
    1651                           int nHeight)
    1652 {
    1653  BOOL     rc;
    1654  COLORREF curclr;
    1655 
    1656 #ifdef DEBUG
    1657   WriteLog("USER32:  GrayStringA, not completely implemented\n");
    1658 #endif
    1659   if(lpOutputFunc == NULL && lpData == NULL) {
    1660 #ifdef DEBUG
    1661     WriteLog("USER32:  lpOutputFunc == NULL && lpData == NULL\n");
    1662 #endif
    1663     return(FALSE);
    1664   }
    1665   if(lpOutputFunc) {
    1666         return(lpOutputFunc(hdc, lpData, nCount));
    1667   }
    1668   curclr = SetTextColor(hdc, GetSysColor(COLOR_GRAYTEXT));
    1669   rc = TextOutA(hdc, X, Y, (char *)lpData, nCount);
    1670   SetTextColor(hdc, curclr);
    1671 
    1672   return(rc);
    1673 }
    1674 //******************************************************************************
    1675 //******************************************************************************
    1676 BOOL WIN32API GrayStringW(HDC hdc, HBRUSH hBrush, GRAYSTRINGPROC lpOutputFunc,
    1677                           LPARAM lpData, int nCount, int X, int Y, int nWidth,
    1678                           int nHeight)
    1679 {
    1680  BOOL     rc;
    1681  char    *astring;
    1682  COLORREF curclr;
    1683 
    1684 #ifdef DEBUG
    1685   WriteLog("USER32:  GrayStringW, not completely implemented\n");
    1686 #endif
    1687 
    1688   if(lpOutputFunc == NULL && lpData == NULL) {
    1689 #ifdef DEBUG
    1690     WriteLog("USER32:  lpOutputFunc == NULL && lpData == NULL\n");
    1691 #endif
    1692     return(FALSE);
    1693   }
    1694   if(nCount == 0)
    1695     nCount = UniStrlen((UniChar*)lpData);
    1696 
    1697   if(lpOutputFunc) {
    1698     return(lpOutputFunc(hdc, lpData, nCount));
    1699   }
    1700   astring = UnicodeToAsciiString((LPWSTR)lpData);
    1701 
    1702   curclr = SetTextColor(hdc, GetSysColor(COLOR_GRAYTEXT));
    1703   rc = TextOutA(hdc, X, Y, astring, nCount);
    1704   SetTextColor(hdc, curclr);
    1705 
    1706   FreeAsciiString(astring);
    1707   return(rc);
    1708 }
    1709 //******************************************************************************
    17101647//******************************************************************************
    17111648#if 0
     
    18551792/* Message and Message Queue Functions */
    18561793
    1857 
    1858 /* Font and Text Functions */
    1859 
    1860 DWORD WIN32API GetTabbedTextExtentA( HDC hDC, LPCSTR lpString, int nCount, int nTabPositions, LPINT lpnTabStopPositions)
    1861 {
    1862     dprintf2(("USER32: GetTabbedTextExtentA %x %s", hDC, lpString));
    1863     return O32_GetTabbedTextExtent(hDC,lpString,nCount,nTabPositions,lpnTabStopPositions);
    1864 }
    1865 //******************************************************************************
    1866 //******************************************************************************
    1867 DWORD WIN32API GetTabbedTextExtentW( HDC hDC, LPCWSTR lpString, int nCount, int nTabPositions, LPINT lpnTabStopPositions)
    1868 {
    1869  char *astring = UnicodeToAsciiString((LPWSTR)lpString);
    1870  DWORD rc;
    1871 
    1872     dprintf2(("USER32: GetTabbedTextExtentW %x %s", hDC, astring));
    1873     rc = O32_GetTabbedTextExtent(hDC,astring,nCount,nTabPositions,lpnTabStopPositions);
    1874     FreeAsciiString(astring);
    1875     return rc;
    1876 }
    1877 //******************************************************************************
    1878 //******************************************************************************
    1879 LONG WIN32API TabbedTextOutA( HDC hdc, int x, int y, LPCSTR lpString, int nCount, int nTabPositions, LPINT lpnTabStopPositions, int  nTabOrigin)
    1880 {
    1881 #ifdef DEBUG
    1882     WriteLog("USER32:  TabbedTextOutA\n");
    1883 #endif
    1884     return O32_TabbedTextOut(hdc,x,y,lpString,nCount,nTabPositions,lpnTabStopPositions,nTabOrigin);
    1885 }
    1886 //******************************************************************************
    1887 //******************************************************************************
    1888 LONG WIN32API TabbedTextOutW( HDC hdc, int x, int y, LPCWSTR lpString, int nCount, int nTabPositions, LPINT lpnTabStopPositions, int  nTabOrigin)
    1889 {
    1890  char *astring = UnicodeToAsciiString((LPWSTR)lpString);
    1891  LONG rc;
    1892 
    1893 #ifdef DEBUG
    1894     WriteLog("USER32:  TabbedTextOutW\n");
    1895 #endif
    1896     rc = O32_TabbedTextOut(hdc,x,y,astring,nCount,nTabPositions,lpnTabStopPositions,nTabOrigin);
    1897     FreeAsciiString(astring);
    1898     return rc;
    1899 }
    19001794
    19011795/* Device Context Functions */
  • trunk/src/user32/win32wdesktop.cpp

    r1837 r2093  
    1 /* $Id: win32wdesktop.cpp,v 1.7 1999-11-24 20:28:21 sandervl Exp $ */
     1/* $Id: win32wdesktop.cpp,v 1.8 1999-12-16 16:53:59 cbratschi Exp $ */
    22/*
    33 * Win32 Desktop Window for OS/2
     
    2525  windowDesktop = new Win32Desktop();
    2626  if(windowDesktop == NULL) {
    27         dprintf(("Unable to create desktop window!!!"));
    28         return FALSE;
     27        dprintf(("Unable to create desktop window!!!"));
     28        return FALSE;
    2929  }
    3030  return TRUE;
     
    3535{
    3636  if(windowDesktop) {
    37         delete windowDesktop;
    38         windowDesktop = 0;
     37        delete windowDesktop;
     38        windowDesktop = 0;
    3939  }
    4040}
     
    7777LRESULT WIN32API DesktopWndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam )
    7878{
    79     return 0;
     79  switch (message)
     80  {
     81    case WM_GETTEXT:
     82      if (!lParam || !wParam) return 0;
     83      ((LPSTR)lParam)[0] = 0;
     84      return 0;
     85  }
     86
     87  return 0;
    8088}
    8189//******************************************************************************
Note: See TracChangeset for help on using the changeset viewer.