📄 munpadialog.cpp
字号:
char temp[MAX_MUNPA_BOARD_CONTENT+1];
m_pMBR_Contents->GetScriptText(temp);
m_pMBW_SubjectEdit->SetEditText(m_pMBR_Subject->GetEditText());
m_pMBW_SubjectEdit->SetFocusEdit(TRUE);
m_pMBW_WriteContents->SetScriptText(temp);
m_pMBW_WriteContents->SetCaretMoveFirst();
}
break;
case eMunpaMode_MunpaBoardWrite:
{
m_pMBW_SubjectEdit->SetEditText("");
m_pMBW_SubjectEdit->SetFocusEdit(TRUE);
m_pMBW_WriteContents->SetScriptText("");
SetReadingContentsIdx(0);
}
break;
case eMunpaMode_MunpaBoardRead:
{
m_pMBR_Modify->SetActive(FALSE);
m_pMBR_Delete->SetActive(FALSE);
m_pMBR_Reply->SetActive(FALSE);
m_pMBR_Contents->SetCaretMoveFirst();
m_pMBR_Contents->SetReadOnly(TRUE);
}
break;
case eMunpaMode_MunpaBoardRead_Modify:
{
m_pMBR_Modify->SetActive(TRUE);
m_pMBR_Contents->SetCaretMoveFirst();
m_pMBR_Contents->SetReadOnly(TRUE);
}
break;
case eMunpaMode_MunpaBoardRead_Reple:
{
m_pMBR_Reply->SetActive(TRUE);
m_pMBR_Contents->SetCaretMoveFirst();
m_pMBR_Contents->SetReadOnly(TRUE);
}
break;
case eMunpaMode_MunpaBoardRead_Delete:
{
m_pMBR_Delete->SetActive(TRUE);
}
break;
case eMunpaMode_Warehouse:
{
if(MUNPAMGR->IsMunpaMaster(HERO))
m_pMoneyPutOutBtn->SetActive(TRUE);
else
m_pMoneyPutOutBtn->SetActive(FALSE);
}
break;
case eMunpaMode_NoAuthority:
{
m_pNoAuthority->SetActive(TRUE);
}
break;
case eMunpaMode_ModifyIntromsg:
{
char temp[MAX_MUNPA_INTROMSG+1];
m_pIntroMsg->GetScriptText(temp);
// m_pModIntroMsg->SetCaretMoveFirst();
m_pModIntroMsg->SetScriptText(temp);
m_pModIntroMsg->SetFocusEdit(TRUE);
}
break;
}
}
void CMunpaDialog::UpdateData()
{
}
void CMunpaDialog::RefreshDlg()
{
m_pHomeBtn->SetActive(TRUE);
for(int i=0; i<MAX_MUNPA_BOARD_NUM; ++i)
{
m_pBoardBtn[i]->SetActive(TRUE);
}
DWORD HEROMUNPAID = HERO->GetMunpaIdx();
BYTE RANK = HERO->GetMunpaMemberRank();
if( HEROMUNPAID != m_MunpaID)
ShowNotMember();
else if(RANK == MUNPA_MASTER)
ShowMaster();
else
ShowMember();
UpdateData();
}
void CMunpaDialog::ShowNotMember()
{
m_pMemberInfoBtn->SetActive(TRUE);
m_pSecedeBtn->SetActive(FALSE);
m_pManageMemberBtn->SetActive(FALSE);
m_pManageMunpaBtn->SetActive(FALSE);
m_pWareHouseBtn->SetActive(FALSE);
if(HERO->GetMunpaIdx())
{
m_pApplicateCancelBtn->SetActive(FALSE);
m_pApplicateBtn->SetActive(FALSE);
}
else
{
m_pApplicateBtn->SetActive(TRUE);
m_pApplicateCancelBtn->SetActive(FALSE);
}
}
void CMunpaDialog::ShowMember()
{
m_pMemberInfoBtn->SetActive(TRUE);
m_pApplicateBtn->SetActive(FALSE);
if(HERO->GetMunpaMemberRank() == MUNPA_SEMIMEMBER)
{
m_pSecedeBtn->SetActive(FALSE);
m_pApplicateCancelBtn->SetActive(TRUE);
}
else
{
m_pSecedeBtn->SetActive(TRUE);
m_pApplicateCancelBtn->SetActive(FALSE);
}
m_pManageMemberBtn->SetActive(FALSE);
m_pManageMunpaBtn->SetActive(FALSE);
}
void CMunpaDialog::ShowMaster()
{
m_pMemberInfoBtn->SetActive(FALSE);
m_pApplicateBtn->SetActive(FALSE);
m_pApplicateCancelBtn->SetActive(FALSE);
m_pSecedeBtn->SetActive(FALSE);
m_pManageMemberBtn->SetActive(TRUE);
m_pManageMunpaBtn->SetActive(TRUE);
}
void CMunpaDialog::SetUsedBoardInfo(SEND_MUNPA_BOARD_INFO* pInfo)
{
m_pMgeBoardComboBox->SelectComboText(0);
m_pMunpaUsedBoardsInfo->DeleteAllItems();
for(WORD i=0; i<MAX_MUNPA_BOARD_NUM; ++i)
{
m_pBoardChk[i]->SetChecked(0);
if(pInfo->BoardIDX[i])
{
cRITEMEx * ritem = new cRITEMEx(2);
strcpy(ritem->pString[0], pInfo->BoardNameNum[i].BoardName);
sprintf(ritem->pString[1], "%d", pInfo->BoardNameNum[i].WritingsNum);
ritem->dwID = pInfo->BoardIDX[i];
m_pMunpaUsedBoardsInfo->InsertItem(i, ritem);
}
else
m_pBoardChk[i]->SetActive(FALSE);
}
MUNPAMGR->SetMunpaCurBoardNum(pInfo->CurMunpaBoardNum);
for(i=0; i<MAX_MUNPA_BOARD_NUM; ++i)
{
if(i<pInfo->CurMunpaBoardNum)
{
m_pBoardBtn[i]->SetActive(TRUE);
m_pBoardBtn[i]->SetText(pInfo->BoardNameNum[i].BoardName , MUNPABTN_BASICCOLOR,MUNPABTN_OVERCOLOR,MUNPABTN_PRESSCOLOR );
}
else
{
m_pBoardBtn[i]->SetText("", MUNPABTN_BASICCOLOR,MUNPABTN_OVERCOLOR,MUNPABTN_PRESSCOLOR );
m_pBoardBtn[i]->SetActive(FALSE);
}
}
}
void CMunpaDialog::SetSemiMembersInfo(SEND_MUNPA_SEMIMEMBER_LIST* pInfo)
{
m_pMemberKindComboBox->SelectComboText(0);
ShowPageBtn(pInfo->TotalResultNum, m_pSemiMemberPageBtn);
m_pSemiMembersLCtrl->DeleteAllItems();
if(pInfo->MunpaMemberList[0].id == 0)
{
ResetCurPage();
return;
}
for(int i=0; i<MAX_MUNPA_SEMIMEMBERLIST_NUM; ++i)
{
if(pInfo->MunpaMemberList[i].id)
{
RITEM *ritem = new RITEM(4);
strcpy(ritem->pString[0], pInfo->MunpaMemberList[i].Name);
sprintf(ritem->pString[1], "%d", pInfo->MunpaMemberList[i].Level);
sprintf(ritem->pString[2], "%d", pInfo->MunpaMemberList[i].Famous);
strcpy(ritem->pString[3], pInfo->MunpaMemberList[i].RequestJoinDay);
m_pSemiMembersLCtrl->InsertItem(i, ritem);
}
}
}
void CMunpaDialog::SetMgeSemiMembersInfo(SEND_MUNPA_SEMIMEMBER_LIST* pInfo)
{
m_pMemberKindComboBox->SelectComboText(0);
m_pMgeSemiMembersLCtrl->DeleteAllItems();
ShowPageBtn(pInfo->TotalResultNum, m_pSemiMemberPageBtn);
if(pInfo->MunpaMemberList[0].id == 0)
{
ResetCurPage();
for(int i=0; i<MAX_MUNPA_SEMIMEMBERLIST_NUM; ++i)
m_pMemberChk[i]->SetActive(FALSE);
return;
}
for(int i=0; i<MAX_MUNPA_SEMIMEMBERLIST_NUM; ++i)
{
m_pMemberChk[i]->SetChecked(0);
m_pMemberChk[i]->SetActive(TRUE);
if(pInfo->MunpaMemberList[i].id)
{
cRITEMEx *ritem = new cRITEMEx(4);
strcpy(ritem->pString[0], pInfo->MunpaMemberList[i].Name);
sprintf(ritem->pString[1], "%d", pInfo->MunpaMemberList[i].Level);
sprintf(ritem->pString[2], "%d", pInfo->MunpaMemberList[i].Famous);
strcpy(ritem->pString[3], pInfo->MunpaMemberList[i].RequestJoinDay);
ritem->dwID = pInfo->MunpaMemberList[i].id;
m_pMgeSemiMembersLCtrl->InsertItem(i, ritem);
}
else
m_pMemberChk[i]->SetActive(FALSE);
}
}
void CMunpaDialog::SetRegularMembersInfo(SEND_MUNPA_REGULARMEMBER_LIST* pInfo)
{
ShowPageBtn(pInfo->TotalResultNum, m_pRegularMemberPageBtn);
if(pInfo->MunpaRegularMemberList[0].id == 0)
{
ResetCurPage();
return;
}
m_pMemberKindComboBox->SelectComboText(1);
m_pRegularMembersLCtrl->DeleteAllItems();
for(int i=0; i<MAX_MUNPA_SEMIMEMBERLIST_NUM; ++i)
{
if(pInfo->MunpaRegularMemberList[i].id)
{
cRITEMEx *ritem = new cRITEMEx(7);
strcpy(ritem->pString[0], pInfo->MunpaRegularMemberList[i].Name);
if(pInfo->MunpaRegularMemberList[i].Rank == MUNPA_MASTER)
strcpy(ritem->pString[1], CHATMGR->GetChatMsg(154));
else if(pInfo->MunpaRegularMemberList[i].Rank == MUNPA_VICE_MASTER)
strcpy(ritem->pString[1], CHATMGR->GetChatMsg(157));
else if(pInfo->MunpaRegularMemberList[i].Rank == MUNPA_MEMBER)
strcpy(ritem->pString[1], CHATMGR->GetChatMsg(155));
else if(pInfo->MunpaRegularMemberList[i].Rank == MUNPA_SENIOR)
strcpy(ritem->pString[1], CHATMGR->GetChatMsg(156));
sprintf(ritem->pString[2], "%d", pInfo->MunpaRegularMemberList[i].Level);
sprintf(ritem->pString[3], "%d", pInfo->MunpaRegularMemberList[i].Famous);
if(pInfo->MunpaRegularMemberList[i].bLogin == 0)
strcpy(ritem->pString[4], "OFF");
else
strcpy(ritem->pString[4], "ON");
strcpy(ritem->pString[5], pInfo->MunpaRegularMemberList[i].lastvisitdate);
strcpy(ritem->pString[6], pInfo->MunpaRegularMemberList[i].entrydate);
ritem->dwID = pInfo->MunpaRegularMemberList[i].id;
m_pRegularMembersLCtrl->InsertItem(i, ritem);
}
else
break;
}
}
void CMunpaDialog::SetMgeRegularMembersInfo(SEND_MUNPA_REGULARMEMBER_LIST* pInfo)
{
ShowPageBtn(pInfo->TotalResultNum, m_pRegularMemberPageBtn);
m_pMemberKindComboBox->SelectComboText(1);
if(pInfo->MunpaRegularMemberList[0].id == 0)
{
ResetCurPage();
return;
}
m_pMgeRegularMembersLCtrl->DeleteAllItems();
for(int i=0; i<MAX_MUNPA_REGULARMEMBERLIST_NUM; ++i)
{
m_pMemberChk[i]->SetChecked(FALSE);
m_pMemberChk[i]->SetActive(TRUE);
if(pInfo->MunpaRegularMemberList[i].id)
{
cRITEMEx *ritem = new cRITEMEx(7);
sprintf(ritem->pString[0], "%s", pInfo->MunpaRegularMemberList[i].Name);
if(pInfo->MunpaRegularMemberList[i].Rank == MUNPA_MASTER)
strcpy(ritem->pString[1], CHATMGR->GetChatMsg(154));
else if(pInfo->MunpaRegularMemberList[i].Rank == MUNPA_VICE_MASTER)
strcpy(ritem->pString[1], CHATMGR->GetChatMsg(157));
else if(pInfo->MunpaRegularMemberList[i].Rank == MUNPA_MEMBER)
strcpy(ritem->pString[1], CHATMGR->GetChatMsg(155));
else if(pInfo->MunpaRegularMemberList[i].Rank == MUNPA_SENIOR)
strcpy(ritem->pString[1], CHATMGR->GetChatMsg(156));
else ASSERT(0);
sprintf(ritem->pString[2], "%d", pInfo->MunpaRegularMemberList[i].Level);
sprintf(ritem->pString[3], "%d", pInfo->MunpaRegularMemberList[i].Famous);
if(pInfo->MunpaRegularMemberList[i].bLogin == 0)
strcpy(ritem->pString[4], "OFF");
else
strcpy(ritem->pString[4], "ON");
sprintf(ritem->pString[5], "%s", pInfo->MunpaRegularMemberList[i].lastvisitdate);
sprintf(ritem->pString[6], "%s", pInfo->MunpaRegularMemberList[i].entrydate);
ritem->dwID = pInfo->MunpaRegularMemberList[i].id;
m_pMgeRegularMembersLCtrl->InsertItem(i, ritem);
if(HEROID == pInfo->MunpaRegularMemberList[i].id)
m_pMemberChk[i]->SetActive(FALSE);
}
else
m_pMemberChk[i]->SetActive(FALSE);
}
}
void CMunpaDialog::SetBoardListInfo(SEND_MUNPA_BOARD_LIST_INFO* pInfo)
{
ShowBoardPageBtn(pInfo->TotalPage);
m_pMBL_SubjectList->DeleteAllItems();
if(pInfo->BoardListInfo[0].WritingsIDX == 0)
{
ResetCurPage();
return;
}
char tempsubject[256];
for(int i=0; i<MAX_MUNPA_BOARD_LIST; ++i)
{
if(pInfo->BoardListInfo[i].WritingsIDX)
{
cRITEMEx *ritem = new cRITEMEx(5);
sprintf(ritem->pString[0], "%d", pInfo->BoardListInfo[i].Seq);
tempsubject[0] = 0;
for(int n=0;n<pInfo->BoardListInfo[i].Depth;++n)
{
int len = strlen(tempsubject);
if(len < MAX_REPORTTEXT_SIZE - 10) // 呈公 腹捞 甸咯静扁 窍瘤 臼档废 茄促.
strcat(tempsubject," ");
}
int len = strlen(tempsubject);
int remainlen = 25 - len;//MAX_REPORTTEXT_SIZE - len - 1;
strncpy(&tempsubject[len],pInfo->BoardListInfo[i].Subject,remainlen);
tempsubject[len+remainlen] = 0;
strcpy(ritem->pString[1], tempsubject);
strcpy(ritem->pString[2], pInfo->BoardListInfo[i].WriterName);
sprintf(ritem->pString[3], "%d", pInfo->BoardListInfo[i].Count);
sprintf(ritem->pString[4], "%s",pInfo->BoardListInfo[i].RegDate);
ritem->dwID = pInfo->BoardListInfo[i].WritingsIDX;
m_pMBL_SubjectList->InsertItem(i, ritem);
}
}
}
void CMunpaDialog::GetCheckedIDs(int count,cCheckBox*pChkBtnArray[],cListCtrl* pListCtrl,DWORD* pOutIDs)
{
memset(pOutIDs,0,sizeof(DWORD)*count);
for(int i=0; i<count; ++i)
{
cCheckBox* Chk = pChkBtnArray[i];
if(Chk->IsChecked())
{
cRITEMEx * rItem = (cRITEMEx *)pListCtrl->GetRItem(i);
if(!rItem)
return;
if(rItem->dwID)
{
pOutIDs[i] = rItem->dwID;
}
}
}
}
void CMunpaDialog::CheckedAccept()
{
DWORD IDs[MAX_MUNPA_SEMIMEMBERLIST_NUM];
SelectedMembersIDChk(MAX_MUNPA_SEMIMEMBERLIST_NUM,MUN_MMGEMEMBER1CHK,m_pMgeSemiMembersLCtrl,IDs);
int lastidx = MAX_MUNPA_SEMIMEMBERLIST_NUM;
for(int i=0;i<MAX_MUNPA_SEMIMEMBERLIST_NUM;++i)
{
if(IDs[i] != 0)
lastidx = i;
}
for(i=0;i<MAX_MUNPA_SEMIMEMBERLIST_NUM;++i)
{
if(IDs[i] != 0)
{
BOOL bLast;
if(i==lastidx)
bLast = TRUE;
else
bLast = FALSE;
MUNPAMGR->AddMemberSyn(IDs[i],bLast);
}
}
}
void CMunpaDialog::CheckedDeny()
{
DWORD IDs[MAX_MUNPA_SEMIMEMBERLIST_NUM];
SelectedMembersIDChk(MAX_MUNPA_SEMIMEMBERLIST_NUM,MUN_MMGEMEMBER1CHK,m_pMgeSemiMembersLCtrl,IDs);
int lastidx = MAX_MUNPA_SEMIMEMBERLIST_NUM;
for(int i=0;i<MAX_MUNPA_SEMIMEMBERLIST_NUM;++i)
{
if(IDs[i] != 0)
lastidx = i;
}
for(i=0;i<MAX_MUNPA_SEMIMEMBERLIST_NUM;++i)
{
if(IDs[i] != 0)
{
BOOL bLast;
if(i==lastidx)
bLast = TRUE;
else
bLast = FALSE;
MUNPAMGR->DenyMemberSyn(IDs[i],bLast);
}
}
}
BOOL CMunpaDialog::CheckedChangeRank(DWORD Rank)
{
BOOL state = FALSE;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -