Added 'stopsound()' to Magic plugin API.
Stopping longer sounds when user stops using tool (Shift & Kaleidoscope).
This commit is contained in:
parent
ca0cb771e5
commit
137797b2cd
5 changed files with 26 additions and 5 deletions
|
|
@ -6,7 +6,7 @@
|
|||
bill@newbreedsoftware.com
|
||||
http://www.tuxpaint.org/
|
||||
|
||||
July 5, 2007 - August 23, 2007
|
||||
July 5, 2007 - November 21, 2007
|
||||
|
||||
--------------------------------------------------------------------------
|
||||
|
||||
|
|
@ -460,6 +460,10 @@ Interfaces
|
|||
The 'pan' and 'dist' values can be used to simulate location and
|
||||
distance of the 'Magic' tool effect.
|
||||
|
||||
* void stopsound(void)
|
||||
This function stops playing a sound played by playsound(). It is
|
||||
useful to silence effects when the user stops using the tool (in
|
||||
your 'release' function).
|
||||
* void special_notify(int flag)
|
||||
This function notifies Tux Paint of special events. Various
|
||||
values defined in "tp_magic_api.h" can be 'or'ed together (using
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ New Breed Software</p>
|
|||
<p><a href="mailto:bill@newbreedsoftware.com">bill@newbreedsoftware.com</a><br>
|
||||
<a href="http://www.tuxpaint.org/">http://www.tuxpaint.org/</a></p>
|
||||
|
||||
<p>July 5, 2007 - August 23, 2007</p>
|
||||
<p>July 5, 2007 - November 21, 2007</p>
|
||||
</center>
|
||||
|
||||
<hr size=2 noshade>
|
||||
|
|
@ -579,6 +579,12 @@ plugin's functions.
|
|||
simulate location and distance of the 'Magic' tool effect.<br>
|
||||
<br>
|
||||
|
||||
<li><code><b>void stopsound(void)</b></code><br>
|
||||
This function stops playing a sound played by <code>playsound()</code>.
|
||||
It is useful to silence effects when the user stops using the tool
|
||||
(in your '<code>release</code>' function).
|
||||
<br>
|
||||
|
||||
<li><a name="special_notify">
|
||||
<code><b>void special_notify(int flag)</b></code>
|
||||
</a><br>
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@
|
|||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
(See COPYING.txt)
|
||||
|
||||
Last updated: November 6, 2007
|
||||
Last updated: November 21, 2007
|
||||
$Id$
|
||||
*/
|
||||
|
||||
|
|
@ -141,6 +141,7 @@ void kalidescope_release(magic_api * api, int which,
|
|||
SDL_Surface * canvas, SDL_Surface * last,
|
||||
int x, int y, SDL_Rect * update_rect)
|
||||
{
|
||||
api->stopsound();
|
||||
}
|
||||
|
||||
// No setup happened:
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@
|
|||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
(See COPYING.txt)
|
||||
|
||||
Last updated: August 20, 2007
|
||||
Last updated: November 21, 2007
|
||||
$Id$
|
||||
*/
|
||||
|
||||
|
|
@ -282,6 +282,7 @@ void shift_release(magic_api * api, int which,
|
|||
int x, int y, SDL_Rect * update_rect)
|
||||
{
|
||||
shift_doit(api, which, canvas, last, x, y, x, y, update_rect, 0);
|
||||
api->stopsound();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
(See COPYING.txt)
|
||||
|
||||
June 14, 2002 - October 26, 2007
|
||||
June 14, 2002 - November 21, 2007
|
||||
$Id$
|
||||
*/
|
||||
|
||||
|
|
@ -1501,6 +1501,7 @@ int magic_sort(const void * a, const void * b);
|
|||
|
||||
Mix_Chunk * magic_current_snd_ptr;
|
||||
void magic_playsound(Mix_Chunk * snd, int left_right, int up_down);
|
||||
void magic_stopsound(void);
|
||||
void magic_line_func(void * mapi,
|
||||
int which, SDL_Surface * canvas, SDL_Surface * last,
|
||||
int x1, int y1, int x2, int y2, int step,
|
||||
|
|
@ -16748,6 +16749,7 @@ void load_magic_plugins(void)
|
|||
magic_api_struct[plc]->putpixel = putpixels[canvas->format->BytesPerPixel];
|
||||
magic_api_struct[plc]->line = magic_line_func;
|
||||
magic_api_struct[plc]->playsound = magic_playsound;
|
||||
magic_api_struct[plc]->stopsound = magic_stopsound;
|
||||
magic_api_struct[plc]->special_notify = special_notify;
|
||||
magic_api_struct[plc]->button_down = magic_button_down;
|
||||
magic_api_struct[plc]->rgbtohsv = rgbtohsv;
|
||||
|
|
@ -17176,6 +17178,13 @@ void special_notify(int flags)
|
|||
}
|
||||
}
|
||||
|
||||
void magic_stopsound(void)
|
||||
{
|
||||
#ifndef NOSOUND
|
||||
Mix_HaltChannel(0);
|
||||
#endif
|
||||
}
|
||||
|
||||
void magic_playsound(Mix_Chunk * snd, int left_right, int up_down)
|
||||
{
|
||||
#ifndef NOSOUND
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue