Commit c6b0ede5 authored by 独孤朲's avatar 独孤朲 Committed by GitHub

Merge pull request #1776 from mercury233/patch-1

fix and update del deck and clear deck
parents 1dc1e961 ec267d3b
...@@ -51,9 +51,11 @@ bool DeckBuilder::OnEvent(const irr::SEvent& event) { ...@@ -51,9 +51,11 @@ bool DeckBuilder::OnEvent(const irr::SEvent& event) {
case irr::gui::EGET_BUTTON_CLICKED: { case irr::gui::EGET_BUTTON_CLICKED: {
switch(id) { switch(id) {
case BUTTON_CLEAR_DECK: { case BUTTON_CLEAR_DECK: {
deckManager.current_deck.main.clear(); mainGame->gMutex.Lock();
deckManager.current_deck.extra.clear(); mainGame->SetStaticText(mainGame->stQMessage, 310, mainGame->textFont, (wchar_t*)dataManager.GetSysString(1339));
deckManager.current_deck.side.clear(); mainGame->PopupElement(mainGame->wQuery);
mainGame->gMutex.Unlock();
is_clearing = true;
break; break;
} }
case BUTTON_SORT_DECK: { case BUTTON_SORT_DECK: {
...@@ -97,12 +99,16 @@ bool DeckBuilder::OnEvent(const irr::SEvent& event) { ...@@ -97,12 +99,16 @@ bool DeckBuilder::OnEvent(const irr::SEvent& event) {
break; break;
} }
case BUTTON_DELETE_DECK: { case BUTTON_DELETE_DECK: {
if(mainGame->cbDBDecks->getSelected() == -1) int sel = mainGame->cbDBDecks->getSelected();
if(sel == -1)
break; break;
mainGame->gMutex.Lock(); mainGame->gMutex.Lock();
mainGame->SetStaticText(mainGame->stQMessage, 310, mainGame->textFont, (wchar_t*)dataManager.GetSysString(1337)); wchar_t textBuffer[256];
myswprintf(textBuffer, L"%ls\n%ls", mainGame->cbDBDecks->getItem(sel), dataManager.GetSysString(1337));
mainGame->SetStaticText(mainGame->stQMessage, 310, mainGame->textFont, (wchar_t*)textBuffer);
mainGame->PopupElement(mainGame->wQuery); mainGame->PopupElement(mainGame->wQuery);
mainGame->gMutex.Unlock(); mainGame->gMutex.Unlock();
is_deleting = true;
break; break;
} }
case BUTTON_LEAVE_GAME: { case BUTTON_LEAVE_GAME: {
...@@ -181,22 +187,35 @@ bool DeckBuilder::OnEvent(const irr::SEvent& event) { ...@@ -181,22 +187,35 @@ bool DeckBuilder::OnEvent(const irr::SEvent& event) {
} }
case BUTTON_YES: { case BUTTON_YES: {
mainGame->HideElement(mainGame->wQuery); mainGame->HideElement(mainGame->wQuery);
int sel = mainGame->cbDBDecks->getSelected(); if(!mainGame->is_building || mainGame->is_siding)
if(deckManager.DeleteDeck(deckManager.current_deck, mainGame->cbDBDecks->getItem(sel))) { break;
mainGame->cbDBDecks->removeItem(sel); if(is_deleting) {
int count = mainGame->cbDBDecks->getItemCount(); int sel = mainGame->cbDBDecks->getSelected();
if(sel >= count) if (deckManager.DeleteDeck(deckManager.current_deck, mainGame->cbDBDecks->getItem(sel))) {
sel = count - 1; mainGame->cbDBDecks->removeItem(sel);
mainGame->cbDBDecks->setSelected(sel); int count = mainGame->cbDBDecks->getItemCount();
if(sel != -1) if (sel >= count)
deckManager.LoadDeck(mainGame->cbDBDecks->getItem(sel)); sel = count - 1;
mainGame->stACMessage->setText(dataManager.GetSysString(1338)); mainGame->cbDBDecks->setSelected(sel);
mainGame->PopupElement(mainGame->wACMessage, 20); if (sel != -1)
deckManager.LoadDeck(mainGame->cbDBDecks->getItem(sel));
mainGame->stACMessage->setText(dataManager.GetSysString(1338));
mainGame->PopupElement(mainGame->wACMessage, 20);
}
is_deleting = false;
}
if(is_clearing) {
deckManager.current_deck.main.clear();
deckManager.current_deck.extra.clear();
deckManager.current_deck.side.clear();
is_clearing = false;
} }
break; break;
} }
case BUTTON_NO: { case BUTTON_NO: {
mainGame->HideElement(mainGame->wQuery); mainGame->HideElement(mainGame->wQuery);
is_deleting = false;
is_clearing = false;
break; break;
} }
} }
......
...@@ -41,6 +41,8 @@ public: ...@@ -41,6 +41,8 @@ public:
size_t pre_extrac; size_t pre_extrac;
size_t pre_sidec; size_t pre_sidec;
code_pointer draging_pointer; code_pointer draging_pointer;
bool is_deleting;
bool is_clearing;
std::unordered_map<int, int>* filterList; std::unordered_map<int, int>* filterList;
std::vector<code_pointer> results; std::vector<code_pointer> results;
......
...@@ -318,6 +318,7 @@ ...@@ -318,6 +318,7 @@
!system 1336 刻度: !system 1336 刻度:
!system 1337 是否删除这个卡组? !system 1337 是否删除这个卡组?
!system 1338 删除成功 !system 1338 删除成功
!system 1339 是否清空正在编辑的卡组?
!system 1340 是否保存录像? !system 1340 是否保存录像?
!system 1341 保存 !system 1341 保存
!system 1342 录像文件: !system 1342 录像文件:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment