BAlert: play user-selected sound
* Alert sounds are separate from notifications Change-Id: I9e5545084faea354ddd339154c10b54d6479b404 Reviewed-on: https://review.haiku-os.org/c/haiku/+/8477 Tested-by: Commit checker robot <[email protected]> Reviewed-by: Adrien Destugues <[email protected]>
This commit is contained in:
committed by
Adrien Destugues
parent
f081c0202d
commit
64f088f495
@@ -107,6 +107,7 @@ private:
|
|||||||
BBitmap* _CreateTypeIcon();
|
BBitmap* _CreateTypeIcon();
|
||||||
BButton* _CreateButton(int32 which, const char* label);
|
BButton* _CreateButton(int32 which, const char* label);
|
||||||
void _Prepare();
|
void _Prepare();
|
||||||
|
void _PlaySound();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
sem_id fAlertSem;
|
sem_id fAlertSem;
|
||||||
|
|||||||
@@ -13,6 +13,9 @@
|
|||||||
|
|
||||||
#define MEDIA_SOUNDS_BEEP "Beep"
|
#define MEDIA_SOUNDS_BEEP "Beep"
|
||||||
#define MEDIA_SOUNDS_STARTUP "Startup"
|
#define MEDIA_SOUNDS_STARTUP "Startup"
|
||||||
|
#define MEDIA_SOUNDS_INFORMATION_ALERT "Information alert"
|
||||||
|
#define MEDIA_SOUNDS_IMPORTANT_ALERT "Important alert"
|
||||||
|
#define MEDIA_SOUNDS_ERROR_ALERT "Error alert"
|
||||||
#define MEDIA_SOUNDS_KEY_DOWN "Key down"
|
#define MEDIA_SOUNDS_KEY_DOWN "Key down"
|
||||||
#define MEDIA_SOUNDS_KEY_REPEAT "Key repeat"
|
#define MEDIA_SOUNDS_KEY_REPEAT "Key repeat"
|
||||||
#define MEDIA_SOUNDS_KEY_UP "Key up"
|
#define MEDIA_SOUNDS_KEY_UP "Key up"
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
* Axel Dörfler, [email protected]
|
* Axel Dörfler, [email protected]
|
||||||
* Erik Jaesler, [email protected]
|
* Erik Jaesler, [email protected]
|
||||||
* John Scipione, [email protected]
|
* John Scipione, [email protected]
|
||||||
|
* Ron Ben Aroya, [email protected]
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@@ -18,6 +19,7 @@
|
|||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#include <Beep.h>
|
||||||
#include <Bitmap.h>
|
#include <Bitmap.h>
|
||||||
#include <Button.h>
|
#include <Button.h>
|
||||||
#include <ControlLook.h>
|
#include <ControlLook.h>
|
||||||
@@ -25,6 +27,7 @@
|
|||||||
#include <FindDirectory.h>
|
#include <FindDirectory.h>
|
||||||
#include <IconUtils.h>
|
#include <IconUtils.h>
|
||||||
#include <LayoutBuilder.h>
|
#include <LayoutBuilder.h>
|
||||||
|
#include <MediaSounds.h>
|
||||||
#include <MenuField.h>
|
#include <MenuField.h>
|
||||||
#include <MessageFilter.h>
|
#include <MessageFilter.h>
|
||||||
#include <Path.h>
|
#include <Path.h>
|
||||||
@@ -279,6 +282,7 @@ BAlert::Go()
|
|||||||
|
|
||||||
_Prepare();
|
_Prepare();
|
||||||
Show();
|
Show();
|
||||||
|
_PlaySound();
|
||||||
|
|
||||||
if (window != NULL) {
|
if (window != NULL) {
|
||||||
status_t status;
|
status_t status;
|
||||||
@@ -316,6 +320,7 @@ BAlert::Go(BInvoker* invoker)
|
|||||||
fInvoker = invoker;
|
fInvoker = invoker;
|
||||||
_Prepare();
|
_Prepare();
|
||||||
Show();
|
Show();
|
||||||
|
_PlaySound();
|
||||||
return B_OK;
|
return B_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -654,6 +659,26 @@ BAlert::_Prepare()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
BAlert::_PlaySound()
|
||||||
|
{
|
||||||
|
switch (Type()) {
|
||||||
|
case B_INFO_ALERT:
|
||||||
|
system_beep(MEDIA_SOUNDS_INFORMATION_ALERT);
|
||||||
|
break;
|
||||||
|
case B_WARNING_ALERT:
|
||||||
|
system_beep(MEDIA_SOUNDS_IMPORTANT_ALERT);
|
||||||
|
break;
|
||||||
|
case B_STOP_ALERT:
|
||||||
|
system_beep(MEDIA_SOUNDS_ERROR_ALERT);
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// #pragma mark - TAlertView
|
// #pragma mark - TAlertView
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ if $(RUN_WITHOUT_APP_SERVER) != 0 {
|
|||||||
SetSubDirSupportedPlatforms haiku libbe_test ;
|
SetSubDirSupportedPlatforms haiku libbe_test ;
|
||||||
|
|
||||||
UseLibraryHeaders agg ;
|
UseLibraryHeaders agg ;
|
||||||
UsePrivateHeaders app input print interface locale shared support tracker ;
|
UsePrivateHeaders app input print interface locale media shared support tracker ;
|
||||||
|
|
||||||
UseHeaders [ FDirName $(HAIKU_TOP) src kits tracker ] ;
|
UseHeaders [ FDirName $(HAIKU_TOP) src kits tracker ] ;
|
||||||
|
|
||||||
|
|||||||
@@ -38,6 +38,9 @@ MediaFilesManager::MediaFilesManager()
|
|||||||
} kInitialItems[] = {
|
} kInitialItems[] = {
|
||||||
{MEDIA_TYPE_SOUNDS, MEDIA_SOUNDS_BEEP},
|
{MEDIA_TYPE_SOUNDS, MEDIA_SOUNDS_BEEP},
|
||||||
{MEDIA_TYPE_SOUNDS, MEDIA_SOUNDS_STARTUP},
|
{MEDIA_TYPE_SOUNDS, MEDIA_SOUNDS_STARTUP},
|
||||||
|
{MEDIA_TYPE_SOUNDS, MEDIA_SOUNDS_INFORMATION_ALERT},
|
||||||
|
{MEDIA_TYPE_SOUNDS, MEDIA_SOUNDS_IMPORTANT_ALERT},
|
||||||
|
{MEDIA_TYPE_SOUNDS, MEDIA_SOUNDS_ERROR_ALERT},
|
||||||
{MEDIA_TYPE_SOUNDS, MEDIA_SOUNDS_KEY_DOWN},
|
{MEDIA_TYPE_SOUNDS, MEDIA_SOUNDS_KEY_DOWN},
|
||||||
{MEDIA_TYPE_SOUNDS, MEDIA_SOUNDS_KEY_REPEAT},
|
{MEDIA_TYPE_SOUNDS, MEDIA_SOUNDS_KEY_REPEAT},
|
||||||
{MEDIA_TYPE_SOUNDS, MEDIA_SOUNDS_KEY_UP},
|
{MEDIA_TYPE_SOUNDS, MEDIA_SOUNDS_KEY_UP},
|
||||||
|
|||||||
Reference in New Issue
Block a user