2006-06-01 Josh Green * Swami 0.9.4 release * Removed po/ and intl/ along with international support since it only cantained a rather outdated German translation and was causing install errors. 2005-06-18 Josh Green * Removed stooopid message about not distributing saved files, added sample export functionality (finally?), loop/instrument info now saved/loaded with samples when using libaudiofile with AIFF files, some bug fixes, la la la la la don't give a shit, Swami 1.0 soon to replace you. 2004-05-18 Josh Green * src/gui/Makefile.am: Fixed generation of empty splash_png.c when splash is disabled. 2004-05-16 Josh Green * configure.ac: Fixed --disable-splash so libpng isn't linked. 2004-05-06 Josh Green * src/libinstpatch/src/sffile.c (ipfile_end_chunk): Was saving chunk size without regard for endianness, now fixed. * src/plugins/wavetbl_fluidsynth.c: Removed temporary hack to change "loop till release" mode instruments to "loop". 2003-11-16 Josh Green Swami 0.9.2 release O, how I have neglected thee O Swami of old. * src/plugins/wavetbl_fluidsynth.c: Implemented a temporary hack to change "loop till release" mode instruments to "loop", since FluidSynth doesn't handle them correctly. * src/libinstpatch/src/instpatch.h: Changed IPSAMPLE_LOOP_UNROLL to correct value. * configure.ac: Re-enabled gettext support. 2003-07-26 Josh Green Much hacking to get OS X and mingw32 to work. mingw32 still not working properly. libInstPatch and libswami are now being linked statically, since they will probably never be used as shared libraries in the GTK 1.2 tree, and also to simplify things with fucking DLLs. * src/gui/SwamiUISpanWin.c: Using virtual keyboard velocity setting from SwamiUIMidiCtrl and also note on/off are now sent to the current selected SwamiUIMidiCtrl channel. * src/gui/SwamiUIMidiCtrl.c: Virtual keyboard velocity value. * src/libinstpatch/src/sffile.c: Fixed the byte swapping macros, since they were broken and it showed with OS X. * src/libinstpatch/src/sfload.c: De-nazified the sample tossing mechanism so it would not throw away samples that have just invalid loops. * src/libinstpatch/src/soundfont.c: Unified all locks to just a "voice lock" for use with FluidSynth. 2003-05-19 Josh Green * src/libinstpatch/src/soundfont.c, src/libinstpatch/src/instpatch.c: Fixed incorrect global modulator implementation and replaced generator list lock with a global voice lock to improve MT synthesis stability. * src/libinstpatch/src/soundfont.c (instp_mod_list_offset): Fixed a bug that caused duplicate amounts to not get added and which also clobbered the first list. * src/gui/SwamiUIModEdit.c: Multiple modulators can now be selected and deleted. * src/gui/SwamiUIObject.c, src/gui/menutbar.c: Added a "Enable Global Modulators" check menu item for toggling the use of global modulators. Selecting a span in the span window will cause the corresponding tree item to be selected as well. 2003-03-13 Josh Green Swami 0.9.1 release. Updated to use new FluidSynth 1.0.0. * README: Updated documentation * configure.ac: configure.in renamed to configure.ac and now using pkg-config for detecting libraries (except for GTK1.2 and audiofile). FluidSynth updates. * acinclude.m4: Removed old macros for iiwusynth and libsndfile detection. * src/plugins/Makefile.am: Updated to use FluidSynth. * src/plugins/wavetbl_iiwusynth*: Renamed to wavetbl_fluidsynth* and updated to use FluidSynth 1.0.0. 2003-03-07 Josh Green * src/gui/main.c: Now using popt for command line options since gnome insists, which is only used for the canvas widget. Command line options fixed as well. 2003-03-06 Josh Green * src/plugins/wavetbl_iiwusynth.c: Update for changes to iiwu_synth_sfload() routine. 2003-02-20 Josh Green * src/plugins/wavetbl_iiwusynth.c: Now setting all iiwusynth related structures to 0 to fix crash bugs with uninitialized fields. 2003-01-27 Josh Green * src/gui/SwamiUIObject.c: Added global modulator list to SwamiUIObject and config save and restore functions for it. * src/gui/SwamiUIModEdit.c: Modulator editor can now edit global modulator override list in SwamiUIObject. * src/gui/menutbar.c: "Global Modulators" item added to "Edit" menu. * src/gui/widgets/keyspan.c: Hopefully fixed bug with incorrect drawing of spans with some GTK themes when selected in GtkList. * src/libinstpatch/src/soundfont.c: Added global modulator list override feature that integrates with instp_mod_list_get_default. * src/libswami/SwamiSamplelib.c: Fixed a bug that caused loading of stereo samples to be corrupted. 2003-01-21 Josh Green src/gui/pref.c: Added "jack" to the list of hard coded FluidSynth drivers. 2003-01-07 Josh Green src/plugins/wavetbl_iiwusynth.c: More updates for recent FluidSynth API changes. 2003-01-06 Josh Green src/plugins/wavetbl_iiwusynth.c: Updates to FluidSynth plugin for CVS API changes. 2002-12-02 Josh Green src/plugins/wavetbl_iiwusynth.c: Updates to IIWUSynth plugin for CVS API changes. 2002-10-25 Josh Green * : Fixed a bug in the iiwusynth plugin for the latest CVS version of iiwusynth. 2002-10-21 Josh Green * : Added real time looping to sample viewer and changed loop toggle button to a menu to support a loop till release option. Fixed a bug in drawing of selected keyspan widgets. 2002-10-20 Josh Green * : Added a "zone_gen_change" signal to SwamiObject. Generator displays are now better synchronized. SwamiUIGenView is now color coded based on where the values are set. Zone generator editing options added to right click menu including unsetting, copying and pasting. Better refing of items in item_paste.c. Added striped background to key span widget. Added note C-60 marker to piano. Fixed another bug in iiwusynth plugin relating to setting preset generators in real time. 2002-09-18 Josh Green * : Swami 0.9.0 released Fixed a bug in iiwusynth driver that caused crash when setting generators in real time on an instrument, squashed another one that caused crash when setting root note override pointer strip, iiwusynth gui uses scale widgets now instead of spin buttons, gtk-canvas has been removed from libs/ and gengraph now optionally compiles using GnomeCanvas, modified Swami object registration to include derived types when fetching objects by type, added a libsndfile plugin, some multi-thread locking hacked into libInstPatch in zone generator routines to minimize crashes, fixed bug with keyspan widget in velocity mode, fixed setting of loop toggle in sample viewer, removed FLAC plugin temporarily until it is integrated (probably only in development branch) and removed gtk-doc stuff as this API is being ditched in favor of development branch. 2002-07-17 Josh Green * : FLAC plugin compressor is working (not enabled or tested yet) and configure option added, separated iiwusynth GUI stuff to wavetbl_iiwusynth_gui.c, GenGraph object is now functioning and usable, added 'patch-load' signal to SwamiUIObject so loading of files can be hooked, added a macro and routine to run a separate GUI init function in plugins and fixed some stuff with libinstpatch lowlevel chunk routines and reporting of file position. 2002-07-08 Josh Green * : Gettext support re-enabled, converting to gtk-doc for API docs, plugin system is now working, a new gtk-canvas based SwamiUIGenGraph object for graphing generator controls, libInstPatch now using glib, new functionality for SoundFont lowlevel chunk routines, a FLAC based plugin is in the works, some fixes to passing of modulators to iiwusynth, blah blah blah blah.. Too long since last update. 2002-06-08 Josh Green * : Many new routines dealing with modulator lists in libInstPatch and also added modulator layering to sfont_item_foreach_voice. Modulator editor now works and modulators are loaded into iiwusynth (not tested). Chorus parameter controls added to iiwusynth control dialog and enabling/disabling chorus/reverb doesn't require restart of drivers any more. Fixed keyspan widget grabbing for SwamiUISpanWin. 2002-06-06 Josh Green * : Updated documentation and added 2002 to copyright string. Moved libsoundfont into src/libinstpatch and renamed soundfont.h header to instpatch.h. Also split view menu radio buttons out into individual callbacks again due to a problem with Glade. 2002-06-04 Josh Green * Makefile.am: Disabled gettext support (temporary) * README: Updated for Swami (was the Smurf README). * configure.in: Removed gettext support (temporary) * src/gui/Makefile.am: Removed gettext support (temporary) * src/gui/SwamiUIModEdit.c: Its actually somewhat working now. Will display available modulators and load controls. Doesn't edit anything yet though. A pixmap combo box was added for selecting source control transform functions. Two option menus are used for selecting destination generator, one being the group the generator is part of and the other is filled with the generators for the selected group, which can then be selected. * src/gui/SwamiUIObject.c: Moved lack of plugin support hackery to SwamiUIObject instead of SwamiObject. "Plugins" are now being statically linked into swami binary. * src/gui/pixmap.c: Pixmaps added for modulator transform functions. * src/gui/pixmap.h: Pixmaps added for modulator transform functions. * src/gui/pixmaps/Makefile.am: More pixmaps. * src/gui/widgets/Makefile.am: combo-box.[ch] and pixmap-combo.[ch] widgets added and modified from libgal. * src/gui/widgets/combo-box.c: New widget taken and modified from libgal. A popup combo box widget. * src/gui/widgets/pixmap-combo.c: A widget that uses combo-box to display a table of pixmaps for selection. Currently used in modulator editor. * src/include/Makefile.am: Added missing entries for some header files. * src/libswami/Makefile.am: Removed linking of "plugins" into libswami which was causing some breakage for some users. Now being linked into swami binary. * src/libswami/SwamiObject.c: Removed "plugin" loading hackery. * src/libswami/SwamiPlugin.c: Plugin code ripped and modified from gstreamer, not yet being used. * src/libswami/SwamiPlugin.h: Plugin code ripped and modified from gstreamer, not yet being used. 2002-05-31 Josh Green * acinclude.m4: Removed comments that contained "AM_PATH_ALSA" as aclocal assumed that we were using it (how appalling!) * src/gui/SwamiUIGenCtrl.c: (cb_ctrl_value_change): Updated for changed function prototype for real time generator control. * src/gui/menutbar.c: (swamiui_menu_cb_lowpane_select), (swamiui_tbar_new), (tbar_cb_lower_view_button_toggled), (tbar_cb_piano_mode_button_toggled), (swamiui_tbar_set_lowpane_togbtn), (swamiui_tbar_set_piano_mode_togbtn): Fixed menu view radio buttons and now have an icon for the not as yet working modulator editor. * src/gui/pixmap.c: Added a new pixmap. * src/libswami/SwamiWavetbl.c: (swami_wavetbl_set_gen_realtime): Changed realtime generator control function prototype to use an SFItem as the layer rather than an index. * src/libswami/SwamiWavetbl.h: Changed prototype for swami_wavetbl_set_gen_realtime. * src/plugins/wavetbl_iiwusynth.c: (wavetbl_iiwusynth_register), (wavetbl_iiwusynth_init), (sfloader_preset_noteon), (sfloader_temp_preset_noteon), (sfloader_preset_foreach_voice), (wavetbl_iiwusynth_set_gen_realtime), (swamiui_wavetbl_iiwusynth_create_controls): Removed old inadequate real time generator control and implemented a routine to re-layer an audible and update changed voices. Only works for most recent note in temporary audible. 2002-05-28 Josh Green * src/gui/SwamiUIObject.c: Quit confirmation works now. Add selected files in multi file selection dialog works for patch file loading. Selecting zones in tree selects them in spanwin as well (not the other way around yet though). * src/gui/SwamiUISpanWin.c: Virtual piano key table is now loaded and saved from preferences. Fixed stuck notes problem. * src/gui/menutbar.c: (swamiui_menu_cb_save): Enabled Save and Save As options on main menu. * src/gui/pref.c: Re-enabled virtual piano key table configuration. * src/gui/widgets/piano.c: Fixed piano widget so it won't emit note on/off events for keys that are already in that state. * src/gui/SwamiUIProp.c: Added instrument zone properties for setting Root key override, exclusive class, fixed note, and fixed velocity generators. 2002-05-27 Josh Green * autogen.sh: Added '--add-missing --copy' switches to automake to fix problems with missing files and automake 1.5. * configure.in: Changed version to "0.9pre1". * src/gui/Makefile.am: Removed SwamiUISelector.[ch], added pref.[ch], SwamiUIModEdit.[ch] and item_paste.[ch]. * src/gui/SwamiUIGenCtrl.c: Patch item is now set explicitly with swamiui_genctrl_set_item and removed use of SwamiUISelector. Added generator default toggle buttons to unset generators and re-structured code a bit. * src/gui/SwamiUIGenView.c: Patch item is now set explicitly with swamiui_genview_set_item and removed use of SwamiUISelector. * src/gui/SwamiUIMidiCtrl.c: New routine swamiui_midictrl_midi_update_all which sends values of all controls to MIDI driver. Now using 0-15 for channel value sent to MIDI driver. * src/gui/SwamiUIObject.c: Changed many SwamiConfig variable key names and removed a few. Using a new object registration system to associate child objects to main SwamiUIObject. Added new modulator editor to GUI, not operation yet though. Open files routine now uses multi file selection widget to open multiple files. Multi file close dialog now functions properly. Sample load dialog now uses multi file selection widget and samples are named properly. * src/gui/SwamiUIObject.h: Removed child widget pointers from SwamiUIObject, use child registration system instead. * src/gui/SwamiUIProp.c: (sync_widget_to_property): Fixed some problems with handling of NULL strings for some property values. Fixed some bugs relating to setting properties on items not in Swami tree. Comment field of SFData items now converts newlines. * src/gui/SwamiUISampleView.c: Renamed swamiui_sampleview_set_sfitem to swamiui_sampleview_set_item as well as the sfitem field of the SwamiUISampleView object to item. * src/gui/SwamiUISelector.c: Removed from CVS, bad idea. * src/gui/SwamiUISelector.h: Removed from CVS, bad idea. * src/gui/SwamiUISpanWin.c: More renaming of 'sfitem' to 'item' and setting item to an invalid type now the same as setting to NULL. Added 'select-zone' and 'unselect-zone' signals for keyspan list selection. Rootkey ptrstrip now works (have to select keyspan though). * src/gui/SwamiUITree.c: Fixed a bug in preset add routine related to faulty iteration over GtkCTree nodes causing failure. Renamed swamiui_tree_get_selection_complete to swamiui_tree_get_selection_rclick. Now using a hash table for item->ctree_node lookups in preparation for multiple trees and to free up the user_data field of items. Added test for single selected item on 'tree-row-unselect' signal, might remove though as it causes unselect/select widget weirdness. * src/gui/SwamiUITreeMenu.c: Right click 'R' and Multi item 'M' menu items now use different, and proper, tree selection fetch routines. Added paste routines and removed un-implemented right click menu items. * src/gui/main.c: Swami will now accept sound font file names on the command line, which it will load. * src/gui/menutbar.c: Menu radio button under 'View' now work and are synchronized with the toolbar buttons. Green light toggle button now being used again, it stops and starts iiwusynth. * src/gui/pref.c: Added to CVS. Most preferences work now. * src/gui/pref.h: Added to CVS. * src/gui/util.c: New routine swamiui_util_option_menu_index. Modified swamiui_util_lookup_widget to work with regular glade widgets. Renamed some of the unused string utility functions. * src/include/gobject2gtk.h: Fixed G_OBJECT to work correctly. Added GTK based g_object_get and g_object_get_valist handlers. * src/libswami/SwamiAudiofile.c: Fixed a bug with initial parameter settings and changed a config variable. * src/libswami/SwamiConfig.c: Fixed a file handle leak. * src/libswami/SwamiMidi.c: Fixed bug where class was accessed before it was created. * src/libswami/SwamiObject.c: Added a flag to SFItem for toplevel patch objects which indicates whether they are active and part of the Swami tree and should emit signals. This allows property set routines to be used for items which aren't in Swami's tree without causing problems. Some SwamiConfig variables added. Child registration functions renamed. The swami_item_new routine now accepts a variable argument list of properties to set on the new item. "software" property of SoundFonts is now intialized for new items and set for saved ones. * src/libswami/SwamiWavetbl.c: An 'active' property added which allows the querying of the active state of a wavetable driver. Fixed bug where class was accessed before it was created. Added 'set_gen_realtime' function type for wavetable drivers. * src/libswami/gobject2gtk.c: Many changes to fix G_OBJECT macro. Added g2g_object_get_valist and g2g_object_get handlers. * src/plugins/wavetbl_iiwusynth.c: SwamiConfig variables added. Driver preferences now working. MIDI driver now closes when Wavetable driver does. SWAMI_MIDI_BEND_RANGE now handled. Update for change in iiwusynth.h, rename of iiwu_voice_start to iiwu_synth_start_voice. iiwusynth control dialog hacked and works for setting reverb, chorus and master gain settings. Some trace code for real time generators which is currently non-operative. * src/gui/SwamiUIModEdit.c: Added to build, modulator edit widget. * src/gui/SwamiUIModEdit.h: Added to build. * src/gui/item_paste.c: Added to build, item paste routines. * src/gui/item_paste.h: Added to build. * src/gui/widgets/multi_filesel.c: Added to build, multi file selection widget. * src/gui/widgets/multi_filesel.h: Added to build. 2002-04-30 Josh Green * src/gui/Makefile.am: Build flags for audiofile * src/gui/SwamiUIMidiCtrl.c: (swamiui_midictrl_init), (send_midi_event), (set_piano_octave): Fixed initial MIDI spin button control bug and piano octave setting now works. * src/gui/SwamiUIMultiList.c: (swamiui_multilist_init), (swamiui_multilist_new), (swamiui_multilist_set_items), (destroynotify_unref_items), (swamiui_multilist_new_listbtn), (cb_listbtn_clicked): Adding more helpful stuff to the multi item list object, including routines to help with referencing a list of items and a routine to create list buttons. * src/gui/SwamiUIObject.c: (swamiui_object_init), (swamiui_open_files), (swamiui_cb_open_files_okay), (swamiui_close_files), (swamiui_save_files), (cb_save_files_ok), (cb_save_files_browse), (cb_save_files_browse_ok), (swamiui_delete_items), (swamiui_wtbl_load_patch), (swamiui_item_properties), (swamiui_new_item), (swamiui_goto_zone_refitem), (swamiui_load_sample), (swamiui_cb_load_sample_okay), (swamiui_cb_paste_items): Some routine renaming away from sound font centric to more generic "patch" names. Changes to SwamiUITreeMenuCallback routines so that they are no longer callback specific. Save file multi item dialog implemented. Sample loading dialog implemented. * src/gui/SwamiUISpanWin.c: (swamiui_spanwin_set_mode), (swamiui_spanwin_set_sfitem), (swamiui_spanwin_update), (swamiui_spanwin_piano_set_octave): Added a routine to set the piano octave. Spans now update correctly on mode SpanWin mode change. * src/gui/SwamiUITreeMenu.c: (swamiui_treemenu_class_init), (swamiui_treemenu_activate), (treemenu_cb_selection_done), (swamiui_cb_wtbl_load_patch), (swamiui_cb_new_item), (swamiui_cb_goto_zone_refitem), (swamiui_cb_load_sample): Created a SwamiUITreeMenuCallback type to handle all menu callbacks. Updated callback handlers to use the new more specific non-callback functions and wrote wrappers where necessary. * src/libswami/Makefile.am: Added SwamiAudiofile.[ch] to the build. * src/libswami/SwamiAudiofile.c: (swami_audiofile_class_init), (swami_audiofile_driver_register_info), (swami_audiofile_select_driver), (find_driver_id_GCompareFunc), (swami_audiofile_get_driver_info), (swami_audiofile_init_driver), (swami_audiofile_load_sampledata), (swami_audiofile_init_sample), (swami_audiofile_open), (audiofile_okay), (swami_audiofile_close), (swami_audiofile_read): Audiofile loading is now working, a lot done (tired, must go to sleep). * src/libswami/SwamiObject.c: (swami_object_init), (swami_patch_load), (swami_patch_save), (swami_get_patch_list), (swami_item_insert), (swami_item_insert_before), (swami_item_new), (item_get_property): More renaming away from sound font centric routines to generic "patch" names. New routine `swami_patch_save' to save patch files. 2002-04-12 Josh Green * Makefile.am: Removed libltdl from automake SUBDIRS. * acinclude.m4: Removed unused macros left over from Smurf and added two new ones `AM_PATH_LIBSOUNDFONT' and `AM_PATH_IIWUSYNTH'. * autogen.sh: Removed build generation stuff for libswami as it is now one unified autoconf/automake build. * configure.in: Massive build changes, now a unified build system for libswami and gui. Should be cleaner with more checks for required libraries. * libltdl/*: Removed libltdl library, decided to use GModule. * src/gui/Makefile.am: Build changes, fixed splash_png.c generation, hopefully. * src/gui/SwamiUIObject.c: SwamiUITreeMenu activate callbacks now pass SwamiUITree object as the first parameter, so updated callbacks. (swamiui_cb_new_item): New SwamiUITreeMenu callback function to create a new item. (swamiui_cb_goto_zone_refitem): New SwamiUITreeMenu callback function to goto a zone's referenced item. * src/gui/SwamiUITree.c (swamiui_tree_init, tree_cb_item_prop_change): SFItem property change updates now update SwamiUITree. (swamiui_tree_freeze): Bug (bad cut and paste) that thawed instead of froze. (swamiui_tree_add_sfont, swamiui_tree_add_preset) (swamiui_tree_add_inst, swamiui_tree_add_sample): Now using `swami_item_get_formatted_name' to generate node labels for items. (swamiui_tree_item_set_pixmap): New function to set a pixmap in the first column of a SwamiUITree by sound font item. Was previously private and called `set_node_label'. * src/gui/SwamiUITreeMenu.c: Added an entry for SFITEM_SAMPLE_DATA to rmu_menus which caused the wrong menu options to be displayed for certain item types. Added callbacks for `New ' and `Goto ' menu entries. (swamiui_treemenu_activate): Now passing SwamiUITree object as the first parameter to menu item callbacks. * src/gui/help.c (swamiui_help_about): Commented out unused COMPILE_OPTIONS variable which will most likely be handled differently when the plugin system works. * src/gui/swami.glade: Added a couple of buttons to the Sample properties widget to allow selection of SampleData from a file or another sample, although neither is working yet. * src/gui/widgets/Makefile.am: Added GTK_CFLAGS to INCLUDES. * src/libswami/Makefile.am: Updated to be a part of the unified build system, as libswami is no longer built with a separate autoconf. * src/libswami/SwamiAudiofile.c: Minor changes, still not working yet. (swami_audiofile_load_into_sampledata): New function to create an SFSampleData object and load a sample into it. * src/libswami/SwamiObject.c: (swami_object_class_init): Added ITEM_PROP_CHANGE signal which is emitted when an SFItem's property is changed. (swami_item_new, new_item_unique_name): New function to create a unique SFItem and add it to the SwamiObject sound font tree. (swami_item_get_formatted_name): Updated to return formatted names suitable for SwamiUITree nodes. (swami_item_set_valist, swami_item_set_property, item_set_property): Updated to emit ITEM_PROP_CHANGE signal. * src/libswami/acinclude.m4: Removed, libswami now built from top. * src/libswami/configure.in: Removed, libswami now built from top. * src/libswami/marshals.c: Added to build. For custom signal marshallers. * src/libswami/marshals.h: Added to build. * src/plugins/Makefile.am: Statically compiling plugins for now until the plugin system works. 2002-04-07 Josh Green * src/gui/Makefile.am: Added SwamiUIProp.[ch] to the build. * src/gui/SwamiUIObject.c: Added multi sound font item properties dialog. * src/gui/SwamiUIProp.c: Properties object now working. * src/gui/SwamiUISampleView.c: Update for swami_item_get/set function renames. * src/gui/SwamiUISpanWin.c: Update for swami_item_get/set function renames. * src/gui/SwamiUITreeMenu.c: Enabled menu item for item `Properties'. * src/include/gobject2gtk.h: GValue strings are now dynamically allocated and freed on g_value_unset. * src/libswami/SwamiConfig.c: Fixed a bug where string config variables were set to static string values as defaults. Only occured when no config files present (caused segfault when opening a sound font file). * src/libswami/SwamiObject.c: Shortened swami_item_get/set_property functions to swami_item_get/set, i.e. removed "property". * src/libswami/SwamiObject.h: Rename of swami item get/set property functions. * src/libswami/gobject2gtk.c: Added g2g_value_unset to handle free of string values. * src/plugins/wavetbl_iiwusynth.c: Synchronized with iiwusynth header file which renamed all sfloader "delete" functions to "free". 2002-04-01 Josh Green * src/gui/Makefile.am: Added SwamiUISampleView.[ch] to the build. * src/gui/SwamiUISampleView.c: Added to CVS. * src/gui/SwamiUISampleView.h: Added to CVS. * src/gui/SwamiUIObject.c: Added sample view to interface. Created a swami_object variable to simplify things, don't need to cast swamiui_object anymore. * src/gui/SwamiUIProp.c: Messing with properties object, not functional yet. * src/gui/SwamiUISpanWin.c: Spans window implimented as a GtkList with a hack to allow KeySpan widget to grab mouse, still has some problems. * src/gui/SwamiUITree.h: Changed *_LAST enums to *_COUNT. * src/gui/util.h: Added RGB2GDK macro. * src/gui/widgets/keyspan.c: Synchronized with changes from Smurf, which adds some friendliness to the span widget. * src/gui/widgets/ptrstrip.c: Changed GtkPSPtr to PtrStripPointer. * src/gui/widgets/samview.c: Changed GtkSVMark to SamViewMark. * src/libswami/SwamiObject.c: Added more properties to SFSample items. * src/plugins/wavetbl_iiwusynth.c: Updated to use new libsoundfont sample storage management.