Files
AppleWin/source/Configuration/PropertySheet.h
T

62 lines
2.6 KiB
C++

#pragma once
#include "IPropertySheet.h"
#include "PropertySheetHelper.h"
#include "PageConfig.h"
#include "PageInput.h"
#include "PageSlots.h"
#include "PageAdvanced.h"
class CPropertySheet : public IPropertySheet
{
public:
CPropertySheet() :
m_PageConfig(m_PropertySheetHelper),
m_PageInput(m_PropertySheetHelper),
m_PageSlots(m_PropertySheetHelper),
m_PageAdvanced(m_PropertySheetHelper)
{
}
virtual ~CPropertySheet(){}
virtual void Init();
virtual uint32_t GetVolumeMax(); // TODO:TC: Move out of here
virtual bool SaveStateSelectImage(HWND hWindow, bool bSave); // TODO:TC: Move out of here
virtual void ResetAllToDefault();
virtual void ApplyConfigAfterClose(UINT bmPages);
void ApplyNewConfigFromSnapshot()
{
m_PropertySheetHelper.ApplyNewConfigFromSnapshot();
}
void ConfigSaveApple2Type(eApple2Type apple2Type)
{
m_PropertySheetHelper.ConfigSaveApple2Type(apple2Type);
}
virtual UINT GetScrollLockToggle() { return m_PageConfig.GetScrollLockToggle(); }
virtual void SetScrollLockToggle(UINT uValue) { m_PageConfig.SetScrollLockToggle(uValue); }
virtual UINT GetJoystickCursorControl() { return m_PageInput.GetJoystickCursorControl(); }
virtual void SetJoystickCursorControl(UINT uValue) { m_PageInput.SetJoystickCursorControl(uValue); }
virtual UINT GetJoystickCenteringControl() { return m_PageInput.GetJoystickCenteringControl(); }
virtual void SetJoystickCenteringControl(UINT uValue) { m_PageInput.SetJoystickCenteringControl(uValue); }
virtual UINT GetAutofire(UINT uButton) { return m_PageInput.GetAutofire(uButton); }
virtual UINT GetAutofire() { return m_PageInput.GetAutofire(); }
virtual void SetAutofire(UINT uValue) { m_PageInput.SetAutofire(uValue); }
virtual bool GetButtonsSwapState() { return m_PageInput.GetButtonsSwapState(); }
virtual void SetButtonsSwapState(bool value) { m_PageInput.SetButtonsSwapState(value); }
virtual UINT GetMouseShowCrosshair() { return m_PageSlots.GetMouseShowCrosshair(); }
virtual void SetMouseShowCrosshair(UINT uValue) { m_PageSlots.SetMouseShowCrosshair(uValue); }
virtual UINT GetMouseRestrictToWindow() { return m_PageSlots.GetMouseRestrictToWindow(); }
virtual void SetMouseRestrictToWindow(UINT uValue) { m_PageSlots.SetMouseRestrictToWindow(uValue); }
virtual UINT GetTheFreezesF8Rom() { return m_PageAdvanced.GetTheFreezesF8Rom(); }
virtual void SetTheFreezesF8Rom(UINT uValue) { m_PageAdvanced.SetTheFreezesF8Rom(uValue); }
private:
CPropertySheetHelper m_PropertySheetHelper;
CPageConfig m_PageConfig;
CPageInput m_PageInput;
CPageSlots m_PageSlots;
CPageAdvanced m_PageAdvanced;
};