GME  13
HooverListBox.cpp
Go to the documentation of this file.
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 }