1 // DGStat.cpp : implementation file
\r
5 #include "stereogr.h"
\r
9 #define new DEBUG_NEW
\r
11 static char THIS_FILE[] = __FILE__;
\r
14 /////////////////////////////////////////////////////////////////////////////
\r
15 // CDGStat property page
\r
17 IMPLEMENT_DYNCREATE(CDGStat, CPropertyPage)
\r
19 CDGStat::CDGStat() : CPropertyPage(CDGStat::IDD)
\r
21 //{{AFX_DATA_INIT(CDGStat)
\r
22 // NOTE: the ClassWizard will add member initialization here
\r
30 void CDGStat::DoDataExchange(CDataExchange* pDX)
\r
32 CPropertyPage::DoDataExchange(pDX);
\r
33 //{{AFX_DATA_MAP(CDGStat)
\r
34 DDX_Control(pDX, IDC_DGSTAT_LIST, m_name_list);
\r
39 BEGIN_MESSAGE_MAP(CDGStat, CPropertyPage)
\r
40 //{{AFX_MSG_MAP(CDGStat)
\r
41 ON_LBN_SELCHANGE(IDC_DGSTAT_LIST, OnSelchangeDgstatList)
\r
42 ON_BN_CLICKED(IDC_DELETE_DG, OnDeleteDg)
\r
46 /////////////////////////////////////////////////////////////////////////////
\r
47 // CDGStat message handlers
\r
49 void CDGStat::OnSelchangeDgstatList()
\r
51 CStereoGRApp* app = (CStereoGRApp*)AfxGetApp();
\r
52 CDynGestServer& server = app->m_dgServer;
\r
54 if ( m_name_list.GetCurSel() >= 0 )
\r
57 m_name_list.GetText(m_name_list.GetCurSel(), name );
\r
59 CDynGesture* gesture = server.FindGesture( name );
\r
63 str.Format( "%d", gesture->GetSeqNumber() );
\r
64 GetDlgItem( IDC_DGSTAT_NUMSEQ )->SetWindowText(str);
\r
66 str.Format( "%s", gesture->m_trained ? "YES" : "NO" );
\r
67 GetDlgItem( IDC_DGSTAT_TRAINED )->SetWindowText(str);
\r
72 GetDlgItem( IDC_DGSTAT_NUMSEQ )->SetWindowText("");
\r
73 GetDlgItem( IDC_DGSTAT_TRAINED )->SetWindowText("");
\r
75 // TODO: Add your control notification handler code here
\r
78 BOOL CDGStat::OnInitDialog()
\r
80 CPropertyPage::OnInitDialog();
\r
83 return TRUE; // return TRUE unless you set the focus to a control
\r
84 // EXCEPTION: OCX Property Pages should return FALSE
\r
87 void CDGStat::OnDeleteDg()
\r
89 CStereoGRApp* app = (CStereoGRApp*)AfxGetApp();
\r
90 CDynGestServer& server = app->m_dgServer;
\r
92 if ( m_name_list.GetCurSel() >= 0 )
\r
95 m_name_list.GetText(m_name_list.GetCurSel(), name );
\r
97 if ( server.RemoveGesture( name ) )
\r
99 m_name_list.DeleteString( m_name_list.GetCurSel() );
\r
101 m_name_list.SetCurSel(0);
\r
102 OnSelchangeDgstatList();
\r
106 void CDGStat::Update()
\r
108 CStereoGRApp* app = (CStereoGRApp*)AfxGetApp();
\r
109 CDynGestServer& server = app->m_dgServer;
\r
111 // Clean up the list box
\r
112 for(int i = 0; i < m_name_list.GetCount(); i++)
\r
114 m_name_list.DeleteString(i);
\r
117 for(i = 0; i < server.GetNumGestures(); i++ )
\r
119 CString name = server.GetGesture(i)->GetName();
\r
120 m_name_list.AddString( name );
\r
123 m_name_list.SetCurSel(0);
\r
124 OnSelchangeDgstatList();
\r
127 BOOL CDGStat::OnSetActive()
\r
130 return CPropertyPage::OnSetActive();
\r