void CAclNnb::Edit() { if((m_bButtonFlags & ACL_BUTTON_EDIT_MASK) != ACL_BUTTON_EDIT_MASK) return; if(m_iListIndex < 0) return; CAclDialog dlg; dlg.SetDialog(ACL_CAPTION_EDIT, ACL_CAPTION_NNB_EDIT, ACL_DIALOG_NNB); CAclNnbSet* pAclNnbSet = dlg.GetAclNnbSet(); PXACL_NNB pAcl = pAclNnbSet->GetAcl(); pAcl->dwId = atol(m_List.GetItemText(m_iListIndex, 0)); PXACL_NNB pAclOld = (PXACL_NNB)m_History.FindAcl(pAcl->dwId); if(pAclOld == NULL) pAclOld = (PXACL_NNB)theApp.m_AclFile.FindAcl(pAcl->dwId, ACL_TYPE_NNB); if(pAclOld == NULL) return; *pAcl = *pAclOld; int iRet = dlg.DoModal(); if(iRet == IDCANCEL || !pAclNnbSet->IsChange()) return; AddAcl(pAcl, TRUE, TRUE, m_iListIndex); m_bButtonFlags |= ACL_BUTTON_SHOW_APPLY_GROUP; SendMessageEx(m_bButtonFlags); m_History.AddHistory(OPT_TYPE_EDIT, m_bButtonFlags, (char*)pAcl, (char*)pAclOld); }
void CAclNnb::Add() { if((m_bButtonFlags & ACL_BUTTON_ADD_MASK) != ACL_BUTTON_ADD_MASK) return; CAclDialog dlg; dlg.SetDialog(ACL_CAPTION_ADD, ACL_CAPTION_NNB_ADD, ACL_DIALOG_NNB); CAclNnbSet* pAclNnbSet = dlg.GetAclNnbSet(); PXACL_NNB pAcl = pAclNnbSet->GetAcl(); int nIndex = m_List.GetItemCount(); if(nIndex == 0) pAcl->dwId = 1; else pAcl->dwId = atol(m_List.GetItemText(nIndex - 1, 0)) + 1; int iRet = dlg.DoModal(); if(iRet == IDCANCEL) return; AddAcl(pAcl); m_bButtonFlags |= ACL_BUTTON_SHOW_APPLY_GROUP; m_History.AddHistory(OPT_TYPE_ADD, m_bButtonFlags, (char*)pAcl); SendMessageEx(m_bButtonFlags); }