Changeset 3912 for trunk/src


Ignore:
Timestamp:
Aug 2, 2000, 1:19:49 AM (25 years ago)
Author:
sandervl
Message:

property page fix

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/comctl32/propsheet.cpp

    r3585 r3912  
    1 /* $Id: propsheet.cpp,v 1.4 2000-05-22 17:25:10 cbratschi Exp $ */
     1/* $Id: propsheet.cpp,v 1.5 2000-08-01 23:19:49 sandervl Exp $ */
    22/*
    33 * Property Sheets
     
    10681068}
    10691069
     1070#if 1
    10701071/******************************************************************************
    10711072 *            PROPSHEET_ShowPage
     
    10751076static BOOL PROPSHEET_ShowPage(HWND hwndDlg, int index, PropSheetInfo * psInfo)
    10761077{
    1077   RECT rc;
    1078   PADDING_INFO padding;
    1079   UINT pageWidth,pageHeight;
    1080 
    10811078  if (index == psInfo->active_page)
    10821079    {
     
    10861083    }
    10871084
    1088   if (psInfo->active_page != -1)
    1089      ShowWindow(psInfo->proppage[psInfo->active_page].hwndPage, SW_HIDE);
    1090 
    10911085  if (psInfo->proppage[index].hwndPage == 0)
    10921086  {
     
    11071101
    11081102     /*
     1103      * TODO: check return value.
     1104      */
     1105  }
     1106
     1107  if (psInfo->active_page != -1)
     1108     ShowWindow(psInfo->proppage[psInfo->active_page].hwndPage, SW_HIDE);
     1109
     1110  ShowWindow(psInfo->proppage[index].hwndPage, SW_SHOW);
     1111
     1112  if (!(psInfo->ppshheader->dwFlags & PSH_WIZARD))
     1113  {
     1114     HWND hwndTabCtrl;
     1115
     1116     /* Synchronize current selection with tab control */
     1117     hwndTabCtrl = GetDlgItem(hwndDlg, IDC_TABCONTROL);
     1118     SendMessageA(hwndTabCtrl, TCM_SETCURSEL, index, 0);
     1119  }
     1120
     1121  psInfo->active_page = index;
     1122  psInfo->activeValid = TRUE;
     1123
     1124  return TRUE;
     1125}
     1126#else
     1127/******************************************************************************
     1128 *            PROPSHEET_ShowPage
     1129 *
     1130 * Displays or creates the specified page.
     1131 */
     1132static BOOL PROPSHEET_ShowPage(HWND hwndDlg, int index, PropSheetInfo * psInfo)
     1133{
     1134  RECT rc;
     1135  PADDING_INFO padding;
     1136  UINT pageWidth,pageHeight;
     1137
     1138  if (index == psInfo->active_page)
     1139    {
     1140      if (GetTopWindow(hwndDlg) != psInfo->proppage[index].hwndPage)
     1141          SetWindowPos(psInfo->proppage[index].hwndPage, HWND_TOP, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE);
     1142    return TRUE;
     1143    }
     1144
     1145  if (psInfo->active_page != -1)
     1146     ShowWindow(psInfo->proppage[psInfo->active_page].hwndPage, SW_HIDE);
     1147
     1148  if (psInfo->proppage[index].hwndPage == 0)
     1149  {
     1150     LPCPROPSHEETPAGEA ppshpage;
     1151     PSHNOTIFY psn;
     1152
     1153     ppshpage = (LPCPROPSHEETPAGEA)psInfo->proppage[index].hpage;
     1154     PROPSHEET_CreatePage(hwndDlg, index, psInfo, (PROPSHEETPAGEA*)ppshpage);
     1155
     1156     psn.hdr.hwndFrom = hwndDlg;
     1157     psn.hdr.code     = PSN_SETACTIVE;
     1158     psn.hdr.idFrom   = 0;
     1159     psn.lParam       = 0;
     1160
     1161     /* Send the notification before showing the page. */
     1162     SendMessageA(psInfo->proppage[index].hwndPage,
     1163                  WM_NOTIFY, 0, (LPARAM) &psn);
     1164
     1165     /*
    11091166      * TODO: check return value.
    11101167      */
     
    11621219  return TRUE;
    11631220}
     1221#endif
    11641222
    11651223/******************************************************************************
Note: See TracChangeset for help on using the changeset viewer.