void CSoftWareConfig::OnNextFrame() { // TODO: Add your control notification handler code here if(m_imgBuff.IsNull()) return; CapsuleParam param; EIndex index= m_pProcessor->GetProcessIndex(); switch(index) { case eFirst: param = GetListContent(0); break; case eSecond: param = GetListContent(2); break; } TImgDim dim = m_imgBuff.Dimension(); if((3 == dim.bytesPerPixel) && (!m_hue1VectPerFrame.empty())) { m_hue1Vect.insert(m_hue1Vect.end(), m_hue1VectPerFrame.begin(), m_hue1VectPerFrame.end()); m_hue2Vect.insert(m_hue2Vect.end(), m_hue2VectPerFrame.begin(), m_hue2VectPerFrame.end()); param.capColor = GetStdHue(m_hue1Vect); param.bodyColor = GetStdHue(m_hue2Vect); } if((1 == dim.bytesPerPixel) && (!m_dimVectPerFrame.empty())) { m_dimVect.insert(m_dimVect.end(), m_dimVectPerFrame.begin(), m_dimVectPerFrame.end()); param= GetStdDim(m_dimVect); } switch(index) { case eFirst: SetListContent(0, param); break; case eSecond: SetListContent(2, param); break; } m_imgBuff.GoNextFrame(); DisplayImage(); Process(m_imgBuff); }
BOOL CDlgItinerantTraffic::OnInitDialog() { CXTResizeDialog::OnInitDialog(); InitToolBar(); InitListCtrl(); GetAllStand(); m_pItinerantFlightList->SetAirportDB(m_pInputAirside->m_pAirportDB); m_pItinerantFlightSchedule->SetAirportDB(m_pInputAirside->m_pAirportDB); m_pItinerantFlightList->ReadData(m_nProjID); m_pItinerantFlightSchedule->ReadData(m_nProjID); SetListContent(); GetDlgItem(IDC_SAVE)->EnableWindow(FALSE); SetResize(IDC_STATIC_AREA, SZ_TOP_LEFT , SZ_BOTTOM_RIGHT); SetResize(IDC_LIST_CONTENTS, SZ_TOP_LEFT, SZ_BOTTOM_RIGHT); SetResize(IDC_VIEW_SCHEDULE, SZ_BOTTOM_LEFT , SZ_BOTTOM_LEFT); SetResize(IDC_UPDATE_SCHEDULE,SZ_BOTTOM_LEFT,SZ_BOTTOM_LEFT); SetResize(IDC_SAVE, SZ_BOTTOM_RIGHT, SZ_BOTTOM_RIGHT); SetResize(IDOK, SZ_BOTTOM_RIGHT, SZ_BOTTOM_RIGHT); SetResize(IDCANCEL, SZ_BOTTOM_RIGHT, SZ_BOTTOM_RIGHT); SetIcon(LoadIcon( AfxGetInstanceHandle(),MAKEINTRESOURCE(IDR_MAINFRAME) ),TRUE); SetIcon(LoadIcon( AfxGetInstanceHandle(),MAKEINTRESOURCE(IDR_MAINFRAME) ),FALSE); return TRUE; }
StatsHeroesList::StatsHeroesList(const Point & pt, KingdomHeroes & heroes) : Interface::ListBox<HEROESPTR>(pt) { const Sprite & back = AGG::GetICN(ICN::OVERVIEW, 13); SetTopLeft(pt); SetScrollSplitter(AGG::GetICN(ICN::SCROLL, 4), Rect(pt.x + 630, pt.y + 18, back.w(), back.h())); SetScrollButtonUp(ICN::SCROLL, 0, 1, Point(pt.x + 626, pt.y)); SetScrollButtonDn(ICN::SCROLL, 2, 3, Point(pt.x + 626, pt.y + 20 + back.h())); SetAreaMaxItems(4); SetAreaItems(Rect(pt.x + 30, pt.y + 17, 594, 344)); SetListContent(heroes); }
StatsCastlesList::StatsCastlesList(const Point & pt, KingdomCastles & castles) : Interface::ListBox<CstlRow>(pt) { const Sprite & back = AGG::GetICN(ICN::OVERVIEW, 13); SetTopLeft(pt); SetScrollSplitter(AGG::GetICN(ICN::SCROLL, 4), Rect(pt.x + 629, pt.y + 18, back.w(), back.h())); SetScrollButtonUp(ICN::SCROLL, 0, 1, Point(pt.x + 626, pt.y)); SetScrollButtonDn(ICN::SCROLL, 2, 3, Point(pt.x + 626, pt.y + 20 + back.h())); SetAreaMaxItems(4); SetAreaItems(Rect(pt.x + 30, pt.y + 17, 594, 344)); content.resize(castles.size()); for(KingdomCastles::iterator it = castles.begin(); it != castles.end(); ++it) content[std::distance(castles.begin(), it)].Init(*it); SetListContent(content); }
bool CSoftWareConfig::Process(const TImgBuffer &imgBuff) { PixelMem* pImage = imgBuff.CurrentFrameData(); size_t bytes = imgBuff.FrameBytes(); TImgDim dim = imgBuff.Dimension(); m_pProcessor->SetRawImage(pImage, bytes); CapsuleProc::ObservingTarget(100); m_pProcessor->Process(CapsuleProc::TRAIN); if (m_profileEnable) { m_cvDisplay.SetImage(reinterpret_cast<long>(CapsuleProc::ObservedIMG())); } else { m_cvDisplay.SetImage(reinterpret_cast<long>(m_IMGForPlayer)); } // CapsuleProc::ObservingTarget(999); TCapsuleParam& proData = m_pProcessor->GetProcedureData(); int arryCount = 1; if (arryCount) { if (3 == dim.bytesPerPixel) { m_hue1VectPerFrame.clear(); m_hue2VectPerFrame.clear(); PelLab24 hue1; PelLab24 hue2; PelLab24 color; for(int i = 0; i < arryCount; ++i) { bool noEmptyHue1 = !m_hue1Vect.empty(); bool noEmptyHue1F = !m_hue1VectPerFrame.empty(); if( noEmptyHue1 || noEmptyHue1F) { if (noEmptyHue1) { color = GetStdHue(m_hue1Vect); } else if (noEmptyHue1F) { color = GetStdHue(m_hue1VectPerFrame); } size_t distHue1 = (hue1.a - color.a)*(hue1.a - color.a) + (hue1.b - color.b)*(hue1.b - color.b); size_t distHue2 = (hue2.a - color.a)*(hue2.a - color.a) + (hue2.b - color.b)*(hue2.b - color.b); if(distHue1 > distHue2) { color = hue1; hue1 = hue2; hue2 = color; } } m_hue1VectPerFrame.push_back(hue1); m_hue2VectPerFrame.push_back(hue2); } m_curParam.capColor = GetStdHue(m_hue1VectPerFrame); m_curParam.bodyColor= GetStdHue(m_hue2VectPerFrame); SetListContent(1, m_curParam); } else { EIndex index = m_pProcessor->GetProcessIndex(); m_dimVectPerFrame.clear(); m_dimVectPerFrame.push_back(proData.GetParam()); m_curParam = GetStdDim(m_dimVectPerFrame); switch(index) { case eFirst: SetListContent(1, proData.GetParam()); break; case eSecond: SetListContent(3, proData.GetParam()); break; } } } return true; }
void CDlgDepartureSlotSpec::InitListCtrl() { DWORD dwStyle = m_wndListCtrl.GetExtendedStyle(); dwStyle |= LVS_EX_FULLROWSELECT|LVS_EX_HEADERDRAGDROP|LVS_EX_GRIDLINES; m_wndListCtrl.SetExtendedStyle(dwStyle); CStringList strlist; LV_COLUMNEX lvc; lvc.mask = LVCF_WIDTH|LVCF_TEXT|LVCF_FMT; //flight type lvc.pszText = "Flight Type"; lvc.cx = 80; lvc.fmt = LVCFMT_NOEDIT; lvc.csList = &strlist; m_wndListCtrl.InsertColumn(0,&lvc); //SID strlist.RemoveAll(); strlist.AddTail(_T("All")); m_vrSID.clear(); m_vrSID.push_back(-2); AirRouteList airRouteList; airRouteList.ReadData(m_nProjID); int nAirRouteCount = airRouteList.GetAirRouteCount(); for (int i = 0; i < nAirRouteCount; i++) { CAirRoute *pAirRoute = 0; pAirRoute = airRouteList.GetAirRoute(i); ASSERT(pAirRoute != NULL); if (pAirRoute && CAirRoute::SID == pAirRoute->getRouteType() ) { strlist.AddTail(pAirRoute->getName()); m_vrSID.push_back(pAirRoute->getID()); } } lvc.pszText = "SID"; lvc.cx = 40; lvc.fmt = LVCFMT_DROPDOWN; m_wndListCtrl.InsertColumn(1,&lvc); //time range strlist.RemoveAll(); lvc.pszText = "Time Range"; lvc.cx = 80; lvc.fmt = LVCFMT_NOEDIT; lvc.csList = &strlist; m_wndListCtrl.InsertColumn(2,&lvc); //distribution strlist.RemoveAll(); CProbDistManager* pProbDistMan = 0; CProbDistEntry* pPDEntry = 0; int nCount = -1; if(m_pAirportDB) pProbDistMan = m_pInputAirside->m_pAirportDB->getProbDistMan(); strlist.AddTail(_T("New Probability Distribution...")); if(pProbDistMan) nCount = pProbDistMan->getCount(); for( int i=0; i< nCount; i++ ) { pPDEntry = pProbDistMan->getItem( i ); if(pPDEntry) strlist.AddTail(pPDEntry->m_csName); } lvc.pszText = "First slot delay(mins)"; lvc.cx = 120; lvc.fmt = LVCFMT_DROPDOWN; lvc.csList = &strlist; m_wndListCtrl.InsertColumn(3, &lvc); lvc.pszText = "Inter slot delay(mins)"; lvc.cx = 200; m_wndListCtrl.InsertColumn(4, &lvc); SetListContent(); GetDlgItem(IDSAVE)->EnableWindow(FALSE); }
// ---------------------------------------------------------------------------- // Name : MouseMessage() // Desc : // ---------------------------------------------------------------------------- WMSG_RESULT CUIHelp::MouseMessage( MSG *pMsg ) { WMSG_RESULT wmsgResult; // Title bar static BOOL bTitleBarClick = FALSE; // Mouse point static int nOldX, nOldY; int nX = LOWORD( pMsg->lParam ); int nY = HIWORD( pMsg->lParam ); if(!m_bVisible) return WMSG_FAIL; // Mouse message switch( pMsg->message ) { case WM_MOUSEMOVE: { if( IsInside( nX, nY ) ) CUIManager::getSingleton()->SetMouseCursorInsideUIs(); if( IsInsideRect(nX,nY,m_rcRightView)) m_bVisibleImg = TRUE; else { m_bVisibleImg = FALSE; m_bSlideImgX = 0; } // Move web board if( bTitleBarClick && ( pMsg->wParam & MK_LBUTTON ) ) { int ndX = nX - nOldX; int ndY = nY - nOldY; nOldX = nX; nOldY = nY; Move( ndX, ndY ); return WMSG_SUCCESS; } // Close button else if( m_btnClose.MouseMessage( pMsg ) != WMSG_FAIL ) return WMSG_SUCCESS; // List box else if( m_lbListContent.MouseMessage( pMsg ) != WMSG_FAIL ) return WMSG_SUCCESS; // List box else if( m_lbReadContent.MouseMessage( pMsg ) != WMSG_FAIL ) return WMSG_SUCCESS; } break; case WM_LBUTTONDOWN: { if( IsInside( nX, nY ) ) { SetFocus ( TRUE ); CUIManager::getSingleton()->RearrangeOrder( UI_HELP, TRUE ); nOldX = nX; nOldY = nY; // Close button if( m_btnClose.MouseMessage( pMsg ) != WMSG_FAIL ) { // Nothing } // Title bar else if( IsInsideRect( nX, nY, m_rcTitle ) ) { bTitleBarClick = TRUE; } // List box if( ( wmsgResult = m_lbListContent.MouseMessage( pMsg ) ) != WMSG_FAIL ) { if( wmsgResult == WMSG_COMMAND ) { SetViewContent( m_lbListContent.GetCurSel() ); SetListContent( m_lbListContent.GetCurSel() ); } } // List box else if( ( wmsgResult = m_lbReadContent.MouseMessage( pMsg ) ) != WMSG_FAIL ) { // Do Nothing } return WMSG_SUCCESS; } } break; case WM_LBUTTONUP: { CUIManager* pUIManager = CUIManager::getSingleton(); // If holding button doesn't exist if (pUIManager->GetDragIcon() == NULL) { // Title bar bTitleBarClick = FALSE; // If teleport isn't focused if( !IsFocused() ) return WMSG_FAIL; // Close button if( ( wmsgResult = m_btnClose.MouseMessage( pMsg ) ) != WMSG_FAIL ) { if( wmsgResult == WMSG_COMMAND ) CloseHelp(); return WMSG_SUCCESS; } // List box else if( m_lbListContent.MouseMessage( pMsg ) != WMSG_FAIL ) return WMSG_SUCCESS; // List box else if( m_lbReadContent.MouseMessage( pMsg ) != WMSG_FAIL ) return WMSG_SUCCESS; } // If holding button exists else { if( IsInside( nX, nY ) ) { // Reset holding button pUIManager->ResetHoldBtn(); return WMSG_SUCCESS; } } } break; case WM_LBUTTONDBLCLK: { if( IsInside( nX, nY ) ) { // DO NOTTHING return WMSG_SUCCESS; } } break; case WM_MOUSEWHEEL: { if( IsInside( nX, nY ) ) { // List box of read type if( m_lbListContent.MouseMessage( pMsg ) != WMSG_FAIL ) return WMSG_SUCCESS; // List box of read type if( m_lbReadContent.MouseMessage( pMsg ) != WMSG_FAIL ) return WMSG_SUCCESS; } } break; } return WMSG_FAIL; }
void CDlgItinerantTraffic::OnEditItem() { ASSERT(::IsWindow(m_wndListCtrl.m_hWnd)); POSITION pos = m_wndListCtrl.GetFirstSelectedItemPosition(); if (pos != NULL) { while (pos) { int nItem = m_wndListCtrl.GetNextSelectedItem(pos); //TODO ItinerantFlight* pItinerantFlight = m_pItinerantFlightList->GetItem(nItem); //------------------- CDlgItinerantTrafficDefine dlg(m_nProjID, m_pSelectFlightType, m_pInputAirside, m_pSelectProbDistEntry, pItinerantFlight); if(IDOK == dlg.DoModal()) { SetListContent(); // m_wndListCtrl.SetItemText(nIndex, 0, pItinerantFlight->GetName()); // // strTempValue.Format(_T("%d"),(int)(pItinerantFlight->GetEnRoute())); // m_wndListCtrl.SetItemText(nIndex,1,strTempValue); // // int nEntryFlag = pItinerantFlight->GetEntryFlag(); // int nEntryID = pItinerantFlight->GetEntryID(); // if(nEntryFlag == ALTOBJECT_TYPE(ALT_WAYPOINT)) // { // for (int i = 0; i < static_cast<int>(m_vWaypoint.size()); ++ i) // { // if(m_vWaypoint[i].getID() == nEntryID) // { // CString strEntry = m_vWaypoint[i].GetObjNameString(); // strTempValue.Format("%s",strEntry); // break; // } // } // } // else // { // ALTObjectGroup altObjGroup; // altObjGroup.ReadData(nEntryID); // strTempValue = altObjGroup.getName().GetIDString(); // } // m_wndListCtrl.SetItemText(nIndex, 2, strTempValue); // // int nExitFlag = pItinerantFlight->GetExitFlag(); // int nExitID = pItinerantFlight->GetExitID(); // if(nExitFlag == ALTOBJECT_TYPE(ALT_WAYPOINT)) // { // for (int i = 0; i < static_cast<int>(m_vWaypoint.size()); ++ i) // { // if(m_vWaypoint[i].getID() == nExitID) // { // CString strExit = m_vWaypoint[i].GetObjNameString(); // strTempValue.Format("%s",strExit); // break; // } // } // } // else // { // ALTObjectGroup altObjGroup; // altObjGroup.ReadData(nExitID); // strTempValue = altObjGroup.getName().GetIDString(); // } // m_wndListCtrl.SetItemText(nIndex, 3, strTempValue); // // // // CString strTimeRange = _T(""),strDay = _T(""); // // ElapsedTime* etInsertStart = pItinerantFlight->GetArrStartTime(); // long lSecond = etInsertStart->asSeconds(); // strDay.Format(_T("Day%d %02d:%02d:%02d"),lSecond/86400+1,(lSecond % 86400)/3600,(lSecond % 86400 % 3600)/60,lSecond % 86400 % 3600 % 60); // strTimeRange = strDay + _T(" - "); // ElapsedTime* etInsertEnd = pItinerantFlight->GetArrEndTime(); // if (*etInsertStart == 0L // && *etInsertEnd == 0L) // { // etInsertEnd->SetTime("23:59:59"); // } // lSecond = etInsertEnd->asSeconds(); // strDay.Format(_T("Day%d %02d:%02d:%02d"),lSecond/86400+1,(lSecond % 86400)/3600,(lSecond % 86400 % 3600)/60,lSecond % 86400 % 3600 % 60); // strTimeRange += strDay; // strTempValue = strTimeRange; // // // if (pItinerantFlight->GetEntryID() != -1) // { // m_wndListCtrl.SetItemText(nIndex, 4, strTempValue); // } // else // { // m_wndListCtrl.SetItemText(nIndex,4,_T("")); // } // etInsertStart = pItinerantFlight->GetDepStartTime(); // lSecond = etInsertStart->asSeconds(); // strDay.Format(_T("Day%d %02d:%02d:%02d"),lSecond/86400+1,(lSecond % 86400)/3600,(lSecond % 86400 % 3600)/60,lSecond % 86400 % 3600 % 60); // strTimeRange = strDay + _T(" - "); // etInsertEnd = pItinerantFlight->GetDepEndTime(); // if (*etInsertStart == 0L // && *etInsertEnd == 0L) // { // etInsertEnd->SetTime("23:59:59"); // } // lSecond = etInsertEnd->asSeconds(); // strDay.Format(_T("Day%d %02d:%02d:%02d"),lSecond/86400+1,(lSecond % 86400)/3600,(lSecond % 86400 % 3600)/60,lSecond % 86400 % 3600 % 60); // strTimeRange += strDay; // strTempValue = strTimeRange; // if(pItinerantFlight->GetEnRoute()) // { // m_wndListCtrl.SetItemText(nIndex,5,_T("")); // } // else // { // if (pItinerantFlight->GetExitID() != -1) // { // m_wndListCtrl.SetItemText(nIndex, 5, strTempValue); // } // else // { // m_wndListCtrl.SetItemText(nIndex,5,_T("")); // } // } // // strTempValue.Format("%d", pItinerantFlight->GetFltCount()); // m_wndListCtrl.SetItemText(nIndex, 6, strTempValue); // // if (pItinerantFlight->GetEntryID() != -1) // { // strTempValue = pItinerantFlight->GetArrDistScreenPrint(); // m_wndListCtrl.SetItemText(nIndex, 7, strTempValue); // } // else // { // m_wndListCtrl.SetItemText(nIndex,7,_T("")); // } // // if (pItinerantFlight->GetExitID() != -1) // { // strTempValue = pItinerantFlight->GetDepDistScreenPrint(); // m_wndListCtrl.SetItemText(nIndex,8,strTempValue); // } // else // { // m_wndListCtrl.SetItemText(nIndex,8,_T("")); // } } //------------------- } } GetDlgItem(IDC_SAVE)->EnableWindow(); UpdateToolBar(); }