Commit 3f1c9568 authored by fallenstardust's avatar fallenstardust

点击其他按钮时收起卡组管理

选择卡组时暂时禁用卡组管理按钮
parent 331c1a7c
...@@ -52,15 +52,22 @@ void ShowHostPrepareDeckManage() { ...@@ -52,15 +52,22 @@ void ShowHostPrepareDeckManage() {
}); });
lstCategories->setSelected(mainGame->deckBuilder.prev_category); lstCategories->setSelected(mainGame->deckBuilder.prev_category);
mainGame->deckBuilder.RefreshDeckList(); mainGame->deckBuilder.RefreshDeckList();
mainGame->deckBuilder.RefreshReadonly(mainGame->deckBuilder.prev_category); mainGame->btnNewCategory->setEnabled(false);
mainGame->lstDecks->setSelected(mainGame->deckBuilder.prev_deck); mainGame->btnRenameCategory->setEnabled(false);
mainGame->btnDeleteCategory->setEnabled(false);
mainGame->btnNewDeck->setEnabled(false);
mainGame->btnRenameDeck->setEnabled(false);
mainGame->btnDMDeleteDeck->setEnabled(false);
mainGame->btnMoveDeck->setEnabled(false);
mainGame->btnCopyDeck->setEnabled(false);
mainGame->lstDecks->setSelected(mainGame->cbDeckSelect->getSelected());
mainGame->PopupElement(mainGame->wDeckManage); mainGame->PopupElement(mainGame->wDeckManage);
} }
void ChangeHostPrepareDeckCategory(int catesel) { void ChangeHostPrepareDeckCategory(int catesel) {
mainGame->RefreshDeck(mainGame->cbCategorySelect, mainGame->cbDeckSelect); mainGame->RefreshDeck(mainGame->cbCategorySelect, mainGame->cbDeckSelect);
mainGame->cbDeckSelect->setSelected(0); mainGame->cbDeckSelect->setSelected(0);
mainGame->deckBuilder.RefreshReadonly(catesel);
deckManager.LoadDeck(mainGame->cbCategorySelect, mainGame->cbDeckSelect); deckManager.LoadDeck(mainGame->cbCategorySelect, mainGame->cbDeckSelect);
mainGame->deckBuilder.is_modified = false; mainGame->deckBuilder.is_modified = false;
mainGame->deckBuilder.prev_category = catesel; mainGame->deckBuilder.prev_category = catesel;
...@@ -120,6 +127,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) { ...@@ -120,6 +127,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
break; break;
} }
case BUTTON_JOIN_HOST: { case BUTTON_JOIN_HOST: {
mainGame->HideElement(mainGame->wDeckManage);
bot_mode = false; bot_mode = false;
mainGame->TrimText(mainGame->ebJoinHost); mainGame->TrimText(mainGame->ebJoinHost);
mainGame->TrimText(mainGame->ebJoinPort); mainGame->TrimText(mainGame->ebJoinPort);
...@@ -164,6 +172,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) { ...@@ -164,6 +172,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
break; break;
} }
case BUTTON_JOIN_CANCEL: { case BUTTON_JOIN_CANCEL: {
mainGame->HideElement(mainGame->wDeckManage);
mainGame->HideElement(mainGame->wLanWindow); mainGame->HideElement(mainGame->wLanWindow);
mainGame->ShowElement(mainGame->wMainMenu); mainGame->ShowElement(mainGame->wMainMenu);
if(exit_on_return) if(exit_on_return)
...@@ -208,6 +217,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) { ...@@ -208,6 +217,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
break; break;
} }
case BUTTON_HP_DUELIST: { case BUTTON_HP_DUELIST: {
mainGame->HideElement(mainGame->wDeckManage);
mainGame->cbCategorySelect->setEnabled(true); mainGame->cbCategorySelect->setEnabled(true);
mainGame->cbDeckSelect->setEnabled(true); mainGame->cbDeckSelect->setEnabled(true);
mainGame->btnHostDeckSelect->setEnabled(true); mainGame->btnHostDeckSelect->setEnabled(true);
...@@ -215,6 +225,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) { ...@@ -215,6 +225,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
break; break;
} }
case BUTTON_HP_OBSERVER: { case BUTTON_HP_OBSERVER: {
mainGame->HideElement(mainGame->wDeckManage);
DuelClient::SendPacketToServer(CTOS_HS_TOOBSERVER); DuelClient::SendPacketToServer(CTOS_HS_TOOBSERVER);
break; break;
} }
...@@ -241,6 +252,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) { ...@@ -241,6 +252,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
} }
UpdateDeck(); UpdateDeck();
DuelClient::SendPacketToServer(CTOS_HS_READY); DuelClient::SendPacketToServer(CTOS_HS_READY);
mainGame->HideElement(mainGame->wDeckManage);
mainGame->cbCategorySelect->setEnabled(false); mainGame->cbCategorySelect->setEnabled(false);
mainGame->cbDeckSelect->setEnabled(false); mainGame->cbDeckSelect->setEnabled(false);
mainGame->btnHostDeckSelect->setEnabled(false); mainGame->btnHostDeckSelect->setEnabled(false);
...@@ -248,6 +260,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) { ...@@ -248,6 +260,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
} }
case BUTTON_HP_NOTREADY: { case BUTTON_HP_NOTREADY: {
DuelClient::SendPacketToServer(CTOS_HS_NOTREADY); DuelClient::SendPacketToServer(CTOS_HS_NOTREADY);
mainGame->HideElement(mainGame->wDeckManage);
mainGame->cbCategorySelect->setEnabled(true); mainGame->cbCategorySelect->setEnabled(true);
mainGame->cbDeckSelect->setEnabled(true); mainGame->cbDeckSelect->setEnabled(true);
mainGame->btnHostDeckSelect->setEnabled(true); mainGame->btnHostDeckSelect->setEnabled(true);
...@@ -255,6 +268,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) { ...@@ -255,6 +268,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
} }
case BUTTON_HP_START: { case BUTTON_HP_START: {
DuelClient::SendPacketToServer(CTOS_HS_START); DuelClient::SendPacketToServer(CTOS_HS_START);
mainGame->HideElement(mainGame->wDeckManage);
break; break;
} }
case BUTTON_HP_CANCEL: { case BUTTON_HP_CANCEL: {
...@@ -264,6 +278,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) { ...@@ -264,6 +278,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
mainGame->btnJoinCancel->setEnabled(true); mainGame->btnJoinCancel->setEnabled(true);
mainGame->btnStartBot->setEnabled(true); mainGame->btnStartBot->setEnabled(true);
mainGame->btnBotCancel->setEnabled(true); mainGame->btnBotCancel->setEnabled(true);
mainGame->HideElement(mainGame->wDeckManage);
mainGame->HideElement(mainGame->wHostPrepare); mainGame->HideElement(mainGame->wHostPrepare);
if(bot_mode) if(bot_mode)
mainGame->ShowElement(mainGame->wSinglePlay); mainGame->ShowElement(mainGame->wSinglePlay);
...@@ -752,6 +767,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) { ...@@ -752,6 +767,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
if(!caller->isEnabled()) if(!caller->isEnabled())
break; break;
mainGame->env->setFocus(mainGame->wHostPrepare); mainGame->env->setFocus(mainGame->wHostPrepare);
mainGame->HideElement(mainGame->wDeckManage);
if(static_cast<irr::gui::IGUICheckBox*>(caller)->isChecked()) { if(static_cast<irr::gui::IGUICheckBox*>(caller)->isChecked()) {
if(mainGame->cbCategorySelect->getSelected() == -1 || mainGame->cbDeckSelect->getSelected() == -1 || if(mainGame->cbCategorySelect->getSelected() == -1 || mainGame->cbDeckSelect->getSelected() == -1 ||
!deckManager.LoadDeck(mainGame->cbCategorySelect, mainGame->cbDeckSelect)) { !deckManager.LoadDeck(mainGame->cbCategorySelect, mainGame->cbDeckSelect)) {
......
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