Thanks for the response Victor, heres what the code for the right click looks like:

Code:
void MyProject::OnRclickHistList(NMHDR* pNMHDR, LRESULT* pResult) 
{

	DWORD dwPos = GetMessagePos();
	CPoint pt( GET_X_LPARAM( dwPos ), GET_Y_LPARAM( dwPos ) ), spt;
	spt = pt;
	ScreenToClient( &spt );

	//Check if list is empty
	if( GetItemCount() == 0 )
		iMenuType = 0;
	//list not empty but no item clicked
	//check if any item was clicked
	//fill up LVHITTESTINFO and call SubItemHitTest
	LVHITTESTINFO test;
	test.pt		= pt;
	test.flags	= LVHT_ONITEM ;

	int retval	= SubItemHitTest(&test);

	*pResult = 0;
}
the trouble is that retval is always -1 regardless of whether i click on any item on the list or outside it.

Another issue iam facing is that first row of the list control doesn't respond to any Events. I have NM_DBLCLICK and NM_RCLICK message maps, but nothing works on the first row.