--- wsoundprefs-1.1.1.orig/src/tiff/Imakefile
+++ wsoundprefs-1.1.1/src/tiff/Imakefile
@@ -1,4 +1,5 @@
-TIFFDIR = /Apps/WSoundPrefs.app/tiff/
+APPDIR = /usr/lib/GNUstep/Applications/WSoundPrefs.app
+TIFFDIR = $(APPDIR)/tiff/
 
 TIFFS = loadset.tiff saveset.tiff
 
--- wsoundprefs-1.1.1.orig/src/Imakefile
+++ wsoundprefs-1.1.1/src/Imakefile
@@ -7,23 +7,26 @@
 
 CC = gcc
 
-BINDIR = /Apps/WSoundPrefs.app
+BINDIR = /usr/lib/GNUstep/Applications/WSoundPrefs.app
+APPDIR = /usr/lib/GNUstep/Applications/WSoundPrefs.app
 
 XCOMM EFENCELIB = -lefence
 EFENCELIB =
 
 WSOUNDCFLAGS = `get-wsound-flags --cflags`
-WSOUNDLFLAGS = `get-wsound-flags --lflags`
+WSOUNDLFLAGS = `get-wsound-flags --ldflags`
 WSOUNDLIBS = `get-wsound-flags --libs`
 WRASTERCFLAGS = `get-wraster-flags --cflags`
-WRASTERLFLAGS = `get-wraster-flags --lflags`
+WRASTERLFLAGS = `get-wraster-flags --ldflags`
 WRASTERLIBS = `get-wraster-flags --libs`
-WINGSLIBS = -lWINGs -lPropList
+WINGSCFLAGS = `get-wings-flags --cflags`
+WINGSLFLAGS = `get-wings-flags --ldflags`
+WINGSLIBS = `get-wings-flags --libs` -lXft
 
-STD_INCLUDES = $(WRASTERCFLAGS) $(WSOUNDCFLAGS)
+STD_INCLUDES = $(WRASTERCFLAGS) $(WSOUNDCFLAGS) $(WINGSCFLAGS)
 DEPLIBS = $(DEPXLIB) 
 
-LOCAL_LIBRARIES =	$(XLIB) $(WINGSLIBS) $(WSOUNDLFLAGS) $(WSOUNDLIBS) $(WRASTERLFLAGS) $(WRASTERLIBS) $(EFENCELIB)
+LOCAL_LIBRARIES =	$(XLIB) $(WINGSLIBS) $(WSOUNDLFLAGS) $(WSOUNDLIBS) $(WRASTERLFLAGS) $(WRASTERLIBS) $(WINGSLFLAGS) $(WINGSLIBS) $(EFENCELIB)
 
 LINTLIBS = $(LINTXLIB)
 
@@ -32,7 +35,7 @@
 
 ComplexProgramTarget(WSoundPrefs)
 
-InstallMultiple($(ICONS),$(BINDIR))
+InstallMultiple($(ICONS),$(APPDIR))
 
 MakeSubdirs($(SUBDIRS))
 DependSubdirs($(SUBDIRS))
--- wsoundprefs-1.1.1.orig/src/PLFunctions.c
+++ wsoundprefs-1.1.1/src/PLFunctions.c
@@ -32,90 +32,90 @@
 #include "WSoundPrefs.h"
 #include "PLFunctions.h"
 
-extern proplist_t WMSoundDomain;
+extern WMPropList *WMSoundDomain;
 
 
-proplist_t
+WMPropList *
 GetObjectForKey(char *defaultName)
 {
-    proplist_t object = NULL;
-    proplist_t key = PLMakeString(defaultName);
+    WMPropList *object = NULL;
+    WMPropList *key = WMCreatePLString(defaultName);
 
-    object = PLGetDictionaryEntry(WMSoundDomain, key);
+    object = WMGetFromPLDictionary(WMSoundDomain, key);
 
-    PLRelease(key);
+    WMReleasePropList(key);
 
     return object;
 }
 
 
 void
-SetObjectForKey(proplist_t object, char *defaultName)
+SetObjectForKey(WMPropList *object, char *defaultName)
 {
-    proplist_t key = PLMakeString(defaultName);
+    WMPropList *key = WMCreatePLString(defaultName);
 
-    PLInsertDictionaryEntry(WMSoundDomain, key, object);
-    PLRelease(key);
+    WMPutInPLDictionary(WMSoundDomain, key, object);
+    WMReleasePropList(key);
 }
 
 
 void
 RemoveObjectForKey(char *defaultName)
 {
-    proplist_t key = PLMakeString(defaultName);
+    WMPropList *key = WMCreatePLString(defaultName);
     
-    PLRemoveDictionaryEntry(WMSoundDomain, key);
+    WMRemoveFromPLDictionary(WMSoundDomain, key);
     
-    PLRelease(key);
+    WMReleasePropList(key);
 }
 
 
 char*
 GetStringForKey(char *defaultName)
 {
-    proplist_t val;
+    WMPropList *val;
     
     val = GetObjectForKey(defaultName);
 
     if (!val)
 	return NULL;
 
-    if (!PLIsString(val))
+    if (!WMIsPLString(val))
 	return NULL;
 
-    return PLGetString(val);
+    return WMGetFromPLString(val);
 }
 
 
 
-proplist_t
+WMPropList *
 GetArrayForKey(char *defaultName)
 {
-    proplist_t val;
+    WMPropList *val;
     
     val = GetObjectForKey(defaultName);
     
     if (!val)
 	return NULL;
 
-    if (!PLIsArray(val))
+    if (!WMIsPLArray(val))
 	return NULL;
 
     return val;
 }
 
 
-proplist_t
+WMPropList *
 GetDictionaryForKey(char *defaultName)
 {
-    proplist_t val;
+    WMPropList *val;
 
     val = GetObjectForKey(defaultName);
     
     if (!val)
 	return NULL;
 
-    if (!PLIsDictionary(val))
+    if (!WMIsPLDictionary(val))
 	return NULL;
 
     return val;
@@ -125,7 +125,7 @@
 int
 GetIntegerForKey(char *defaultName)
 {
-    proplist_t val;
+    WMPropList *val;
     char *str;
     int value;
 
@@ -134,10 +134,10 @@
     if (!val)
 	return 0;
 
-    if (!PLIsString(val))
+    if (!WMIsPLString(val))
 	return 0;
     
-    str = PLGetString(val);
+    str = WMGetFromPLString(val);
     if (!str)
 	return 0;
     
@@ -175,14 +175,14 @@
 void
 SetIntegerForKey(int value, char *defaultName)
 {
-    proplist_t object;
+    WMPropList *object;
     char buffer[128];
 
     sprintf(buffer, "%i", value);
-    object = PLMakeString(buffer);
+    object = WMCreatePLString(buffer);
  
     SetObjectForKey(object, defaultName);
-    PLRelease(object);
+    WMReleasePropList(object);
 }
 
 
@@ -190,23 +190,23 @@
 void
 SetStringForKey(char *value, char *defaultName)
 {
-    proplist_t object;
+    WMPropList *object;
 
-    object = PLMakeString(value);
+    object = WMCreatePLString(value);
  
     SetObjectForKey(object, defaultName);
-    PLRelease(object);
+    WMReleasePropList(object);
 }
 
 
 void
 SetBoolForKey(Bool value, char *defaultName)
 {
-    static proplist_t yes = NULL, no = NULL;
+    static WMPropList *yes = NULL, *no = NULL;
 
     if (!yes) {
-	yes = PLMakeString("YES");
-	no = PLMakeString("NO");
+	yes = WMCreatePLString("YES");
+	no = WMCreatePLString("NO");
     }
 
     SetObjectForKey(value ? yes : no, defaultName);
--- wsoundprefs-1.1.1.orig/src/PLFunctions.h
+++ wsoundprefs-1.1.1/src/PLFunctions.h
@@ -35,12 +35,12 @@
 #include <stdio.h>
 #include <string.h>
 
-#include <proplist.h>
+#include <WINGs/WINGs.h>
 
 
-proplist_t GetObjectForKey(char *defaultName);
+WMPropList *GetObjectForKey(char *defaultName);
 
-void SetObjectForKey(proplist_t object, char *defaultName);
+void SetObjectForKey(WMPropList *object, char *defaultName);
 
 void RemoveObjectForKey(char *defaultName);
 
--- wsoundprefs-1.1.1.orig/src/SoundEvents.c
+++ wsoundprefs-1.1.1/src/SoundEvents.c
@@ -50,7 +50,7 @@
 	NULL
 };
 
-extern proplist_t WMSoundDomain;
+extern WMPropList *WMSoundDomain;
 
 static char* expandSoundPath (WMWidget *w, void *data, char* file);
 static char* getPathFromName (char *name);
@@ -159,6 +159,7 @@
 	
 	text = WMGetTextFieldText(panel->sndfileT);
 	
+	if (!strcmp((char *)text, "") == 0) {
 	soundfile = expandSoundPath(w, data, text);
 	if ((SPlaySound(soundfile) == -1)) {
 		if (SErrorCode == SERR_NOSERVER) {
@@ -169,13 +170,14 @@
 				swarning(SMessageForError(SErrorCode));
 
 			WMSoundDBLoaded = False;
-			PLRelease(WMSoundDB);
+			WMReleasePropList(WMSoundDB);
 		}
 		else
 			swarning(SMessageForError(SErrorCode));
 	}
 
 	free(soundfile);
+	}
 }
 
 void
@@ -195,9 +197,9 @@
 	char		path[PATH_MAX] = "\0";
 	char		*spath = NULL;
 	
-	WMSetButtonEnabled(panel->sndbrowseB, NO);
-	WMSetButtonEnabled(panel->sndsetloadB, NO);
-	WMSetButtonEnabled(panel->sndsetsaveB, NO);
+	WMSetButtonEnabled(panel->sndbrowseB, False);
+	WMSetButtonEnabled(panel->sndsetloadB, False);
+	WMSetButtonEnabled(panel->sndsetsaveB, False);
 	
 	if ((strcmp(panel->lastBrowseDir,"\0") == 0)) {
 		strcpy(path, wexpandpath("~/GNUstep/Library/WindowMaker/Sounds"));
@@ -210,8 +212,8 @@
 	}
 	
 	browseP = WMGetOpenPanel(WMWidgetScreen(w));
-	WMSetFilePanelCanChooseDirectories(browseP, NO);
-	WMSetFilePanelCanChooseFiles(browseP, YES);
+	WMSetFilePanelCanChooseDirectories(browseP, False);
+	WMSetFilePanelCanChooseFiles(browseP, True);
 	if (WMRunModalFilePanelForDirectory(browseP, panel->win, spath , NULL, NULL)) {
 		char *filename;
 		filename = WMGetFilePanelFileName(browseP);
@@ -223,9 +225,9 @@
 	}
 	WMFreeFilePanel(browseP);
 
-	WMSetButtonEnabled(panel->sndbrowseB, YES);
-	WMSetButtonEnabled(panel->sndsetloadB, YES);
-	WMSetButtonEnabled(panel->sndsetsaveB, YES);
+	WMSetButtonEnabled(panel->sndbrowseB, True);
+	WMSetButtonEnabled(panel->sndsetloadB, True);
+	WMSetButtonEnabled(panel->sndsetsaveB, True);
 	free(spath);
 }
 
@@ -234,13 +236,13 @@
 {
 	Panel		*panel = (Panel*)data;
 	WMOpenPanel	*loadP;
-	proplist_t	newset;
+	WMPropList	*newset;
 	char		path[PATH_MAX] = "\0";
 	char		*spath = NULL;
 	
-	WMSetButtonEnabled(panel->sndsetloadB, NO);
-	WMSetButtonEnabled(panel->sndbrowseB, NO);
-	WMSetButtonEnabled(panel->sndsetsaveB, NO);
+	WMSetButtonEnabled(panel->sndsetloadB, False);
+	WMSetButtonEnabled(panel->sndbrowseB, False);
+	WMSetButtonEnabled(panel->sndsetsaveB, False);
 	
 	if ((strcmp(panel->lastLoadDir,"\0") == 0)) {
 		strcpy(path, wexpandpath("~/GNUstep/Library/WindowMaker/SoundSets"));
@@ -253,30 +255,30 @@
 	}
 	
 	loadP = WMGetOpenPanel(WMWidgetScreen(w));
-	WMSetFilePanelCanChooseDirectories(loadP, NO);
-	WMSetFilePanelCanChooseFiles(loadP, YES);
+	WMSetFilePanelCanChooseDirectories(loadP, False);
+	WMSetFilePanelCanChooseFiles(loadP, True);
 	if (WMRunModalFilePanelForDirectory(loadP, panel->win, spath , NULL, NULL)) {
 		char *filename;
 		filename = WMGetFilePanelFileName(loadP);
 		
 		strcpy(panel->lastLoadDir,(getPathFromName(filename)));
-		newset = PLGetProplistWithPath(filename);
+		newset = WMReadPropListFromFile(filename);
 		
 		if(!newset)
 			WMRunAlertPanel(WMWidgetScreen(w), panel->win, _("Error"),
 					_("Could not load specified SoundSet"), _("OK"), NULL, NULL);
 		else {
-			PLMergeDictionaries(WMSoundDomain,newset);
+			WMMergePLDictionaries(WMSoundDomain, newset, False);
 			WMSetTextFieldText(panel->sndfileT, GetStringForKey(eventkey[WMGetPopUpButtonSelectedItem(panel->sndevntP)]));
 		}
-		PLRelease(newset);
+		WMReleasePropList(newset);
 		free(filename);
 	}
 	WMFreeFilePanel(loadP);
 	
-	WMSetButtonEnabled(panel->sndsetloadB, YES);
-	WMSetButtonEnabled(panel->sndbrowseB, YES);
-	WMSetButtonEnabled(panel->sndsetsaveB, YES);
+	WMSetButtonEnabled(panel->sndsetloadB, True);
+	WMSetButtonEnabled(panel->sndbrowseB, True);
+	WMSetButtonEnabled(panel->sndsetsaveB, True);
 	
 	free(spath);
 }
@@ -286,15 +288,15 @@
 {
 	Panel		*panel = (Panel*)data;
 	WMSavePanel	*saveP;
-	proplist_t	newset, key, val;
+	WMPropList	*newset, *key, *val;
 	char		path[PATH_MAX] = "\0";
 	char		*spath = NULL;
 	FILE		*file;
 	int		i;
 	
-	WMSetButtonEnabled(panel->sndbrowseB, NO);
-	WMSetButtonEnabled(panel->sndsetloadB, NO);
-	WMSetButtonEnabled(panel->sndsetsaveB, NO);
+	WMSetButtonEnabled(panel->sndbrowseB, False);
+	WMSetButtonEnabled(panel->sndsetloadB, False);
+	WMSetButtonEnabled(panel->sndsetsaveB, False);
 	
 	if ((strcmp(panel->lastSaveDir,"\0") == 0)) {
 		strcpy(path, wexpandpath("~/GNUstep/Library/WindowMaker/SoundSets"));
@@ -307,8 +309,8 @@
 	}
 	
 	saveP = WMGetSavePanel(WMWidgetScreen(w));
-	WMSetFilePanelCanChooseDirectories(saveP, NO);
-	WMSetFilePanelCanChooseFiles(saveP, YES);
+	WMSetFilePanelCanChooseDirectories(saveP, False);
+	WMSetFilePanelCanChooseFiles(saveP, True);
 	if (WMRunModalFilePanelForDirectory(saveP, panel->win, spath , NULL, NULL)) {
 		char *filename = NULL;
 		filename = WMGetFilePanelFileName(saveP);
@@ -316,17 +318,19 @@
 		
 		file = fopen (filename, "w+");
 		if (file) {
-			newset = PLMakeDictionaryFromEntries(NULL,NULL,NULL);
+			newset = WMCreatePLDictionary(NULL,NULL,NULL);
+			key = NULL;
 			
 			for(i=0;eventkey[i]!="UserDefined";i++) {
-				key = PLMakeString(eventkey[i]);
-				val = PLGetDictionaryEntry(WMSoundDomain,key);
-				if(val) PLInsertDictionaryEntry(newset,key,val);
+				key = WMCreatePLString(eventkey[i]);
+				val = WMGetFromPLDictionary(WMSoundDomain,key);
+				if(val) WMPutInPLDictionary(newset,key,val);
 			}
-			PLRelease(key);
+			if (key)
+				WMReleasePropList(key);
 			
-			fprintf (file, PLGetDescriptionIndent(newset,0));
-			PLRelease(newset);
+			fprintf (file, WMGetPropListDescription(newset,0));
+			WMReleasePropList(newset);
 			fclose (file);
 		}
 		else
@@ -337,9 +341,9 @@
 	}
 	WMFreeFilePanel(saveP);
 	
-	WMSetButtonEnabled(panel->sndbrowseB, YES);
-	WMSetButtonEnabled(panel->sndsetloadB, YES);
-	WMSetButtonEnabled(panel->sndsetsaveB, YES);
+	WMSetButtonEnabled(panel->sndbrowseB, True);
+	WMSetButtonEnabled(panel->sndsetloadB, True);
+	WMSetButtonEnabled(panel->sndsetsaveB, True);
 	free(spath);
 }
 
@@ -352,11 +356,10 @@
 expandSoundPath (WMWidget *w, void *data, char* file)
 {
 	Panel *panel = (Panel*)data;
-	proplist_t array, val;
+	WMPropList *array, *val;
 	int nr_elem;
 	int i = 0;
 	char *path;
-	char *tmp;
 	
 	assert(file!=NULL);
 	
@@ -365,22 +368,15 @@
 	}
 	
 	array = GetObjectForKey("SoundPath");
-	nr_elem = PLGetNumberOfElements(array);
+	nr_elem = WMGetPropListItemCount(array);
 	
 	while (i < nr_elem) {
-		val = PLGetArrayElement(array, i);
-		path = wexpandpath(PLGetString(val));
+		val = WMGetFromPLArray(array, i);
+		path = wexpandpath(WMGetFromPLString(val));
 		
-		if ((path+strlen(path)-1) != "/") {
-			tmp = wstrappend(path, "/");
-			if (path)
-				free(path);
-			path = tmp;
-		}
-		tmp = wstrappend(path, file);
-		if (path)
-			free(path);
-		path = tmp;
+		if ((path+strlen(path)-1) != "/")
+			path = wstrappend(path, "/");
+		path = wstrappend(path, file);
 		
 		if (access(path, F_OK) == 0) {
 #ifdef DEBUG
@@ -422,7 +418,7 @@
 static char*
 checkSoundPath(char* file)
 {
-	proplist_t	array, val;
+	WMPropList	*array, *val;
 	int		nr_elem;
 	int		i = 0;
 	char		*path;
@@ -431,11 +427,11 @@
 	assert(file!=NULL);
 	
 	array = GetObjectForKey("SoundPath");
-	nr_elem = PLGetNumberOfElements(array);
+	nr_elem = WMGetPropListItemCount(array);
 	
 	while (i < nr_elem) {
-		val = PLGetArrayElement(array, i);
-		path = wexpandpath(PLGetString(val));
+		val = WMGetFromPLArray(array, i);
+		path = wexpandpath(WMGetFromPLString(val));
 		
 		if ((path+strlen(path)-1) != "/") {
 			tmp = wstrappend(path, "/");
--- wsoundprefs-1.1.1.orig/src/SoundPaths.c
+++ wsoundprefs-1.1.1/src/SoundPaths.c
@@ -30,7 +30,7 @@
 #include "WSoundPrefs.h"
 #include "SoundPaths.h"
 
-extern proplist_t WMSoundDomain;
+extern WMPropList *WMSoundDomain;
 
 static void addPathToList(WMList *list, int index, char *path);
 
@@ -47,34 +47,39 @@
 	height = rect->size.height;
 	x = rect->pos.x;
 	y = rect->pos.y;
+
+	if (!(panel->font)) {
+		printf("Fooo!\n");
+		panel->font = WMDefaultSystemFont(scr);
+	}
 	
 	if (state & WLDSSelected)
 		XFillRectangle(dpy, d, WMColorGC(panel->white), x, y, width, height);
 	else
-		XClearArea(dpy, d, x, y, width, height, False);
+		XFillRectangle(dpy, d, WMColorGC(WMGrayColor(scr)), x, y, width, height);
 
 	if (state & 1)
-		WMDrawString(scr, d, WMColorGC(panel->red), panel->font, x+4, y, text, strlen(text));
+		WMDrawString(scr, d, panel->red, panel->font, x+4, y, text, strlen(text));
 	else
-		WMDrawString(scr, d, WMColorGC(panel->black), panel->font, x+4, y,text, strlen(text));
+		WMDrawString(scr, d, panel->black, panel->font, x+4, y,text, strlen(text));
 }
 
 void
 setSoundPathData(Panel *panel)
 {
-	proplist_t	array, val;
+	WMPropList	*array, *val;
 	int		i;
 	
 	array = GetObjectForKey("SoundPath");
-	if (!array || !PLIsArray(array)) {
+	if (!array || !WMIsPLArray(array)) {
 		if (array)
 			wwarning(_("bad value in option SoundPath. Using default path list"));
 		addPathToList(panel->sndL, -1, "~/GNUstep/Library/WindowMaker/Sounds");
-		addPathToList(panel->sndL, -1, "/usr/local/share/WindowMaker/Sounds");
+		addPathToList(panel->sndL, -1, "/usr/share/WindowMaker/Sounds");
 	} else {
-		for (i=0; i<PLGetNumberOfElements(array); i++) {
-			val = PLGetArrayElement(array, i);
-			addPathToList(panel->sndL, -1, PLGetString(val));
+		for (i=0; i<WMGetPropListItemCount(array); i++) {
+			val = WMGetFromPLArray(array, i);
+			addPathToList(panel->sndL, -1, WMGetFromPLString(val));
 		}
 	}
 }
@@ -82,19 +87,19 @@
 void
 setSoundSetPathData(Panel *panel)
 {
-	proplist_t	array, val;
+	WMPropList	*array, *val;
 	int		i;
 	
 	array = GetObjectForKey("SoundSetPath");
-	if (!array || !PLIsArray(array)) {
+	if (!array || !WMIsPLArray(array)) {
 		if (array)
 			wwarning(_("bad value in option SoundSetPath. Using default path list"));
 		addPathToList(panel->sndsetL, -1, "~/GNUstep/Library/WindowMaker/SoundSets");
-		addPathToList(panel->sndsetL, -1, "/usr/local/share/WindowMaker/SoundSets");
+		addPathToList(panel->sndsetL, -1, "/usr/share/WindowMaker/SoundSets");
 	} else {
-		for (i=0; i<PLGetNumberOfElements(array); i++) {
-			val = PLGetArrayElement(array, i);
-			addPathToList(panel->sndsetL, -1, PLGetString(val));
+		for (i=0; i<WMGetPropListItemCount(array); i++) {
+			val = WMGetFromPLArray(array, i);
+			addPathToList(panel->sndsetL, -1, WMGetFromPLString(val));
 		}
 	}
 }
@@ -140,7 +145,7 @@
 				
 				if (w == panel->sndaB)
 					lPtr = panel->sndL;
-				else if (w == panel->sndsetaB)
+				else //if (w == panel->sndsetaB)
 					lPtr = panel->sndsetL;
 				
 				i = WMGetListSelectedItemRow(lPtr);
--- wsoundprefs-1.1.1.orig/src/SystemInfo.c
+++ wsoundprefs-1.1.1/src/SystemInfo.c
@@ -32,8 +32,6 @@
 #include <sys/types.h>
 #include <sys/utsname.h>
 #include <pwd.h>
-#include <WINGs.h>
-#include <WUtil.h>
 
 #include "WSoundPrefs.h"
 #include "SystemInfo.h"
--- wsoundprefs-1.1.1.orig/src/WSoundPrefs.c
+++ wsoundprefs-1.1.1/src/WSoundPrefs.c
@@ -40,7 +40,7 @@
 char*	locateImage(char *name);
 Bool	isFormatSupported(char *format);
 
-proplist_t WMSoundDomain = NULL;
+WMPropList *WMSoundDomain = NULL;
 
 /* ------------------------------------------------------------------------- */
 
@@ -48,7 +48,7 @@
 quit(WMWidget *w, void *data)
 {
 	if (WMSoundDomain)
-		PLRelease(WMSoundDomain);
+		WMReleasePropList(WMSoundDomain);
 
 	exit(0);
 }
@@ -57,28 +57,30 @@
 save(WMWidget *w, void *data)
 {
 	Panel		*panel = WMGetHangedData(w);
-	proplist_t	list;
-	proplist_t	tmp;
+	WMPropList	*list;
+	WMPropList	*tmp;
 	int		i;
 	char		*p;
 	
-	list = PLMakeArrayFromElements(NULL, NULL);
+	list = WMCreatePLArray(NULL, NULL);
 	for (i = 0; i < WMGetListNumberOfRows(panel->sndL); i++) {
 		p = WMGetListItem(panel->sndL, i)->text;
-		tmp = PLMakeString(p);
-		PLAppendArrayElement(list, tmp);
+		tmp = WMCreatePLString(p);
+		WMAddToPLArray(list, tmp);
 	}
 	SetObjectForKey(list, "SoundPath");
 	
-	list = PLMakeArrayFromElements(NULL, NULL);
+	list = WMCreatePLArray(NULL, NULL);
 	for (i = 0; i < WMGetListNumberOfRows(panel->sndsetL); i++) {
 		p = WMGetListItem(panel->sndsetL, i)->text;
-		tmp = PLMakeString(p);
-		PLAppendArrayElement(list, tmp);
+		tmp = WMCreatePLString(p);
+		WMAddToPLArray(list, tmp);
 	}
 	SetObjectForKey(list, "SoundSetPath");
 
-	PLSave(WMSoundDomain, YES);
+	p = wdefaultspathfordomain("WMSound");
+	WMWritePropListToFile(WMSoundDomain, p, True);
+	free(p);
 }
 
 void
@@ -124,7 +126,7 @@
 	/* Main Window */
 	panel->win = WMCreateWindow(scr, "wsoundprefs");
 	WMResizeWidget(panel->win, 482, 268);
-	WMSetWindowTitle(panel->win, _("WMSound Server Preferences"));
+	WMSetWindowTitle(panel->win, _("WSoundServer Preferences"));
 	WMSetWindowCloseAction(panel->win, quit, NULL);
 	WMSetWindowMaxSize(panel->win, 482, 268);
 	WMSetWindowMinSize(panel->win, 482, 268);
@@ -189,6 +191,7 @@
 		WMResizeWidget(panel->sndevntL, 196, 60);
 		WMMoveWidget(panel->sndevntL, 8, 40);
 		WMSetLabelTextAlignment(panel->sndevntL, WACenter);
+		WMSetLabelWraps (panel->sndevntL, True);
 
 		WMMapSubwidgets(panel->sndevntF);
 		
@@ -269,6 +272,7 @@
 		WMResizeWidget(panel->sndsetsL, 108, 48);
 		WMMoveWidget(panel->sndsetsL, 112, 16);
 		WMSetLabelTextAlignment(panel->sndsetsL, WALeft);
+		WMSetLabelWraps (panel->sndsetsL, True);
 		WMSetLabelText(panel->sndsetsL, _("Load and save an entire soundset."));
 		
 		WMMapSubwidgets(panel->sndsetF);
@@ -290,6 +294,7 @@
 		WMResizeWidget(panel->devL, 212, 54);
 		WMMoveWidget(panel->devL, 8, 44);
 		WMSetLabelTextAlignment(panel->devL, WACenter);
+		WMSetLabelWraps (panel->devL, True);
 		WMSetLabelText(panel->devL, _("Specify the sound device that should be "
 					"used to play the sounds through."));
 		
@@ -378,7 +383,7 @@
 		WMResizeWidget(panel->iconL, 72, 72);
 		WMMoveWidget(panel->iconL, 82, 10);
 		WMSetLabelImagePosition(panel->iconL, WIPImageOnly);
-		WMSetLabelImage(panel->iconL, WMGetApplicationIconImage(scr));
+		WMSetLabelImage(panel->iconL, WMGetApplicationIconPixmap(scr));
 		
 		/* Title */
 		panel->titleL = WMCreateLabel(panel->aboutF);
@@ -386,7 +391,7 @@
 		WMMoveWidget(panel->titleL, 150, 32);
 		WMSetLabelText(panel->titleL, _("WSoundPrefs"));
 		WMSetLabelTextAlignment(panel->titleL, WACenter);
-		font = WMCreateFont(scr, "-*-lucidabright-medium-r-normal-*-*-250-100-100-*-*-*-*");
+		font = WMCreateFont(scr, "FreeSerif-25");
 		if (!font)
 			font = WMBoldSystemFontOfSize(scr, 24);
 		WMSetLabelFont(panel->titleL, font);
@@ -407,15 +412,8 @@
 		WMResizeWidget(panel->copyrightL, 448, 20);
 		WMMoveWidget(panel->copyrightL, 8, 178);
 		WMSetLabelTextAlignment(panel->copyrightL, WACenter);
-		font = WMCreateNormalFont(scr, "-*-helvetica-medium-r-normal-*-10-*-*-*-*-*-*-*");
-		if (font)
-			WMSetLabelText(panel->copyrightL, "Copyright \xa9 1999 The Az\xe5rg-r\xfbh");
-		else {
-			font = WMSystemFontOfSize(scr, 10);
-			WMSetLabelText(panel->copyrightL, "Copyright 1999 The Azarg-ruh");
-		}
-		WMSetLabelFont(panel->copyrightL, font);
-		WMReleaseFont(font);
+		WMSetLabelText(panel->copyrightL, "Copyright \xc2\xa9 1999 The Az\xc3\xa5rg-r\xc3\xbbh");
+		WMSetLabelFont(panel->copyrightL, WMSystemFontOfSize(scr, 10));
 		WMSetLabelTextColor(panel->copyrightL, darkgray);
 		WMReleaseColor(darkgray);
 
@@ -502,15 +500,15 @@
 static void
 loadConfigurations(WMScreen *scr, WMWindow *mainw)
 {
-	proplist_t db;
+	WMPropList *db;
 	char *path;
 	char mbuf[1024];
 	
 	path = wdefaultspathfordomain("WMSound");
-	db = PLGetProplistWithPath(path);
+	db = WMReadPropListFromFile(path);
 	if (db) {
-		if (!PLIsDictionary(db)) {
-			PLRelease(db);
+		if (!WMIsPLDictionary(db)) {
+			WMReleasePropList(db);
 			db = NULL;
 			sprintf(mbuf, _("WMSound domain (%s) is corrupted!"), path);
 			WMRunAlertPanel(scr, mainw, _("Error"), mbuf, _("OK"), NULL, NULL);
@@ -522,7 +520,7 @@
 	free(path);
 	
 	if (!db) {
-		db = PLMakeDictionaryFromEntries(NULL, NULL, NULL);
+		db = WMCreatePLDictionary(NULL, NULL, NULL);
 	}
 	
 	WMSoundDomain = db;
--- wsoundprefs-1.1.1.orig/src/WSoundPrefs.h
+++ wsoundprefs-1.1.1/src/WSoundPrefs.h
@@ -38,20 +38,17 @@
 
 #include <X11/Xlib.h>
 
-#include <proplist.h>
-
 #include <wraster.h>
 
-#include <WINGs.h>
-#include <WUtil.h>
+#include <WINGs/WINGs.h>
+#include <WINGs/WUtil.h>
 
 #include <wsound.h>
 
 #include "PLFunctions.h"
 
 #define WVERSION        "1.1.1"
-#define WMVERSION       "0.6x.x"
-
+#define WMVERSION       "0.7x.x"
 
 /* 
  * Needed for HAVE_LIBINTL_H
--- wsoundprefs-1.1.1.orig/src/main.c
+++ wsoundprefs-1.1.1/src/main.c
@@ -109,9 +109,9 @@
 			wwarning(_("could not load image file %s:%s"), path, RMessageForError(RErrorCode));
 		else {
 			icon = WMCreatePixmapFromRImage(scr, tmp, 0);
-			RDestroyImage(tmp);
+			RReleaseImage(tmp);
 			if (icon) {
-				WMSetApplicationIconImage(scr, icon);
+				WMSetApplicationIconPixmap(scr, icon);
 				WMReleasePixmap(icon);
 			}
 		}
--- wsoundprefs-1.1.1.orig/src/xpm/Imakefile
+++ wsoundprefs-1.1.1/src/xpm/Imakefile
@@ -1,4 +1,5 @@
-XPMDIR = /Apps/WSoundPrefs.app/xpm/
+APPDIR = /usr/lib/GNUstep/Applications/WSoundPrefs.app
+XPMDIR = $(APPDIR)/xpm/
 
 XPMS = loadset.xpm saveset.xpm
 
--- wsoundprefs-1.1.1.orig/src/foo
+++ wsoundprefs-1.1.1/src/foo
@@ -0,0 +1 @@
+Ã»
--- wsoundprefs-1.1.1.orig/src/WSoundPrefs.man
+++ wsoundprefs-1.1.1/src/WSoundPrefs.man
@@ -0,0 +1,24 @@
+.TH WSOUNDPREFS 1x "October 1999" "Debian Project" "WSoundPrefs"
+.SH NAME
+WSoundPrefs \- preferences editor for the Window Maker sound server
+.SH SYNOPSIS
+.B WSoundPrefs
+[-display <display>] [--version]
+.SH DESCRIPTION
+.BR WSoundPrefs
+is a WPrefs look-alike. It can be used to customize the sounds
+Window Maker uses for different events, as well as editing sound sets.
+.SH OPTIONS
+.TP
+.B \-display <display>
+use another display
+.TP
+.B \-\-version
+display version and exit
+.SH SEE ALSO
+.BR wmaker (1),
+.BR wsoundserver (1).
+.SH AUTHOR
+WSoundPrefs was written by Pascal Hofstee <daeron@shadowmere.student.utwente.nl>.
+.sp
+This manual page was written by Josip Rodin <jrodin@jagor.srce.hr>.
--- wsoundprefs-1.1.1.orig/Imakefile
+++ wsoundprefs-1.1.1/Imakefile
@@ -3,18 +3,16 @@
 
 XCOMM -------------------------------------------------
 XCOMM Specify Your Installation Prefix Here
-XCOMM Installation Path: $(PREFIX)/Apps/WSoundPrefs.app
+XCOMM Installation Path: $(PREFIX)/Applications/WSoundPrefs.app
 XCOMM -------------------------------------------------
 XCOMM PREFIX = /usr/GNUstep/Local
-PREFIX = /usr/local/GNUstep
-
+BINDIR = /usr/bin
+APPDIR = /usr/lib/GNUstep/Applications/WSoundPrefs.app
 
 XCOMM CDEBUGFLAGS = -Wall -ggdb -DDEBUG
-CDEBUGFLAGS ?= -O2 -m486 
+CDEBUGFLAGS ?= -g -O2 -Wall
 
 SUBDIRS = src
 
-DESTDIR = $(PREFIX)
-
 MakeSubdirs($(SUBDIRS))
 DependSubdirs($(SUBDIRS))
--- wsoundprefs-1.1.1.orig/debian/changelog
+++ wsoundprefs-1.1.1/debian/changelog
@@ -0,0 +1,139 @@
+wsoundprefs (1.1.1-9) unstable; urgency=low
+
+  * Kill wsoundserver build-depend, it's redundant.
+
+ -- Jeff Teunissen <deek@d2dc.net>  Sat,  4 Dec 2004 08:12:00 -0500
+
+wsoundprefs (1.1.1-8) unstable; urgency=low
+
+  * Add libxft-dev to Build-Depends. (Closes: Bug#284084)
+
+ -- Jeff Teunissen <deek@d2dc.net>  Sat,  4 Dec 2004 07:31:35 -0500
+
+wsoundprefs (1.1.1-7) unstable; urgency=low
+
+  * Update to libwraster3, new WINGs. (Closes: Bug#282285)
+  * Move app package to new location, create symlink to binary
+
+ -- Jeff Teunissen <deek@d2dc.net>  Sat, 27 Nov 2004 17:48:34 -0500
+
+wsoundprefs (1.1.1-6) unstable; urgency=low
+
+  * Re-upload to handle new libwraster.
+
+ -- Jeff Teunissen <deek@d2dc.net>  Wed, 29 Jan 2003 10:05:11 -0500
+
+wsoundprefs (1.1.1-5) unstable; urgency=low
+
+  * Update Build-Depends and cope with the new (0.80) libWUtil property
+    list APIs (Closes: Bug#134906)
+
+ -- Jeff Teunissen <deek@d2dc.net>  Wed, 20 Feb 2002 17:16:46 -0500
+
+wsoundprefs (1.1.1-4) unstable; urgency=low
+
+  * Update Standards-Version to 3.5.6
+  * Nuke dependency on libproplist - we're using WINGs now
+  * Use (and build-depend on) debhelper 3
+  * Fix segfault in playing sounds (Closes: Bug#115132)
+  * Update some calls for libwraster2 >= 0.65.1
+  * Make label text wrap properly to cope with WINGs >= 0.65.0
+
+ -- Jeff Teunissen <deek@d2dc.net>  Sat, 13 Oct 2001 05:13:06 -0400
+
+wsoundprefs (1.1.1-3) unstable; urgency=low
+
+  * New maintainer.
+
+ -- Jeff Teunissen <deek@dusknet.dhs.org>  Sat, 24 Mar 2001 08:33:24 -0500
+
+wsoundprefs (1.1.1-2) unstable; urgency=low
+
+  * Updated the build-dependency on libwraster2-dev, closes: #87019.
+  * Added build-dep on xutils because of xmkmf, and replaced
+    xlib6g-dev and libxpm4-dev build-deps with just xlibs-dev.
+  * Uses `get-wutil-flags --cflags` now.
+  * Modified headers to search for libwings-dev's header files under WINGs/.
+  * Standards-Version: 3.5.0.
+
+ -- Josip Rodin <jrodin@jagor.srce.hr>  Sat, 24 Feb 2001 19:41:34 +0100
+
+wsoundprefs (1.1.1-1) unstable; urgency=low
+
+  * New upstream version.
+  * Fixed src/SoundEvents.c not to play anything if the text field is empty.
+  * Updated to Policy 3.2.1:
+    + added DEB_BUILD_OPTIONS checks to debian/rules
+    + moved files out of /usr/X11R6
+    + updated Build-Depends: field
+
+ -- Josip Rodin <jrodin@jagor.srce.hr>  Wed, 13 Sep 2000 19:15:06 +0200
+
+wsoundprefs (1.1.0-3) unstable; urgency=low
+
+  * Updated upstream build system (Imakefiles) to install in proper
+    directories. Wrote WSoundPrefs(1x), installed it.
+  * Patched src/SoundPaths.c to look under /usr/share directory.
+  * Updated packaging... this Build-Depends: is vast :)
+
+ -- Josip Rodin <jrodin@jagor.srce.hr>  Thu, 21 Oct 1999 00:01:55 +0200
+
+wsoundprefs (1.1.0-2) unstable; urgency=low
+
+  * New maintainer.
+  * Updated for Policy 3.x.
+  * Included contents of COPYING file in copyright.
+  * Removed INSTALL from binary package, useless.
+  * Removed hardcoded wsoundserver dependency, it's autodetected nowadays.
+
+ -- Josip Rodin <jrodin@jagor.srce.hr>  Thu, 30 Sep 1999 14:44:42 +0200
+
+wsoundprefs (1.1.0-1) unstable; urgency=low
+
+  * New upstream version
+  * debian/control: now depends on wsoundserver
+
+ -- Marcelo E. Magallon <mmagallo@debian.org>  Mon,  5 Jul 1999 05:48:00 -0600
+
+wsoundprefs (1.0.1-1) unstable; urgency=low
+
+  * New upstream version.
+
+ -- Marcelo E. Magallon <mmagallo@debian.org>  Sat, 19 Jun 1999 07:27:45 -0600
+
+wsoundprefs (1.0.0-2) unstable; urgency=low
+
+  * debian/copyright: updated.  Read about the license change, but forgot
+    to update this file.  WSoundPrefs is now distributed under a BSD
+    license (BSD sans advertising clause).
+  * debian/rules: installs COPYING in /usr/doc/wsoundprefs.
+
+ -- Marcelo E. Magallon <mmagallo@debian.org>  Sat,  5 Jun 1999 15:00:55 -0600
+
+wsoundprefs (1.0.0-1) unstable; urgency=low
+
+  * New upstream version (requieres libwraster1-dev >= 0.60.0 to compile)
+
+ -- Marcelo E. Magallon <mmagallo@debian.org>  Sat,  5 Jun 1999 07:23:43 -0600
+
+wsoundprefs (0.9.3-2) unstable; urgency=low
+
+  * Imakefile: removed -O6 -m486 from compiler flags. (Sorry!)
+
+ -- Marcelo E. Magallon <mmagallo@debian.org>  Tue, 16 Mar 1999 22:10:09 -0600
+
+wsoundprefs (0.9.3-1) unstable; urgency=low
+
+  * New upstream version
+
+ -- Marcelo E. Magallon <mmagallo@efis.ucr.ac.cr>  Sat, 13 Mar 1999 13:46:45 -0600
+
+wsoundprefs (0.9.1-1) unstable; urgency=low
+
+  * Initial Release.
+
+ -- Marcelo E. Magallon <mmagallo@debian.org>  Sun, 28 Feb 1999 09:32:49 -0600
+
+Local variables:
+mode: debian-changelog
+End:
--- wsoundprefs-1.1.1.orig/debian/wsoundprefs.links
+++ wsoundprefs-1.1.1/debian/wsoundprefs.links
@@ -0,0 +1 @@
+usr/bin/WSoundPrefs usr/lib/GNUstep/Applications/WSoundPrefs.app/WSoundPrefs
--- wsoundprefs-1.1.1.orig/debian/control
+++ wsoundprefs-1.1.1/debian/control
@@ -0,0 +1,15 @@
+Source: wsoundprefs
+Section: sound
+Priority: optional
+Maintainer: Jeff Teunissen <deek@debian.org>
+Build-Depends: debhelper (>= 4), libx11-dev, libxext-dev, libxft-dev, xutils, libwmaker0-dev (>= 0.80), libwings-dev (>= 0.80), libwsound-dev (>= 0.4.0-19), libwraster3-dev
+Standards-Version: 3.5.6
+
+Package: wsoundprefs
+Architecture: any
+Depends: ${shlibs:Depends}
+Suggests: wmaker
+Description: Preferences editor for the Window Maker sound server
+ WSoundPrefs is a WPrefs look-alike.  It can be used to customize
+ the sounds Window Maker uses for different events, as well as
+ editing sound sets.
--- wsoundprefs-1.1.1.orig/debian/copyright
+++ wsoundprefs-1.1.1/debian/copyright
@@ -0,0 +1,30 @@
+This program was first packaged by Marcelo E. Magallon <mmagallo@debian.org>
+on 28 Feb 1999. Current maintainer is Jeff Teunissen <deek@debian.org>.
+
+Original source can be fount at:
+	ftp://shadowmere.student.utwente.nl/pub/WindowMaker/
+
+  Copyright (c) 1998, 1999 Pascal Hofstee
+  All rights reserved.
+
+  Redistribution and use in source and binary forms, with or without
+  modification, are permitted provided that the following conditions
+  are met:
+  1. Redistributions of source code must retain the above copyright
+     notice, this list of conditions and the following disclaimer.
+  2. Redistributions in binary form must reproduce the above copyright
+     notice, this list of conditions and the following disclaimer in the
+     documentation and/or other materials provided with the distribution.
+  3. The name of the author may not be used to endorse or promote products
+     derived from this software without specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+  IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+  INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+  NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--- wsoundprefs-1.1.1.orig/debian/menu
+++ wsoundprefs-1.1.1/debian/menu
@@ -0,0 +1,5 @@
+?package(wsoundprefs): \
+	needs=X11 \
+	section="Apps/Sound" \
+	title="WSoundPrefs" \
+	command="WSoundPrefs"
--- wsoundprefs-1.1.1.orig/debian/rules
+++ wsoundprefs-1.1.1/debian/rules
@@ -0,0 +1,68 @@
+#!/usr/bin/make -f
+# GNU copyright 1999 Marcelo Magallón <mmagallo@debian.org>
+# It was made with the aid of dh_make, by Craig Small.  It's based on
+# sample debian/rules that uses debhelper, GNU copyright 1997 by Joey
+# Hess.  Some lines taken from debmake, by Cristoph Lameter.
+# Later modified by Josip Rodin.
+
+#export DH_VERBOSE=1
+export DH_COMPAT=3
+
+PACKAGE=wsoundprefs
+tmp := $(CURDIR)/debian/$(PACKAGE)
+
+CFLAGS := -O2 -Wall `get-wutil-flags --cflags`
+ifneq "$(findstring debug,$(DEB_BUILD_OPTIONS))" ""
+CFLAGS += -g
+endif
+
+configure: configure-stamp
+configure-stamp:
+	dh_testdir
+	xmkmf -a
+	touch $@
+
+build: configure-stamp build-stamp
+build-stamp:
+	dh_testdir
+	$(MAKE) CDEBUGFLAGS="$(CFLAGS)"
+	touch $@
+
+clean:
+	dh_testdir
+	dh_testroot
+	[ ! -f Makefile ] || $(MAKE) clean
+	dh_clean configure-stamp build-stamp `find -name Makefile`
+
+install: configure-stamp build-stamp
+	dh_testdir
+	dh_testroot
+	dh_clean -k
+	dh_installdirs usr/share/pixmaps
+	$(MAKE) install install.man \
+		DESTDIR=$(tmp) MANPATH=/usr/share/man
+	dh_link
+
+binary-indep:
+# We have no architecture-independent files here.
+
+binary-arch: install
+	dh_testdir
+	dh_testroot
+	dh_installdocs AUTHORS
+	dh_installmenu
+	dh_installchangelogs ChangeLog
+ifeq "$(findstring nostrip,$(DEB_BUILD_OPTIONS))" ""
+	dh_strip
+endif
+	dh_compress
+	dh_fixperms
+	dh_makeshlibs
+	dh_installdeb
+	dh_shlibdeps
+	dh_gencontrol
+	dh_md5sums
+	dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: configure build clean binary-indep binary-arch binary install
