[comp.lang.c++] XView with C++

brad@sqwest.sq.com (Brad Might) (03/23/90)

we are using c++ and xview.

what we have done for notifier procs is to make the 
proc a static function rather than a method.

we store our object as CLIENT_DATA which the
notifier proc uses when it gets called.

roughly:
// this is all c++ in the same file
// example is a button item on a panel
static void buttonNotifyProc(Panel_item item, Event *)
{
	((Button *)xv_get(item, PANEL_CLIENT_DATA))->pushed();
}
// button constructor
Button::Button()
{
	xv_create(Panel, PANEL_BUTTON,
		PANEL_LABEL_STRING,	label,
		PANEL_CLIENT_DATA,	this,
		PANEL_NOTIFY_PROC,	buttonNotifyProc,
		0);
}

void Button::pushed()
{
	// do whatever !!!
}
-- 
Brad Might					brad@sq.com 
SoftQuad Inc.					utzoo!sq!brad
(604) 585-1999					
Not responsible for any warranties explicit or implied.