diff options
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/Library_vcl.mk | 1 | ||||
-rw-r--r-- | vcl/Package_inc.mk | 1 | ||||
-rw-r--r-- | vcl/aqua/source/window/salframe.cxx | 7 | ||||
-rw-r--r-- | vcl/headless/svpframe.cxx | 4 | ||||
-rw-r--r-- | vcl/inc/aqua/salframe.h | 1 | ||||
-rw-r--r-- | vcl/inc/headless/svpframe.hxx | 7 | ||||
-rw-r--r-- | vcl/inc/salframe.hxx | 2 | ||||
-rw-r--r-- | vcl/inc/unx/gtk/gtkframe.hxx | 2 | ||||
-rw-r--r-- | vcl/inc/unx/saldisp.hxx | 2 | ||||
-rw-r--r-- | vcl/inc/unx/salframe.h | 1 | ||||
-rw-r--r-- | vcl/inc/vcl/sound.hxx | 39 | ||||
-rw-r--r-- | vcl/inc/win/salframe.h | 1 | ||||
-rw-r--r-- | vcl/source/app/sound.cxx | 40 | ||||
-rw-r--r-- | vcl/unx/generic/app/saldisp.cxx | 6 | ||||
-rw-r--r-- | vcl/unx/generic/window/salframe.cxx | 6 | ||||
-rw-r--r-- | vcl/unx/gtk/window/gtkframe.cxx | 5 | ||||
-rw-r--r-- | vcl/win/source/window/salframe.cxx | 8 |
17 files changed, 130 insertions, 3 deletions
diff --git a/vcl/Library_vcl.mk b/vcl/Library_vcl.mk index a05e39bf0b42..8f12d2c0cd9f 100644 --- a/vcl/Library_vcl.mk +++ b/vcl/Library_vcl.mk @@ -117,6 +117,7 @@ $(eval $(call gb_Library_add_exception_objects,vcl,\ vcl/source/app/session \ vcl/source/app/settings \ vcl/source/app/solarmutex \ + vcl/source/app/sound \ vcl/source/app/stdtext \ vcl/source/app/svapp \ vcl/source/app/svdata \ diff --git a/vcl/Package_inc.mk b/vcl/Package_inc.mk index 53a7326279b1..48d996d443e2 100644 --- a/vcl/Package_inc.mk +++ b/vcl/Package_inc.mk @@ -126,6 +126,7 @@ $(eval $(call gb_Package_add_file,vcl_inc,inc/vcl/seleng.hxx,vcl/seleng.hxx)) $(eval $(call gb_Package_add_file,vcl_inc,inc/vcl/settings.hxx,vcl/settings.hxx)) $(eval $(call gb_Package_add_file,vcl_inc,inc/vcl/slider.hxx,vcl/slider.hxx)) $(eval $(call gb_Package_add_file,vcl_inc,inc/vcl/solarmutex.hxx,vcl/solarmutex.hxx)) +$(eval $(call gb_Package_add_file,vcl_inc,inc/vcl/sound.hxx,vcl/sound.hxx)) $(eval $(call gb_Package_add_file,vcl_inc,inc/vcl/spinfld.hxx,vcl/spinfld.hxx)) $(eval $(call gb_Package_add_file,vcl_inc,inc/vcl/spin.h,vcl/spin.h)) $(eval $(call gb_Package_add_file,vcl_inc,inc/vcl/spin.hxx,vcl/spin.hxx)) diff --git a/vcl/aqua/source/window/salframe.cxx b/vcl/aqua/source/window/salframe.cxx index d2e616c920da..12cbb916fefc 100644 --- a/vcl/aqua/source/window/salframe.cxx +++ b/vcl/aqua/source/window/salframe.cxx @@ -1339,6 +1339,13 @@ const SystemEnvData* AquaSalFrame::GetSystemData() const // ----------------------------------------------------------------------- +void AquaSalFrame::Beep() +{ + NSBeep(); +} + +// ----------------------------------------------------------------------- + void AquaSalFrame::SetPosSize(long nX, long nY, long nWidth, long nHeight, sal_uInt16 nFlags) { if ( !mpWindow ) diff --git a/vcl/headless/svpframe.cxx b/vcl/headless/svpframe.cxx index 0d4e4660f197..5827d51c88a1 100644 --- a/vcl/headless/svpframe.cxx +++ b/vcl/headless/svpframe.cxx @@ -419,6 +419,10 @@ void SvpSalFrame::UpdateSettings( AllSettings& ) { } +void SvpSalFrame::Beep() +{ +} + const SystemEnvData* SvpSalFrame::GetSystemData() const { return &m_aSystemChildData; diff --git a/vcl/inc/aqua/salframe.h b/vcl/inc/aqua/salframe.h index e6dcde37cf75..39d9496a9fe0 100644 --- a/vcl/inc/aqua/salframe.h +++ b/vcl/inc/aqua/salframe.h @@ -138,6 +138,7 @@ public: virtual sal_Bool MapUnicodeToKeyCode( sal_Unicode aUnicode, LanguageType aLangType, KeyCode& rKeyCode ); virtual LanguageType GetInputLanguage(); virtual void UpdateSettings( AllSettings& rSettings ); + virtual void Beep(); virtual const SystemEnvData* GetSystemData() const; virtual SalPointerState GetPointerState(); virtual SalIndicatorState GetIndicatorState(); diff --git a/vcl/inc/headless/svpframe.hxx b/vcl/inc/headless/svpframe.hxx index c48d602176b5..887e182deda4 100644 --- a/vcl/inc/headless/svpframe.hxx +++ b/vcl/inc/headless/svpframe.hxx @@ -102,11 +102,12 @@ public: virtual void Sync(); virtual void SetInputContext( SalInputContext* pContext ); virtual void EndExtTextInput( sal_uInt16 nFlags ); - virtual rtl::OUString GetKeyName( sal_uInt16 nKeyCode ); - virtual sal_Bool MapUnicodeToKeyCode( sal_Unicode aUnicode, LanguageType aLangType, KeyCode& rKeyCode ); + virtual rtl::OUString GetKeyName( sal_uInt16 nKeyCode ); + virtual sal_Bool MapUnicodeToKeyCode( sal_Unicode aUnicode, LanguageType aLangType, KeyCode& rKeyCode ); virtual LanguageType GetInputLanguage(); virtual void UpdateSettings( AllSettings& rSettings ); - virtual const SystemEnvData* GetSystemData() const; + virtual void Beep(); + virtual const SystemEnvData* GetSystemData() const; virtual SalPointerState GetPointerState(); virtual SalIndicatorState GetIndicatorState(); virtual void SimulateKeyPress( sal_uInt16 nKeyCode ); diff --git a/vcl/inc/salframe.hxx b/vcl/inc/salframe.hxx index 63096e0e2a40..afc84203f82b 100644 --- a/vcl/inc/salframe.hxx +++ b/vcl/inc/salframe.hxx @@ -205,6 +205,8 @@ public: virtual void UpdateSettings( AllSettings& rSettings ) = 0; + virtual void Beep() = 0; + // returns system data (most prominent: window handle) virtual const SystemEnvData* GetSystemData() const = 0; diff --git a/vcl/inc/unx/gtk/gtkframe.hxx b/vcl/inc/unx/gtk/gtkframe.hxx index a33a5584eb7a..45bee2d07b87 100644 --- a/vcl/inc/unx/gtk/gtkframe.hxx +++ b/vcl/inc/unx/gtk/gtkframe.hxx @@ -402,6 +402,8 @@ public: virtual void UpdateSettings( AllSettings& rSettings ); + virtual void Beep(); + // returns system data (most prominent: window handle) virtual const SystemEnvData* GetSystemData() const; diff --git a/vcl/inc/unx/saldisp.hxx b/vcl/inc/unx/saldisp.hxx index d5e62409b664..711c735f9c8f 100644 --- a/vcl/inc/unx/saldisp.hxx +++ b/vcl/inc/unx/saldisp.hxx @@ -316,6 +316,8 @@ public: void DbgPrintDisplayEvent(const char *pComment, XEvent *pEvent) const; #endif + void Beep() const; + void ModifierMapping(); void SimulateKeyPress( sal_uInt16 nKeyCode ); sal_uInt16 GetIndicatorState() const; diff --git a/vcl/inc/unx/salframe.h b/vcl/inc/unx/salframe.h index c6a8cc30d100..75a37c12ed82 100644 --- a/vcl/inc/unx/salframe.h +++ b/vcl/inc/unx/salframe.h @@ -241,6 +241,7 @@ public: virtual sal_Bool MapUnicodeToKeyCode( sal_Unicode aUnicode, LanguageType aLangType, KeyCode& rKeyCode ); virtual LanguageType GetInputLanguage(); virtual void UpdateSettings( AllSettings& rSettings ); + virtual void Beep(); virtual const SystemEnvData* GetSystemData() const; virtual SalPointerState GetPointerState(); virtual SalIndicatorState GetIndicatorState(); diff --git a/vcl/inc/vcl/sound.hxx b/vcl/inc/vcl/sound.hxx new file mode 100644 index 000000000000..7be53a0944ee --- /dev/null +++ b/vcl/inc/vcl/sound.hxx @@ -0,0 +1,39 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef _SV_SOUND_HXX +#define _SV_SOUND_HXX + +#include <vcl/dllapi.h> + +class Window; + +// --------- +// - Sound - +// --------- + +class VCL_DLLPUBLIC Sound +{ +public: + static void Beep( Window* pWindow = NULL ); +}; + +#endif // _SV_SOUND_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/vcl/inc/win/salframe.h b/vcl/inc/win/salframe.h index 54e10bd59d5b..2a622195f37d 100644 --- a/vcl/inc/win/salframe.h +++ b/vcl/inc/win/salframe.h @@ -121,6 +121,7 @@ public: virtual sal_Bool MapUnicodeToKeyCode( sal_Unicode aUnicode, LanguageType aLangType, KeyCode& rKeyCode ); virtual LanguageType GetInputLanguage(); virtual void UpdateSettings( AllSettings& rSettings ); + virtual void Beep(); virtual const SystemEnvData* GetSystemData() const; virtual SalPointerState GetPointerState(); virtual SalIndicatorState GetIndicatorState(); diff --git a/vcl/source/app/sound.cxx b/vcl/source/app/sound.cxx new file mode 100644 index 000000000000..308f37f8c57f --- /dev/null +++ b/vcl/source/app/sound.cxx @@ -0,0 +1,40 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + + +#include <vcl/svapp.hxx> +#include <vcl/window.hxx> +#include <vcl/sound.hxx> + +#include <salframe.hxx> +#include <svdata.hxx> + +void Sound::Beep( Window* pWindow ) +{ + // #i91990# + if ( Application::IsHeadlessModeEnabled() ) + return; + + if ( !pWindow ) + pWindow = ImplGetDefaultWindow(); + + pWindow->ImplGetFrame()->Beep(); +} + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/vcl/unx/generic/app/saldisp.cxx b/vcl/unx/generic/app/saldisp.cxx index 725bd19f1d9f..c6719da4fb24 100644 --- a/vcl/unx/generic/app/saldisp.cxx +++ b/vcl/unx/generic/app/saldisp.cxx @@ -664,6 +664,12 @@ void SalX11Display::SetupInput( SalI18N_InputMethod *pInputMethod ) SetKbdExtension( pKbdExtension ); } +// Sound +void SalDisplay::Beep() const +{ + XBell( pDisp_, 100 ); +} + // Keyboard // -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= diff --git a/vcl/unx/generic/window/salframe.cxx b/vcl/unx/generic/window/salframe.cxx index 67ce56e08992..455c57a797b2 100644 --- a/vcl/unx/generic/window/salframe.cxx +++ b/vcl/unx/generic/window/salframe.cxx @@ -2586,6 +2586,12 @@ bool X11SalFrame::SetPluginParent( SystemParentData* pNewParent ) return true; } +// Sound +void X11SalFrame::Beep() +{ + GetDisplay()->Beep(); +} + // Event Handling // -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= static sal_uInt16 sal_GetCode( int state ) diff --git a/vcl/unx/gtk/window/gtkframe.cxx b/vcl/unx/gtk/window/gtkframe.cxx index 398ece4c300a..03f8c59fcad1 100644 --- a/vcl/unx/gtk/window/gtkframe.cxx +++ b/vcl/unx/gtk/window/gtkframe.cxx @@ -2673,6 +2673,11 @@ void GtkSalFrame::UpdateSettings( AllSettings& rSettings ) ReleaseGraphics( pGraphics ); } +void GtkSalFrame::Beep() +{ + gdk_display_beep( getGdkDisplay() ); +} + const SystemEnvData* GtkSalFrame::GetSystemData() const { return &m_aSystemData; diff --git a/vcl/win/source/window/salframe.cxx b/vcl/win/source/window/salframe.cxx index 411d87a10943..1138ebde6734 100644 --- a/vcl/win/source/window/salframe.cxx +++ b/vcl/win/source/window/salframe.cxx @@ -2955,6 +2955,14 @@ const SystemEnvData* WinSalFrame::GetSystemData() const // ----------------------------------------------------------------------- +void WinSalFrame::Beep() +{ + // a simple beep + MessageBeep( 0 ); +} + +// ----------------------------------------------------------------------- + SalFrame::SalPointerState WinSalFrame::GetPointerState() { SalPointerState aState; |