//==========================================================================; // // THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY // KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR // PURPOSE. // // Copyright (c) 1992 - 1998 Microsoft Corporation. All Rights Reserved. // //--------------------------------------------------------------------------; // // GargProp.h // // This file is entirely concerned with the implementation of the // properties page. It uses the property page base class to minimise // the implementation effort. #ifndef __GARGPROP__ #define __GARGPROP__ #ifdef __cplusplus extern "C" { #endif const int MaxGargleRate = 1000; // 1000Hz max rate const int MinGargleRate = 1; // 1Hz min rate const int DefaultGargleRate = 10; // 10 Hz default class CGargleProperties : public CBasePropertyPage { public: static CUnknown * WINAPI CreateInstance(LPUNKNOWN lpunk, HRESULT *phr); // Overrides from CBasePropertyPage HRESULT OnConnect(IUnknown * punk); HRESULT OnDisconnect(void); HRESULT OnDeactivate(void); CGargleProperties(LPUNKNOWN lpunk, HRESULT *phr); private: BOOL OnReceiveMessage(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); HWND CreateSlider(HWND hwndParent); void OnSliderNotification(WPARAM wParam); HWND m_hwndSlider; // handle of slider IGargle *m_pGargle; // pointer to the IGargle interface of the // gargle filter. Set up in OnConnect. int m_iGargleRate; // Remember gargle rate between // Deactivate / Activate calls. int m_iGargleShape; // 0 = triangle (default), 1 = square wave. }; // class CGargleProperties #ifdef __cplusplus } #endif #endif // __GARGPROP__