diff --git a/widget/src/photon/nsSound.cpp b/widget/src/photon/nsSound.cpp index c84c12aa7b68..b319738d2c7f 100644 --- a/widget/src/photon/nsSound.cpp +++ b/widget/src/photon/nsSound.cpp @@ -1,4 +1,4 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- * * The contents of this file are subject to the Netscape Public License * Version 1.0 (the "NPL"); you may not use this file except in @@ -18,67 +18,59 @@ #include "nscore.h" -#include "nsISound.h" #include "nsIAllocator.h" #include "plstr.h" #include "stdio.h" +#include "nsSound.h" + #include #include "nsPhWidgetLog.h" -class SoundImpl : public nsISound -{ -public: - SoundImpl(); - virtual ~SoundImpl(); - - // nsISupports interface - NS_DECL_ISUPPORTS - - // nsISound interface - - NS_IMETHOD Beep(); - -}; +NS_IMPL_ISUPPORTS(nsSound, nsCOMTypeInfo::GetIID()); //////////////////////////////////////////////////////////////////////// - -nsresult -NS_NewSound(nsISound** aSound) +nsSound::nsSound() { - NS_PRECONDITION(aSound != nsnull, "null ptr"); - if (! aSound) - return NS_ERROR_NULL_POINTER; - - *aSound = new SoundImpl(); - if (! *aSound) - return NS_ERROR_OUT_OF_MEMORY; - - NS_ADDREF(*aSound); - return NS_OK; + NS_INIT_REFCNT(); } -//////////////////////////////////////////////////////////////////////// - - -SoundImpl::SoundImpl() +nsSound::~nsSound() { - NS_INIT_REFCNT(); + +} + +nsresult NS_NewSound(nsISound** aSound) +{ + NS_PRECONDITION(aSound != nsnull, "null ptr"); + if (! aSound) + return NS_ERROR_NULL_POINTER; + + *aSound = new nsSound(); + if (! *aSound) + return NS_ERROR_OUT_OF_MEMORY; + + NS_ADDREF(*aSound); + return NS_OK; +} + +// not currently used.. may go away +NS_METHOD nsSound::Init(void) +{ + return NS_OK; } -SoundImpl::~SoundImpl() +NS_METHOD nsSound::Beep() { + ::PtBeep(); + PR_LOG(PhWidLog, PR_LOG_DEBUG, ("nsSound::Beep - Not Implemented\n")); + return NS_OK; } - - -NS_IMPL_ISUPPORTS(SoundImpl, nsISound::GetIID()); - - -NS_IMETHODIMP SoundImpl::Beep() +NS_METHOD nsSound::Play(const char *filename) { - PR_LOG(PhWidLog, PR_LOG_DEBUG, ("SoundImpl::Beep - Not Implemented\n")); - PtBeep(); - return NS_OK; + PR_LOG(PhWidLog, PR_LOG_DEBUG, ("nsSound::Play - Not Implemented\n")); + NS_NOTYETIMPLEMENTED("nsSound::Play"); + return NS_OK; } diff --git a/widget/src/photon/nsSound.h b/widget/src/photon/nsSound.h new file mode 100644 index 000000000000..54261f6640bd --- /dev/null +++ b/widget/src/photon/nsSound.h @@ -0,0 +1,40 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- + * + * The contents of this file are subject to the Netscape Public License + * Version 1.0 (the "NPL"); you may not use this file except in + * compliance with the NPL. You may obtain a copy of the NPL at + * http://www.mozilla.org/NPL/ + * + * Software distributed under the NPL is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL + * for the specific language governing rights and limitations under the + * NPL. + * + * The Initial Developer of this code under the NPL is Netscape + * Communications Corporation. Portions created by Netscape are + * Copyright (C) 1998 Netscape Communications Corporation. All Rights + * Reserved. + */ + +#ifndef __nsSound_h__ +#define __nsSound_h__ + +#include "nsISound.h" + +class nsSound : public nsISound { + public: + + nsSound(); + virtual ~nsSound(); + + NS_DECL_ISUPPORTS + + NS_IMETHOD Init(void); + + NS_IMETHOD Play(const char *filename); + + NS_IMETHOD Beep(void); + +}; + +#endif /* __nsSound_h__ */