$NetBSD$

--- widget.c.orig	Sun Jul 14 12:49:09 1996
+++ widget.c	Mon Sep 18 17:36:06 2000
@@ -268,7 +268,7 @@
 
 			if (pd->btip[i].acc != NULL) {
 				xs_acc = XmStringCreateSimple(pd->btip[i].acc);
-				XtSetArg(arg[n], XmNaccelerator, xs_acc); n++;
+				XtSetArg(arg[n], XmNaccelerators, xs_acc); n++;
 			}
 
 			if (pd->btip[i].mne != NULL) {
@@ -298,7 +298,7 @@
 	}
 	if (pd->acc != NULL) {
 		xs_acc = XmStringCreateSimple(pd->acc);
-		XtSetArg(arg[n], XmNaccelerator, xs_acc); n++;
+		XtSetArg(arg[n], XmNaccelerators, xs_acc); n++;
 	}
 	if (pd->mne != NULL) {
 		XtSetArg(arg[n], XmNmnemonic, XStringToKeysym(pd->mne)); n++;
@@ -973,6 +973,10 @@
 	delw = XmInternAtom(display, "WM_DELETE_WINDOW", False);
 }
 
+static XtSignalId sigid;
+void deliverSIGIO() {
+	XtNoticeSignal(sigid);
+}
 
 /*
  * register_callbacks
@@ -985,7 +989,7 @@
  *	Nothing
  */
 void
-register_callbacks(widgets_t *m)
+register_callbacks(widgets_t *m, XtAppContext app)
 {
 	int	i;
 
@@ -1126,6 +1130,15 @@
 		XmNfocusCallback,
 		(XtCallbackProc) mx_focuschg, (XtPointer) m->form
 	);
+
+#ifdef __NetBSD__
+	/*
+	 * Mixer SIGIO change callback
+	 */
+	sigid = XtAppAddSignal(app,
+		(XtSignalCallbackProc) mx_change, (XtPointer) 0
+	);
+#endif
 
 	/*
 	 * Install WM_DELETE_WINDOW handler
