X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5c6eb3a84be918dcfed2496d014549e13af0f0e9..232b2162776e08c0b16d5280b90f5c075f38c667:/include/wx/osx/sound.h diff --git a/include/wx/osx/sound.h b/include/wx/osx/sound.h index b282748a9a..670b170b9e 100644 --- a/include/wx/osx/sound.h +++ b/include/wx/osx/sound.h @@ -1,5 +1,55 @@ -#ifdef __WXMAC_CLASSIC__ -#include "wx/mac/classic/sound.h" -#else -#include "wx/mac/carbon/sound.h" +///////////////////////////////////////////////////////////////////////////// +// Name: sound.h +// Purpose: wxSound class (loads and plays short Windows .wav files). +// Optional on non-Windows platforms. +// Author: Ryan Norton, Stefan Csomor +// Modified by: +// Created: 1998-01-01 +// RCS-ID: $Id$ +// Copyright: (c) Ryan Norton, Stefan Csomor +// Licence: wxWindows licence +///////////////////////////////////////////////////////////////////////////// + +#ifndef _WX_SOUND_H_ +#define _WX_SOUND_H_ + +#if wxUSE_SOUND + +#include "wx/object.h" + +class WXDLLIMPEXP_ADV wxSound : public wxSoundBase +{ +public: + wxSound(); + wxSound(const wxString& fileName, bool isResource = FALSE); + wxSound(int size, const wxByte* data); + virtual ~wxSound(); + +public: + bool Create(const wxString& fileName, bool isResource = FALSE); + bool IsOk() const { return !m_sndname.IsEmpty(); } + static void Stop(); + static bool IsPlaying(); + + void* GetHandle(); +protected: + bool DoPlay(unsigned flags) const; + +private: + wxString m_sndname; //file path + char* m_hSnd; //pointer to resource or memory location + int m_waveLength; //size of file in memory mode + void* m_pTimer; //timer + + enum wxSoundType + { + wxSound_MEMORY, + wxSound_FILE, + wxSound_RESOURCE, + wxSound_NONE + } m_type; //mode +}; + #endif +#endif + // _WX_SOUND_H_