GME
13
|
00001 // HooverListBox.cpp : implementation file 00002 // 00003 00004 #include "stdafx.h" 00005 #include "objectinspector.h" 00006 #include "HooverListBox.h" 00007 #include "InspectorDefs.h" 00008 00009 #ifdef _DEBUG 00010 #define new DEBUG_NEW 00011 #undef THIS_FILE 00012 static char THIS_FILE[] = __FILE__; 00013 #endif 00014 00016 // CHooverListBox 00017 00018 CHooverListBox::CHooverListBox() 00019 { 00020 } 00021 00022 CHooverListBox::~CHooverListBox() 00023 { 00024 } 00025 00026 00027 BEGIN_MESSAGE_MAP(CHooverListBox, CListBox) 00028 //{{AFX_MSG_MAP(CHooverListBox) 00029 ON_WM_MOUSEMOVE() 00030 ON_WM_KILLFOCUS() 00031 ON_CONTROL_REFLECT(LBN_SELCHANGE, OnSelChange) 00032 //}}AFX_MSG_MAP 00033 END_MESSAGE_MAP() 00034 00036 // CHooverListBox message handlers 00037 00038 void CHooverListBox::OnMouseMove(UINT nFlags, CPoint point) 00039 { 00040 BOOL bOutside; 00041 UINT uIndex=ItemFromPoint(point,bOutside); 00042 if(!bOutside) 00043 { 00044 if((int)uIndex!=GetCurSel()) 00045 { 00046 SetCurSel(uIndex); 00047 } 00048 } 00049 00050 CListBox::OnMouseMove(nFlags, point); 00051 } 00052 00053 void CHooverListBox::OnKillFocus(CWnd* pNewWnd) 00054 { 00055 CString strWndText; 00056 if(pNewWnd) 00057 { 00058 pNewWnd->GetWindowText(strWndText); 00059 if(strWndText==_T("ArrowButton")) 00060 { 00061 GetParent()->SetFocus(); 00062 } 00063 } 00064 CListBox::OnKillFocus(pNewWnd); 00065 00066 ShowWindow(SW_HIDE); 00067 } 00068 00069 00070 void CHooverListBox::OnSelChange() 00071 { 00072 ShowWindow(SW_HIDE); 00073 int nSelIndex=GetCurSel(); 00074 if(nSelIndex!=LB_ERR) 00075 { 00076 GetParent()->SendMessage(HLB_SELENDOK,nSelIndex,0); 00077 } 00078 }