142 lines
3.1 KiB
C++
142 lines
3.1 KiB
C++
//
|
|
// C O N F G D L G . C P P
|
|
//
|
|
// Dialog box handling for Server configuration
|
|
//
|
|
// Author: danielwe
|
|
// Created: 5 Mar 1997
|
|
//
|
|
|
|
#include "pch.h"
|
|
#pragma hdrstop
|
|
|
|
#include "resource.h"
|
|
#include "srvrdlg.h"
|
|
#include "srvrhlp.h"
|
|
|
|
extern const WCHAR c_szNetCfgHelpFile[];
|
|
|
|
LRESULT CServerConfigDlg::OnInitDialog(UINT uMsg, WPARAM wParam,
|
|
LPARAM lParam, BOOL& bHandled)
|
|
{
|
|
const SERVER_DLG_DATA * psdd;
|
|
INT idd = 0;
|
|
|
|
psdd = m_psc->DlgData();
|
|
Assert(psdd);
|
|
|
|
switch (psdd->dwSize)
|
|
{
|
|
case 1:
|
|
idd = RDB_Minimize;
|
|
break;
|
|
case 2:
|
|
idd = RDB_Balance;
|
|
break;
|
|
case 3:
|
|
if (psdd->fLargeCache)
|
|
{
|
|
idd = RDB_FileSharing;
|
|
}
|
|
else
|
|
{
|
|
idd = RDB_NetApps;
|
|
}
|
|
break;
|
|
default:
|
|
AssertSz(FALSE, "Invalid Size parameter!");
|
|
break;
|
|
}
|
|
|
|
CheckDlgButton(idd, TRUE);
|
|
CheckDlgButton(CHK_Announce, psdd->fAnnounce);
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
LRESULT CServerConfigDlg::OnOk(int idCtrl, LPNMHDR pnmh, BOOL& bHandled)
|
|
{
|
|
SERVER_DLG_DATA * psdd;
|
|
static const INT aidd[] =
|
|
{
|
|
RDB_Minimize,
|
|
RDB_Balance,
|
|
RDB_FileSharing,
|
|
RDB_NetApps,
|
|
};
|
|
static const INT cidd = celems(aidd);
|
|
INT iidd;
|
|
|
|
psdd = m_psc->DlgDataRW();
|
|
Assert(psdd);
|
|
|
|
// figure out which radio button was selected
|
|
for (iidd = 0; iidd < cidd; iidd++)
|
|
{
|
|
if (IsDlgButtonChecked(aidd[iidd]))
|
|
break;
|
|
}
|
|
|
|
AssertSz(iidd < cidd, "Umm. How could a button NOT be selected??");
|
|
|
|
// make it 1-based instead of 0-based
|
|
iidd++;
|
|
|
|
psdd->fLargeCache = (iidd == 3);
|
|
psdd->dwSize = min(iidd, 3);
|
|
psdd->fAnnounce = IsDlgButtonChecked(CHK_Announce);
|
|
m_psc->SetDirty();
|
|
|
|
return 0;
|
|
}
|
|
|
|
//+---------------------------------------------------------------------------
|
|
//
|
|
// Method: CServerConfigDlg::OnContextMenu
|
|
//
|
|
// Desc: Bring up context-sensitive help
|
|
//
|
|
// Args: Standard command parameters
|
|
//
|
|
// Return: LRESULT
|
|
//
|
|
LRESULT
|
|
CServerConfigDlg::OnContextMenu(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& fHandled)
|
|
{
|
|
if (g_aHelpIDs_DLG_ServerConfig != NULL)
|
|
{
|
|
::WinHelp(m_hWnd,
|
|
c_szNetCfgHelpFile,
|
|
HELP_CONTEXTMENU,
|
|
(ULONG_PTR)g_aHelpIDs_DLG_ServerConfig);
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
//+---------------------------------------------------------------------------
|
|
//
|
|
// Method: CServerConfigDlg::OnHelp
|
|
//
|
|
// Desc: Bring up context-sensitive help when dragging ? icon over a control
|
|
//
|
|
// Args: Standard command parameters
|
|
//
|
|
// Return: LRESULT
|
|
//
|
|
//
|
|
LRESULT
|
|
CServerConfigDlg::OnHelp(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& fHandled)
|
|
{
|
|
LPHELPINFO lphi = reinterpret_cast<LPHELPINFO>(lParam);
|
|
Assert(lphi);
|
|
|
|
if ((g_aHelpIDs_DLG_ServerConfig != NULL) && (HELPINFO_WINDOW == lphi->iContextType))
|
|
{
|
|
::WinHelp(static_cast<HWND>(lphi->hItemHandle),
|
|
c_szNetCfgHelpFile,
|
|
HELP_WM_HELP,
|
|
(ULONG_PTR)g_aHelpIDs_DLG_ServerConfig);
|
|
}
|
|
return 0;
|
|
}
|