AppleWin/source/Configuration/PageDisk.h

44 lines
1.3 KiB
C++

#pragma once
#include "IPropertySheetPage.h"
#include "PropertySheetDefs.h"
class CPropertySheetHelper;
class CPageDisk : private IPropertySheetPage
{
public:
CPageDisk(CPropertySheetHelper& PropertySheetHelper) :
m_Page(PG_DISK),
m_PropertySheetHelper(PropertySheetHelper)
{
CPageDisk::ms_this = this;
}
virtual ~CPageDisk(){}
static INT_PTR CALLBACK DlgProc(HWND hWnd, UINT message, WPARAM wparam, LPARAM lparam);
protected:
// IPropertySheetPage
virtual INT_PTR DlgProcInternal(HWND hWnd, UINT message, WPARAM wparam, LPARAM lparam);
virtual void DlgOK(HWND hWnd);
virtual void DlgCANCEL(HWND hWnd){}
private:
void InitOptions(HWND hWnd);
void InitComboFloppyDrive(HWND hWnd, UINT slot);
void InitComboHDD(HWND hWnd, UINT slot);
void EnableHDD(HWND hWnd, BOOL bEnable);
void EnableFloppyDrive(HWND hWnd, BOOL bEnable, UINT slot);
void HandleHDDCombo(HWND hWnd, UINT driveSelected, UINT comboSelected);
void HandleFloppyDriveCombo(HWND hWnd, UINT driveSelected, UINT comboSelected, UINT comboOther, UINT slot);
void HandleHDDSwap(HWND hWnd);
UINT RemovalConfirmation(UINT uCommand);
static CPageDisk* ms_this;
static const TCHAR m_defaultDiskOptions[];
static const TCHAR m_defaultHDDOptions[];
const PAGETYPE m_Page;
CPropertySheetHelper& m_PropertySheetHelper;
};