ManaPlus
insertcarddialog.cpp
Go to the documentation of this file.
1 /*
2  * The ManaPlus Client
3  * Copyright (C) 2004-2009 The Mana World Development Team
4  * Copyright (C) 2009-2010 The Mana Developers
5  * Copyright (C) 2011-2019 The ManaPlus Developers
6  * Copyright (C) 2019-2021 Andrei Karas
7  *
8  * This file is part of The ManaPlus Client.
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program. If not, see <http://www.gnu.org/licenses/>.
22  */
23 
25 
26 #include "gui/models/shopitems.h"
27 
28 #include "gui/widgets/button.h"
30 
31 #include "net/inventoryhandler.h"
32 
33 #include "utils/gettext.h"
34 #include "utils/stringutils.h"
35 
37 
38 #include "debug.h"
39 
41  const Item *const item) :
43  mItemIndex(itemIndex)
44 {
45  // TRANSLATORS: insert card dialog name
46  setWindowName(_("Insert card"));
47  if (item != nullptr)
48  {
49  // TRANSLATORS: insert card dialog name
50  setCaption(strprintf(_("Insert card %s"),
51  item->getName().c_str()));
52  }
53  else
54  {
55  // TRANSLATORS: insert card dialog name
56  setCaption(strprintf(_("Insert card %s"),
57  ""));
58  }
59 }
60 
62 {
63  // TRANSLATORS: insert card dialog button
64  mSellButton->setCaption(_("Insert"));
67 }
68 
70 {
71  if (mAmountItems <= 0 || mAmountItems > mMaxItems)
72  return;
73 
74  const int selectedItem = mShopItemList->getSelected();
75  const ShopItem *const item = mShopItems->at(selectedItem);
76  if (item == nullptr)
77  return;
80 }
const bool Advanced_false
Definition: advanced.h:30
void setCaption(const std::string &caption)
Definition: button.h:214
void adjustSize()
Definition: button.cpp:799
void sellAction(const ActionEvent &event)
InsertCardDialog(const int itemIndex, const Item *const item)
Definition: item.h:50
int getInvIndex() const
Definition: item.h:165
std::string getName() const
Definition: item.cpp:140
int getSelected() const
Definition: listbox.h:168
virtual void insertCard(const int cardIndex, const int itemIndex) const =0
int mMaxItems
Definition: selldialog.h:150
ShopItems * mShopItems
Definition: selldialog.h:147
Button * mSellButton
Definition: selldialog.h:136
ShopListBox * mShopItemList
Definition: selldialog.h:142
void setMergeDuplicates(const bool b)
Definition: shopitems.h:142
ShopItem * at(const size_t i) const
Definition: shopitems.cpp:129
void setWindowName(const std::string &name)
Definition: window.h:355
void setCaption(const std::string &caption)
Definition: window.h:531
virtual void scheduleDelete()
Definition: window.cpp:831
#define _(s)
Definition: gettext.h:35
Net::InventoryHandler * inventoryHandler
Definition: net.cpp:89
const bool IsSell_false
Definition: issell.h:30
#define A_UNUSED
Definition: localconsts.h:160
std::string strprintf(const char *const format,...)