static void OnLoadClicked(WndButton* pWnd){ // 091216 TCHAR file_name[MAX_PATH]; WndProperty* wp; DataFieldFileReader *dfe; wp = (WndProperty*)wf->FindByName(TEXT("prpFile")); if (!wp) return; wp->OnLButtonDown((POINT){0,0}); dfe = (DataFieldFileReader*) wp->GetDataField(); int file_index = dfe->GetAsInteger(); if (file_index>0) { if (ValidTaskPoint(ActiveWayPoint) && ValidTaskPoint(1)) { _stprintf(file_name, TEXT("%s '%s' ?"), gettext(TEXT("_@M891_")), dfe->GetAsString()); // Clear old task and load if(MessageBoxX(file_name, _T(" "), mbYesNo) == IdNo) { return; } } } else { // LKTOKEN _@M467_ = "No Task to load" MessageBoxX(gettext(TEXT("_@M467_")),_T(" "), mbOk); return; } if (file_index>0) { LPCTSTR szFileName = dfe->GetPathFile(); LPCTSTR wextension = _tcsrchr(szFileName, _T('.')); if(wextension) { bool bOK = false; if(_tcsicmp(wextension,_T(LKS_TSK))==0) { CTaskFileHelper helper; bOK = helper.Load(szFileName); } #ifdef OLDTASK_COMPAT else if (_tcsicmp(wextension,_T(LKS_OLD_TSK))==0) { LoadNewTask(szFileName); bOK = true; } #endif else if (_tcsicmp(wextension,_T(LKS_WP_CUP))==0) { bOK = LoadCupTask(szFileName); } else if (_tcsicmp(wextension,_T(LKS_WP_GPX))==0) { bOK = LoadGpxTask(szFileName); } if(!bOK) { MessageBoxX(gettext(TEXT("_@M467_")),_T(" "), mbOk); return; } OverviewRefreshTask(); UpdateFilePointer(); UpdateCaption(); } } }
static void OnLoadClicked(WindowControl * Sender, WndListFrame::ListInfo_t *ListInfo){ // 091216 (void)ListInfo; (void)Sender; TCHAR file_name[MAX_PATH]; WndProperty* wp; DataFieldFileReader *dfe; wp = (WndProperty*)wf->FindByName(TEXT("prpFile")); if (!wp) return; HWND hwnd = wp->GetHandle(); SendMessage(hwnd,WM_LBUTTONDOWN,0,0); dfe = (DataFieldFileReader*) wp->GetDataField(); int file_index = dfe->GetAsInteger(); if (file_index>0) { if (ValidTaskPoint(ActiveWayPoint) && ValidTaskPoint(1)) { _stprintf(file_name, TEXT("%s '%s' ?"), gettext(TEXT("_@M891_")), dfe->GetAsString()); // Clear old task and load if(MessageBoxX(hWndMapWindow, file_name, _T(" "), MB_YESNO|MB_ICONQUESTION) == IDNO) { return; } } } else { // LKTOKEN _@M467_ = "No Task to load" MessageBoxX(hWndMapWindow, gettext(TEXT("_@M467_")),_T(" "), MB_OK|MB_ICONEXCLAMATION); return; } if (file_index>0) { LPCTSTR szFileName = dfe->GetPathFile(); LPCTSTR wextension = _tcsrchr(szFileName, _T('.')); if(wextension) { bool bOK = false; if(_tcsicmp(wextension,_T(LKS_TSK))==0) { CTaskFileHelper helper; bOK = helper.Load(szFileName); } else if (_tcsicmp(wextension,_T(LKS_OLD_TSK))==0) { LoadNewTask(szFileName); bOK = true; } else if (_tcsicmp(wextension,_T(LKS_WP_CUP))==0) { bOK = LoadCupTask(szFileName); } else if (_tcsicmp(wextension,_T(LKS_WP_GPX))==0) { bOK = LoadGpxTask(szFileName); } if(!bOK) { MessageBoxX(hWndMapWindow, gettext(TEXT("_@M467_")),_T(" "), MB_OK|MB_ICONEXCLAMATION); return; } OverviewRefreshTask(); UpdateFilePointer(); UpdateCaption(); } } }
static void OnClearClicked(WndButton* pWnd){ if (MessageBoxX( // LKTOKEN _@M179_ = "Clear the task?" MsgToken(179), // LKTOKEN _@M178_ = "Clear task" MsgToken(178), mbYesNo) == IdYes) { if (CheckDeclaration()) { ClearTask(); UpdateFilePointer(); OverviewRefreshTask(); UpdateCaption(); } } }
static void OnClearClicked(WindowControl * Sender, WndListFrame::ListInfo_t *ListInfo){ (void)ListInfo; (void)Sender; if (MessageBoxX(hWndMapWindow, // LKTOKEN _@M179_ = "Clear the task?" gettext(TEXT("_@M179_")), // LKTOKEN _@M178_ = "Clear task" gettext(TEXT("_@M178_")), MB_YESNO|MB_ICONQUESTION) == IDYES) { if (CheckDeclaration()) { ClearTask(); UpdateFilePointer(); OverviewRefreshTask(); UpdateCaption(); } } }
void dlgTaskOverviewShowModal(int Idx){ UpLimit = 0; LowLimit = 0; ItemIndex = Idx; //-1; showAdvanced = false; wf = dlgLoadFromXML(CallBackTable, ScreenLandscape ? IDR_XML_TASKOVERVIEW_L : IDR_XML_TASKOVERVIEW_P); if (!wf) return; WndButton *wb = (WndButton*)wf->FindByName(TEXT("cmdTimegates")); if (wb) wb->SetVisible(false); if (ISPARAGLIDER) { if (PGOptimizeRoute) AATEnabled=true; // force it on EnableMultipleStartPoints=false; if (wb) wb->SetVisible(true); wb = (WndButton*)wf->FindByName(TEXT("cmdDelete")); if (wb) wb->SetVisible(false); } UpdateCaption(); wfAdvanced = ((WndFrame *)wf->FindByName(TEXT("frmAdvanced"))); wTaskList = (WndListFrame*)wf->FindByName(TEXT("frmTaskList")); wTaskList->SetBorderKind(BORDERLEFT); wTaskList->SetEnterCallback(OnTaskListEnter); wTaskListEntry = (WndOwnerDrawFrame*)wf->FindByName(TEXT("frmTaskListEntry")); wTaskListEntry->SetCanFocus(true); WndProperty* wp; wp = (WndProperty*)wf->FindByName(TEXT("prpFile")); if (wp) { wp->SetVisible(false); DataFieldFileReader* dfe = static_cast<DataFieldFileReader*>(wp->GetDataField()); if(dfe) { dfe->ScanDirectoryTop(_T(LKD_TASKS), _T("*" LKS_TSK)); #ifdef OLDTASK_COMPAT dfe->ScanDirectoryTop(_T(LKD_TASKS), _T("*" LKS_OLD_TSK)); #endif dfe->ScanDirectoryTop(_T(LKD_TASKS), _T("*" LKS_WP_CUP)); dfe->ScanDirectoryTop(_T(LKD_TASKS), _T("*" LKS_WP_GPX)); } wp->RefreshDisplay(); } UpdateFilePointer(); // initialise and turn on the display OverviewRefreshTask(); UpdateAdvanced(); wTaskList->SetItemIndexPos(Idx); wTaskList->Redraw(); wTaskListEntry->SetFocus(); wf->ShowModal(); // now retrieve back the properties... RefreshTask(); delete wf; wf = NULL; }
void dlgTaskOverviewShowModal(int Idx){ UpLimit = 0; LowLimit = 0; ItemIndex = Idx; //-1; showAdvanced = false; wf = NULL; if (!ScreenLandscape) { char filename[MAX_PATH]; LocalPathS(filename, TEXT("dlgTaskOverview_L.xml")); wf = dlgLoadFromXML(CallBackTable, filename, hWndMainWindow, TEXT("IDR_XML_TASKOVERVIEW_L")); } else { char filename[MAX_PATH]; LocalPathS(filename, TEXT("dlgTaskOverview.xml")); wf = dlgLoadFromXML(CallBackTable, filename, hWndMainWindow, TEXT("IDR_XML_TASKOVERVIEW")); } if (!wf) return; WndButton *wb = (WndButton*)wf->FindByName(TEXT("cmdTimegates")); if (wb) wb->SetVisible(false); if (ISPARAGLIDER) { if (PGOptimizeRoute) AATEnabled=true; // force it on EnableMultipleStartPoints=false; if (wb) wb->SetVisible(true); wb = (WndButton*)wf->FindByName(TEXT("cmdDelete")); if (wb) wb->SetVisible(false); } UpdateCaption(); wfAdvanced = ((WndFrame *)wf->FindByName(TEXT("frmAdvanced"))); wTaskList = (WndListFrame*)wf->FindByName(TEXT("frmTaskList")); wTaskList->SetBorderKind(BORDERLEFT); wTaskList->SetEnterCallback(OnTaskListEnter); wTaskList->SetWidth(wf->GetWidth() - wTaskList->GetLeft()-2); wTaskListEntry = (WndOwnerDrawFrame*)wf->FindByName(TEXT("frmTaskListEntry")); // ScrollbarWidth is initialised from DrawScrollBar in WindowControls, so it might not be ready here if ( wTaskList->ScrollbarWidth == -1) { #if defined (PNA) #define SHRINKSBFACTOR 1.0 // shrink width factor. Range .1 to 1 where 1 is very "fat" #else #define SHRINKSBFACTOR 0.75 // shrink width factor. Range .1 to 1 where 1 is very "fat" #endif wTaskList->ScrollbarWidth = (int) (SCROLLBARWIDTH_INITIAL * ScreenDScale * SHRINKSBFACTOR); } wTaskListEntry->SetWidth(wTaskList->GetWidth() - wTaskList->ScrollbarWidth - 5); wTaskListEntry = (WndOwnerDrawFrame*)wf-> FindByName(TEXT("frmTaskListEntry")); wTaskListEntry->SetCanFocus(true); WndProperty* wp; wp = (WndProperty*)wf->FindByName(TEXT("prpFile")); if (wp) { DataFieldFileReader* dfe; dfe = (DataFieldFileReader*)wp->GetDataField(); TCHAR suff[10]; _stprintf(suff,_T("*%S"),LKS_TSK); dfe->ScanDirectoryTop(_T(LKD_TASKS),suff); _stprintf(suff,_T("*%S"),LKS_OLD_TSK); dfe->ScanDirectoryTop(_T(LKD_TASKS),suff); _stprintf(suff,_T("*%S"),LKS_WP_CUP); dfe->ScanDirectoryTop(_T(LKD_TASKS),suff); wp->RefreshDisplay(); } UpdateFilePointer(); // initialise and turn on the display OverviewRefreshTask(); UpdateAdvanced(); wTaskList->SetItemIndexPos(Idx); wTaskList->Redraw(); wTaskListEntry->SetFocused(true,NULL); wf->ShowModal(); // now retrieve back the properties... RefreshTask(); delete wf; wf = NULL; }