Garmin Fleet Management Controller  2.19.0
CDeleteDataDlg.cpp
Go to the documentation of this file.
1 /*********************************************************************
2 *
3 * MODULE NAME:
4 * CDeleteDataDlg.cpp
5 *
6 * Copyright 2008-2009 by Garmin Ltd. or its subsidiaries.
7 *---------------------------------------------------------------------
8 * $NoKeywords$
9 *********************************************************************/
10 #include "stdafx.h"
11 #include "CFmiApplication.h"
12 #include "CDeleteDataDlg.h"
13 #include "Event.h"
14 
15 using namespace std;
16 
17 IMPLEMENT_DYNAMIC( CDeleteDataDlg, CDialog )
18 
19 BEGIN_MESSAGE_MAP( CDeleteDataDlg, CDialog )
20  ON_BN_CLICKED( IDOK, OnBnClickedOk )
21 END_MESSAGE_MAP()
22 
23 //----------------------------------------------------------------------
27 //----------------------------------------------------------------------
28 CDeleteDataDlg::CDeleteDataDlg
29  (
30  CWnd * aParent,
31  FmiApplicationLayer & aCom
32  )
33  : CDialog( IDD_DELETE_DATA, aParent )
34  , mCom( aCom )
35  , mDeleteMessagesChecked( FALSE )
36  , mDeleteStopsChecked( FALSE )
37 #if( FMI_SUPPORT_A604 )
38  , mDeleteActiveRouteChecked( FALSE )
39  , mDeleteCannedMessagesChecked( FALSE )
40  , mDeleteCannedResponsesChecked( FALSE )
41  , mDeleteGpiFileChecked( FALSE )
42  , mDeleteDriverInfoChecked( FALSE )
43  , mDisableFmiChecked( FALSE )
44 #endif
45 #if( FMI_SUPPORT_A607 )
46  , mWaypointsChecked( FALSE )
47 #endif
48 #if ( FMI_SUPPORT_A612 )
49  , mFormsChecked( FALSE )
50 #endif
51 #if ( FMI_SUPPORT_A613 )
52  , mCustomAvoidancesChecked( FALSE )
53 #endif
54 #if ( FMI_SUPPORT_A617 )
55  , mSensorsChecked( FALSE )
56 #endif
57 {
58 }
59 
60 //----------------------------------------------------------------------
62 //----------------------------------------------------------------------
64 {
65 }
66 
67 //----------------------------------------------------------------------
70 //----------------------------------------------------------------------
72  (
73  CDataExchange * aDataExchange
74  )
75 {
76  CDialog::DoDataExchange( aDataExchange );
77  DDX_Check( aDataExchange, IDC_DELDATA_CHK_MESSAGES, mDeleteMessagesChecked );
78  DDX_Check( aDataExchange, IDC_DELDATA_CHK_STOPS, mDeleteStopsChecked );
79 #if( FMI_SUPPORT_A604 )
80  DDX_Check( aDataExchange, IDC_DELDATA_CHK_ROUTE, mDeleteActiveRouteChecked );
81  DDX_Check( aDataExchange, IDC_DELDATA_CHK_CANNED_MESSAGES, mDeleteCannedMessagesChecked );
82  DDX_Check( aDataExchange, IDC_DELDATA_CHK_CANNED_RESPONSES, mDeleteCannedResponsesChecked );
83  DDX_Check( aDataExchange, IDC_DELDATA_CHK_GPI_FILE, mDeleteGpiFileChecked );
84  DDX_Check( aDataExchange, IDC_DELDATA_CHK_DRIVER_INFO, mDeleteDriverInfoChecked );
85  DDX_Check( aDataExchange, IDC_DELDATA_CHK_DISABLE_FMI, mDisableFmiChecked );
86 #endif
87 #if( FMI_SUPPORT_A607 )
88  DDX_Check( aDataExchange, IDC_DELDATA_CHK_WAYPOINTS, mWaypointsChecked );
89 #endif
90 #if( FMI_SUPPORT_A612)
91  DDX_Check( aDataExchange, IDC_DEL_DATA_CHK_FORMS, mFormsChecked );
92 #endif
93 #if ( FMI_SUPPORT_A613 )
94  DDX_Check( aDataExchange, IDC_DEL_DATA_CHK_CUSTOM_AVOIDANCES, mCustomAvoidancesChecked );
95 #endif
96 #if ( FMI_SUPPORT_A617 )
97  DDX_Check( aDataExchange, IDC_DEL_DATA_CHK_SENSORS, mSensorsChecked );
98 #endif
99 }
100 
101 //----------------------------------------------------------------------
106 //----------------------------------------------------------------------
108 {
109  CDialog::OnInitDialog();
110 
111 #if( !FMI_SUPPORT_A604 )
112  // Disable the controls specific to A604 support
113  GetDlgItem( IDC_DELDATA_CHK_ROUTE )->EnableWindow( FALSE );
114  GetDlgItem( IDC_DELDATA_CHK_CANNED_MESSAGES )->EnableWindow( FALSE );
115  GetDlgItem( IDC_DELDATA_CHK_CANNED_RESPONSES )->EnableWindow( FALSE );
116  GetDlgItem( IDC_DELDATA_CHK_GPI_FILE )->EnableWindow( FALSE );
117  GetDlgItem( IDC_DELDATA_CHK_DRIVER_INFO )->EnableWindow( FALSE );
118  GetDlgItem( IDC_DELDATA_CHK_DISABLE_FMI )->EnableWindow( FALSE );
119 #endif
120 
121 #if( !FMI_SUPPORT_A607 )
122  // Disable the controls specific to A607 support
123  GetDlgItem( IDC_DELDATA_CHK_WAYPOINTS )->EnableWindow( FALSE );
124 #endif
125 #if ( !FMI_SUPPORT_A612 )
126  GetDlgItem( IDC_DEL_DATA_CHK_FORMS )->EnableWindow( FALSE );
127 #endif
128 #if ( !FMI_SUPPORT_A613 )
129  GetDlgItem( IDC_DEL_DATA_CHK_CUSTOM_AVOIDANCES )->EnableWindow( FALSE );
130 #endif
131  return TRUE;
132 } /* OnInitDialog() */
133 
134 //----------------------------------------------------------------------
138 //----------------------------------------------------------------------
140 {
141  UpdateData( TRUE );
142 #if( FMI_SUPPORT_A604 )
143  //check to see if they want to delete all data first
144  //if so, we don't have to worry about deleting other stuff
145  if( mDisableFmiChecked )
146  {
147  mCom.sendDataDeletionRequest( DISABLE_FMI );
148  }
149  else
150 #endif
151  {
152  //not deleting all data
153  //need to process all individual check boxes
154  if( mDeleteMessagesChecked )
155  {
156  mCom.sendDataDeletionRequest( DELETE_ALL_MESSAGES );
157  }
158 
159  if( mDeleteStopsChecked )
160  {
161  mCom.sendDataDeletionRequest( DELETE_ALL_STOPS );
162  }
163 
164 #if( FMI_SUPPORT_A604 )
165  if( mDeleteActiveRouteChecked )
166  {
167  mCom.sendDataDeletionRequest( DELETE_ACTIVE_ROUTE );
168  }
169 
170  if( mDeleteCannedMessagesChecked )
171  {
172  mCom.sendDataDeletionRequest( DELETE_CANNED_MESSAGES );
173  }
174 
175  if( mDeleteCannedResponsesChecked )
176  {
177  mCom.sendDataDeletionRequest( DELETE_CANNED_RESPONSES );
178  }
179 
180  if( mDeleteGpiFileChecked )
181  {
182  mCom.sendDataDeletionRequest( DELETE_GPI_FILE );
183  }
184 
185  if( mDeleteDriverInfoChecked )
186  {
187  mCom.sendDataDeletionRequest( DELETE_DRIVER_ID_AND_STATUS );
188  }
189 #endif
190 #if( FMI_SUPPORT_A607 )
191  if( mWaypointsChecked )
192  {
193  mCom.sendDataDeletionRequest( DELETE_WAYPOINTS );
194  }
195 #endif
196 #if( FMI_SUPPORT_A612 )
197  if( mFormsChecked )
198  {
199  mCom.sendDataDeletionRequest( DELETE_FORMS );
200  }
201 #endif
202 #if( FMI_SUPPORT_A613 )
203  if( mCustomAvoidancesChecked )
204  {
205  mCom.sendDataDeletionRequest( DELETE_CUSTOM_AVOIDANCES );
206  }
207 #endif
208 #if( FMI_SUPPORT_A617 )
209  if( mSensorsChecked )
210  {
211  mCom.sendDataDeletionRequest( DELETE_SENSORS );
212  }
213 #endif
214  }
215 
216  OnOK();
217 } /* OnBnClickedOK() */
#define IDC_DELDATA_CHK_WAYPOINTS
Definition: resource.h:195
#define IDC_DELDATA_CHK_STOPS
Definition: resource.h:193
BOOL OnInitDialog()
Initialize the dialog.
Dialog allowing the user to delete specified FMI data from the client.
STL namespace.
#define FALSE
Definition: garmin_types.h:46
#define IDD_DELETE_DATA
Definition: resource.h:24
#define TRUE
Definition: garmin_types.h:45
#define IDC_DEL_DATA_CHK_FORMS
Definition: resource.h:434
#define IDC_DEL_DATA_CHK_SENSORS
Definition: resource.h:439
#define IDC_DELDATA_CHK_DISABLE_FMI
Definition: resource.h:188
#define IDC_DELDATA_CHK_GPI_FILE
Definition: resource.h:190
Serial communication controller for Garmin and FMI packets.
virtual void DoDataExchange(CDataExchange *aDataExchange)
Perform dialog data exchange and validation.
#define IDC_DEL_DATA_CHK_CUSTOM_AVOIDANCES
Definition: resource.h:436
afx_msg void OnBnClickedOk()
Click handler for the OK button.
#define IDC_DELDATA_CHK_MESSAGES
Definition: resource.h:191
#define IDC_DELDATA_CHK_CANNED_RESPONSES
Definition: resource.h:187
#define IDC_DELDATA_CHK_DRIVER_INFO
Definition: resource.h:189
#define IDC_DELDATA_CHK_ROUTE
Definition: resource.h:192
#define IDC_DELDATA_CHK_CANNED_MESSAGES
Definition: resource.h:186
virtual ~CDeleteDataDlg()
Destructor.