Ignore:
Timestamp:
Dec 9, 1999, 1:54:05 AM (26 years ago)
Author:
sandervl
Message:

Unicode <-> Ascii translation changes + fixes for window procedures

File:
1 edited

Legend:

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

    r1762 r2033  
    1 /* $Id: win32dlg.cpp,v 1.35 1999-11-17 17:04:54 cbratschi Exp $ */
     1/* $Id: win32dlg.cpp,v 1.36 1999-12-09 00:53:37 sandervl Exp $ */
    22/*
    33 * Win32 Dialog Code for OS/2
     
    1818#include <misc.h>
    1919#include <win32dlg.h>
     20#include <win\winproc.h>
    2021#include "oslibmsg.h"
    2122#include "oslibwin.h"
     
    174175
    175176    fIsDialog = TRUE;
    176     Win32DlgProc = dlgProc;
     177    WINPROC_SetProc((HWINDOWPROC *)&Win32DlgProc, (WNDPROC)dlgProc, (isUnicode) ? WIN_PROC_32W : WIN_PROC_32A, WIN_PROC_WINDOW);
    177178
    178179    this->tmpParam       = param;
     
    195196    if (hUserFont) DeleteObject( hUserFont );
    196197    if (hMenu) DestroyMenu( hMenu );
     198
     199    WINPROC_FreeProc(Win32DlgProc, WIN_PROC_WINDOW);
    197200}
    198201//******************************************************************************
     
    10191022//******************************************************************************
    10201023//******************************************************************************
    1021 LONG Win32Dialog::SetWindowLongA(int index, ULONG value)
     1024LONG Win32Dialog::SetWindowLongA(int index, ULONG value, BOOL fUnicode)
    10221025{
    10231026    LONG oldval;
     
    10271030    {
    10281031    case DWL_DLGPROC:
    1029         oldval = (LONG)Win32DlgProc;
    1030         Win32DlgProc = (DLGPROC)value;
     1032            oldval = (LONG)WINPROC_GetProc(Win32DlgProc, (fUnicode) ? WIN_PROC_32W : WIN_PROC_32A);
     1033        WINPROC_SetProc((HWINDOWPROC *)&Win32DlgProc, (WNDPROC)value, (fUnicode) ? WIN_PROC_32W : WIN_PROC_32A, WIN_PROC_WINDOW);
    10311034        return oldval;
    10321035    case DWL_MSGRESULT:
     
    10441047//******************************************************************************
    10451048//******************************************************************************
    1046 ULONG Win32Dialog::GetWindowLongA(int index)
     1049ULONG Win32Dialog::GetWindowLongA(int index, BOOL fUnicode)
    10471050{
    10481051    dprintf2(("Win32Dialog::GetWindowLongA %x %d", getWindowHandle(), index));
     
    10501053    {
    10511054    case DWL_DLGPROC:
    1052         return (ULONG)Win32DlgProc;
     1055            return (ULONG)WINPROC_GetProc(Win32DlgProc, (fUnicode) ? WIN_PROC_32W : WIN_PROC_32A);
    10531056    case DWL_MSGRESULT:
    10541057        return msgResult;
Note: See TracChangeset for help on using the changeset viewer.