Ignore:
Timestamp:
May 5, 2000, 1:32:38 PM (25 years ago)
Author:
sandervl
Message:

window property fixes/changes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/window.cpp

    r3488 r3493  
    1 /* $Id: window.cpp,v 1.64 2000-05-03 18:35:55 sandervl Exp $ */
     1/* $Id: window.cpp,v 1.65 2000-05-05 11:32:38 sandervl Exp $ */
    22/*
    33 * Win32 window apis for OS/2
     
    77 * Copyright 2000 Christoph Bratschi (cbratschi@datacomm.ch)
    88 *
    9  * Parts based on Wine Windows code (windows\win.c)
     9 * Parts based on Wine Windows code (windows\win.c, windows\property.c)
    1010 *
    1111 * Copyright 1993, 1994 Alexandre Julliard
     
    14771477//******************************************************************************
    14781478//******************************************************************************
     1479HANDLE WINAPI GetPropA( HWND hwnd, LPCSTR str )
     1480{
     1481  Win32BaseWindow *window;
     1482
     1483    window = Win32BaseWindow::GetWindowFromHandle(hwnd);
     1484    if(!window) {
     1485        dprintf(("GetPropA, window %x not found", hwnd));
     1486        SetLastError(ERROR_INVALID_WINDOW_HANDLE);
     1487        return 0;
     1488    }
     1489    return window->getProp(str);
     1490}
     1491//******************************************************************************
     1492//******************************************************************************
     1493HANDLE WINAPI GetPropW( HWND hwnd, LPCWSTR str )
     1494{
     1495    LPSTR strA;
     1496    HANDLE ret;
     1497
     1498    if (!HIWORD(str)) return GetPropA( hwnd, (LPCSTR)(UINT)LOWORD(str) );
     1499    strA = HEAP_strdupWtoA( GetProcessHeap(), 0, str );
     1500    ret = GetPropA( hwnd, strA );
     1501    HeapFree( GetProcessHeap(), 0, strA );
     1502    return ret;
     1503}
     1504//******************************************************************************
     1505//******************************************************************************
     1506BOOL WINAPI SetPropA( HWND hwnd, LPCSTR str, HANDLE handle )
     1507{
     1508  Win32BaseWindow *window;
     1509
     1510    window = Win32BaseWindow::GetWindowFromHandle(hwnd);
     1511    if(!window) {
     1512        dprintf(("SetPropA, window %x not found", hwnd));
     1513        SetLastError(ERROR_INVALID_WINDOW_HANDLE);
     1514        return FALSE;
     1515    }
     1516    return window->setProp(str, handle);
     1517}
     1518//******************************************************************************
     1519//******************************************************************************
     1520BOOL WINAPI SetPropW( HWND hwnd, LPCWSTR str, HANDLE handle )
     1521{
     1522    BOOL ret;
     1523    LPSTR strA;
     1524
     1525    if (!HIWORD(str))
     1526        return SetPropA( hwnd, (LPCSTR)(UINT)LOWORD(str), handle );
     1527    strA = HEAP_strdupWtoA( GetProcessHeap(), 0, str );
     1528    ret = SetPropA( hwnd, strA, handle );
     1529    HeapFree( GetProcessHeap(), 0, strA );
     1530    return ret;
     1531}
     1532//******************************************************************************
     1533//******************************************************************************
     1534HANDLE WINAPI RemovePropA( HWND hwnd, LPCSTR str )
     1535{
     1536  Win32BaseWindow *window;
     1537
     1538    window = Win32BaseWindow::GetWindowFromHandle(hwnd);
     1539    if(!window) {
     1540        dprintf(("RemovePropA, window %x not found", hwnd));
     1541        SetLastError(ERROR_INVALID_WINDOW_HANDLE);
     1542        return 0;
     1543    }
     1544    return window->removeProp(str);
     1545}
     1546//******************************************************************************
     1547//******************************************************************************
     1548HANDLE WINAPI RemovePropW( HWND hwnd, LPCWSTR str )
     1549{
     1550    LPSTR strA;
     1551    HANDLE ret;
     1552
     1553    if (!HIWORD(str))
     1554        return RemovePropA( hwnd, (LPCSTR)(UINT)LOWORD(str) );
     1555    strA = HEAP_strdupWtoA( GetProcessHeap(), 0, str );
     1556    ret = RemovePropA( hwnd, strA );
     1557    HeapFree( GetProcessHeap(), 0, strA );
     1558    return ret;
     1559}
     1560//******************************************************************************
     1561//******************************************************************************
     1562INT WINAPI EnumPropsA( HWND hwnd, PROPENUMPROCA func )
     1563{
     1564    return EnumPropsExA( hwnd, (PROPENUMPROCEXA)func, 0 );
     1565}
     1566//******************************************************************************
     1567//******************************************************************************
     1568INT WINAPI EnumPropsW( HWND hwnd, PROPENUMPROCW func )
     1569{
     1570    return EnumPropsExW( hwnd, (PROPENUMPROCEXW)func, 0 );
     1571}
     1572//******************************************************************************
     1573//******************************************************************************
     1574INT WINAPI EnumPropsExA(HWND hwnd, PROPENUMPROCEXA func, LPARAM lParam)
     1575{
     1576  Win32BaseWindow *window;
     1577
     1578    window = Win32BaseWindow::GetWindowFromHandle(hwnd);
     1579    if(!window) {
     1580        dprintf(("EnumPropsExA, window %x not found", hwnd));
     1581        SetLastError(ERROR_INVALID_WINDOW_HANDLE);
     1582        return -1;
     1583    }
     1584    return window->enumPropsExA(func, lParam);
     1585}
     1586//******************************************************************************
     1587//******************************************************************************
     1588INT WINAPI EnumPropsExW(HWND hwnd, PROPENUMPROCEXW func, LPARAM lParam)
     1589{
     1590  Win32BaseWindow *window;
     1591
     1592    window = Win32BaseWindow::GetWindowFromHandle(hwnd);
     1593    if(!window) {
     1594        dprintf(("EnumPropsExA, window %x not found", hwnd));
     1595        SetLastError(ERROR_INVALID_WINDOW_HANDLE);
     1596        return -1;
     1597    }
     1598    return window->enumPropsExW(func, lParam);
     1599}
     1600//******************************************************************************
     1601//******************************************************************************
Note: See TracChangeset for help on using the changeset viewer.