1/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- 2 * 3 * This Source Code Form is subject to the terms of the Mozilla Public 4 * License, v. 2.0. If a copy of the MPL was not distributed with this 5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 6 7#include "nsISupports.idl" 8 9interface nsIURL; 10 11[scriptable, uuid(C3C28D92-A17F-43DF-976D-4EEAE6F995FC)] 12interface nsISound : nsISupports 13{ 14 void play(in nsIURL aURL); 15 void beep(); 16 17 /** 18 * Not strictly necessary, but avoids delay before first sound. 19 * The various methods on nsISound call Init() if they need to. 20 */ 21 void init(); 22 23 /** 24 * In some situations, playEventSound will be called. Then, each 25 * implementations will play a system sound for the event if it's necessary. 26 * 27 * NOTE: Don't change these values because they are used in 28 * nsPIPromptService.idl. So, if they are changed, that makes big impact for 29 * the embedders. 30 */ 31 const unsigned long EVENT_NEW_MAIL_RECEIVED = 0; 32 const unsigned long EVENT_ALERT_DIALOG_OPEN = 1; 33 const unsigned long EVENT_CONFIRM_DIALOG_OPEN = 2; 34 const unsigned long EVENT_PROMPT_DIALOG_OPEN = 3; 35 const unsigned long EVENT_SELECT_DIALOG_OPEN = 4; 36 const unsigned long EVENT_MENU_EXECUTE = 5; 37 const unsigned long EVENT_MENU_POPUP = 6; 38 const unsigned long EVENT_EDITOR_MAX_LEN = 7; 39 void playEventSound(in unsigned long aEventId); 40}; 41