LRESULT Git05_CBCGPPropBar::OnPropertySelected(WPARAM /*wp*/, LPARAM lp) { CBCGPProp* pProp = (CBCGPProp*)lp; ASSERT_VALID(pProp); auto parent = pProp->GetParent(); if (parent) { CBCGPProp* group = parent->GetParent(); if (group) { CString group_name = group->GetName(); if (group_name == L"Statistics") { CBCGPProp* shaGroup = m_wndPropList.GetProperty(2); CBCGPProp* shaProp = shaGroup->GetSubItem(1); CString sha = shaProp->GetValue(); CMainFrame *pMainWnd = static_cast<CMainFrame*>(AfxGetMainWnd()); CString file = pProp->GetName(); pMainWnd->display_info_for_diffed_file(sha, file); } } } return 0; }
void EditConfigDockBar::SetPropState () { CBCGPProp* pFillTypeProp = m_wndPropList.GetProperty (PRO_Reg_FillStyle); CBCGPProp* pFillStyleProp = m_wndPropList.GetProperty (PRO_Reg_HatchStyle); CString strStyle = (LPCTSTR) (_bstr_t)pFillTypeProp->GetValue (); if (strStyle == lpszRegFillStyles [0]) { pFillStyleProp->Enable(FALSE); } else { pFillStyleProp->Enable(TRUE); } if (m_wndPropList.GetSafeHwnd () != NULL) { m_wndPropList.RedrawWindow (); } }
LRESULT EditConfigDockBar::OnPropertyChanged (WPARAM,LPARAM lParam) { CBCGPProp* pProp = (CBCGPProp*) lParam; SmtSysManager * pSysMgr = SmtSysManager::GetSingletonPtr(); SmtStyleConfig &styleSonfig = pSysMgr->GetSysStyleConfig(); SmtStyleManager * pStyleMgr = SmtStyleManager::GetSingletonPtr(); BOOL bResetMDIChild = FALSE; switch ((int) pProp->GetData ()) { case PRO_TEXT_Font: { CBCGPFontProp *pFontProp = (CBCGPFontProp *)pProp; SmtStyle * pStyle= pStyleMgr->GetStyle(styleSonfig.szPointStyle); if (pStyle) { SmtAnnotationDesc &stAnnoDes = pStyle->GetAnnoDesc(); LogFontToAnnoDesc(stAnnoDes,*(pFontProp->GetLogFont())); stAnnoDes.lAnnoClr = pFontProp->GetColor(); } } break; case PRO_ChildImage_ID: { SmtStyle * pStyle= pStyleMgr->GetStyle(styleSonfig.szPointStyle); if (pStyle) { SmtSymbolDesc &stSymbolDes = pStyle->GetSymbolDesc(); stSymbolDes.lSymbolID = (long) pProp->GetValue (); } } break; case PRO_ChildImage_Width: { SmtStyle * pStyle= pStyleMgr->GetStyle(styleSonfig.szPointStyle); if (pStyle) { SmtSymbolDesc &stSymbolDes = pStyle->GetSymbolDesc(); stSymbolDes.fSymbolHeight = (float) pProp->GetValue (); } } break; case PRO_ChildImage_Height: { SmtStyle * pStyle= pStyleMgr->GetStyle(styleSonfig.szPointStyle); if (pStyle) { SmtSymbolDesc &stSymbolDes = pStyle->GetSymbolDesc(); stSymbolDes.fSymbolWidth = (float) pProp->GetValue (); } } break; case PRO_Line_Color: { CBCGPColorProp *pClrProp = (CBCGPColorProp *)pProp; SmtStyle * pStyle= pStyleMgr->GetStyle(styleSonfig.szLineStyle); if (pStyle) { SmtPenDesc &stPenDes = pStyle->GetPenDesc(); stPenDes.lPenColor = pClrProp->GetColor(); } } break; case PRO_Line_Style: { CString strStyle = (LPCTSTR) (_bstr_t)pProp->GetValue (); SmtStyle * pStyle= pStyleMgr->GetStyle(styleSonfig.szLineStyle); if (pStyle) { SmtPenDesc &stPenDes = pStyle->GetPenDesc(); for (int i = 0; lpszLineStyles [i] != NULL; i++) { if (strStyle == lpszLineStyles [i]) { stPenDes.lPenStyle = i; break; } } } } break; case PRO_Line_Width: { SmtStyle * pStyle= pStyleMgr->GetStyle(styleSonfig.szLineStyle); if (pStyle) { SmtPenDesc &stPenDes = pStyle->GetPenDesc(); stPenDes.fPenWidth = (float) pProp->GetValue (); } } break; case PRO_Reg_Color: { CBCGPColorProp *pClrProp = (CBCGPColorProp *)pProp; SmtStyle * pStyle= pStyleMgr->GetStyle(styleSonfig.szRegionStyle); if (pStyle) { SmtBrushDesc &stBrushDes = pStyle->GetBrushDesc(); stBrushDes.lBrushColor = pClrProp->GetColor(); } } break; case PRO_Reg_FillStyle: { CString strStyle = (LPCTSTR) (_bstr_t)pProp->GetValue (); SmtStyle * pStyle= pStyleMgr->GetStyle(styleSonfig.szRegionStyle); if (pStyle) { SmtBrushDesc &stBrushDes = pStyle->GetBrushDesc(); for (int i = 0; lpszRegFillStyles [i] != NULL; i++) { if (strStyle == lpszRegFillStyles [i]) { if (i == 0) stBrushDes.brushTp = SmtBrushDesc::BT_Solid; else if (i == 1) stBrushDes.brushTp = SmtBrushDesc::BT_Hatch; break; } } SetPropState (); } } break; case PRO_Reg_HatchStyle: { CString strStyle = (LPCTSTR) (_bstr_t)pProp->GetValue (); SmtStyle * pStyle= pStyleMgr->GetStyle(styleSonfig.szRegionStyle); if (pStyle) { SmtBrushDesc &stBrushDes = pStyle->GetBrushDesc(); for (int i = 0; lpszRegFillHatchStyles [i] != NULL; i++) { if (strStyle == lpszRegFillHatchStyles [i]) { stBrushDes.lBrushStyle = i; break; } } } } break; } return NULL; }