# HG changeset patch # User nenolod # Date 1157686895 25200 # Node ID 67f6cfc251de46bbaad2552dd393c7ecadec1c08 # Parent a556e7ff187164ac9f989c89d162c6bf1a12b2d8 [svn] - new InterfacePlugin API. Like the ContainerPlugin API, it extends the LowlevelPlugin API. diff -r a556e7ff1871 -r 67f6cfc251de ChangeLog --- a/ChangeLog Thu Sep 07 20:27:46 2006 -0700 +++ b/ChangeLog Thu Sep 07 20:41:35 2006 -0700 @@ -1,3 +1,34 @@ +2006-09-08 03:27:46 +0000 William Pitcock + revision [2219] + - keep filepopup code in the core for now + - add README noting that this code sucks + - still a ways to go + + + Changes: Modified: + +4 -2 trunk/Plugins/UserInterface/wa2gui/Makefile + +9 -0 trunk/Plugins/UserInterface/wa2gui/README + +11 -11 trunk/Plugins/UserInterface/wa2gui/equalizer.c + +1 -1 trunk/Plugins/UserInterface/wa2gui/equalizer.h + +0 -512 trunk/Plugins/UserInterface/wa2gui/filepopup.c + +0 -33 trunk/Plugins/UserInterface/wa2gui/filepopup.h + +21 -20 trunk/Plugins/UserInterface/wa2gui/mainwin.c + +1 -1 trunk/Plugins/UserInterface/wa2gui/mainwin.h + +93 -15 trunk/Plugins/UserInterface/wa2gui/playlist.c + +0 -78 trunk/Plugins/UserInterface/wa2gui/ui_playlist.h + +7 -6 trunk/Plugins/UserInterface/wa2gui/widgets/Makefile + +1 -1 trunk/Plugins/UserInterface/wa2gui/widgets/eq_graph.c + +1 -1 trunk/Plugins/UserInterface/wa2gui/widgets/menurow.c + +6 -6 trunk/Plugins/UserInterface/wa2gui/widgets/playlist_list.c + +1 -1 trunk/Plugins/UserInterface/wa2gui/widgets/playlist_slider.c + +1256 -1261 trunk/Plugins/UserInterface/wa2gui/widgets/skin.c + +1256 -1261 trunk/Plugins/UserInterface/wa2gui/widgets/skin.c + +2 -2 trunk/Plugins/UserInterface/wa2gui/widgets/svis.c + +2 -2 trunk/Plugins/UserInterface/wa2gui/widgets/textbox.c + +1 -1 trunk/Plugins/UserInterface/wa2gui/widgets/vis.c + +1 -1 trunk/Plugins/UserInterface/wa2gui/widgets/widget.c + + 2006-09-08 02:57:27 +0000 William Pitcock revision [2217] - copy the WA2GUI code into a Plugin shell diff -r a556e7ff1871 -r 67f6cfc251de audacious/interface.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/audacious/interface.h Thu Sep 07 20:41:35 2006 -0700 @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2006 William Pitcock + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef _INTERFACE_H_ +#define _INTERFACE_H_ + +#include + +struct _InterfacePlugin { + gchar *name; + void (*init) (void); + void (*cleanup) (void); + void (*about) (void); + void (*configure) (void); + void (*disable_plugin) (struct _VisPlugin *); + void (*playback_start) (void); + void (*playback_stop) (void); + void (*dump_pcm_data) (gint16 pcm_data[2][512]); + void (*dump_freq_data) (gint16 freq_data[2][256]); + void (*redraw) (void); +}; + +typedef struct _InterfacePlugin InterfacePlugin; + +extern void register_interface_plugin(InterfacePlugin *); +extern void start_interface_plugin(InterfacePlugin *); + +#endif