Pokered Save Editor 2
Pokemon Red & Blue save file editor - Qt 6 C++/QML
Loading...
Searching...
No Matches
ItemMarketEntryPlayerItem Class Reference

Market row for one of the player's own items being sold. More...

#include <itemmarketentryplayeritem.h>

Inheritance diagram for ItemMarketEntryPlayerItem:
Collaboration diagram for ItemMarketEntryPlayerItem:

Public Member Functions

 ItemMarketEntryPlayerItem (ItemStorageBox *toBox, Item *toItem)
virtual ~ItemMarketEntryPlayerItem ()
virtual QString _name () override
 Subtype: compute the display name.
virtual int _inStockCount () override
 Subtype: compute the owned/sellable count.
virtual bool _canSell () override
 Subtype: compute sellability.
virtual int _itemWorth () override
 Subtype: compute the unit value.
virtual QString _whichType () override
 Subtype: report the type label.
virtual int onCartLeft () override
 Subtype: how many more may be added.
virtual int stackCount () override
 Subtype: new stack slots needed (see note above).
virtual QString infoText () override
 Detailed-tooltip body (default none).
virtual void checkout () override
 Sell the item (remove qty, credit balance).
Public Member Functions inherited from ItemMarketEntry
 ItemMarketEntry (int compatMoneyCurrency=CompatEither, int compatBuyMode=CompatEither)
virtual ~ItemMarketEntry ()
virtual void initOnce ()
 One-time setup for the first instance of a type.
void finishConstruction ()
 Finalise construction (register the instance).
QString name ()
 Cached display name.
int inStockCount ()
 Cached owned/sellable count.
bool canSell ()
 Cached sellable flag.
int itemWorth ()
 Cached unit value.
QString whichType ()
 Cached type label.
bool requestFilter ()
 Helper: does this row pass the current mode filter?
int getCartCount ()
 Current cart quantity (backs onCart).
int cartWorth ()
 Value of the cart quantity.
int totalStackCount ()
 Stacks across all rows of this type.
int totalWorth ()
 Signed worth across ALL rows (sell +, buy -).
int moneyLeftover ()
 Money remaining if this checks out.
virtual bool canCheckout ()
 Can this row alone check out?
bool canAnyCheckout ()
 Can any row check out?
void setCartCount (int val)
 Set the cart quantity (backs onCart).
void reUpdateConstants ()
 Clear the cached mode-stable values.

Public Attributes

QPointer< ItemStorageBoxtoBox
 The box the item is sold from (auto-nulls if freed).
QPointer< ItemtoItem
 The item being sold (auto-nulls if freed).
Public Attributes inherited from ItemMarketEntry
int compatMoneyCurrency = CompatEither
 Money/coins compatibility.
int compatBuyMode = CompatEither
 Buy/sell compatibility.
int onCart = 0
 Backing cart quantity.
bool exclude = false
 Exclude from aggregate totals (see note).
int viewTag = -1
 Left-list view filter tag.
int cartSignVal = 1
 Net contribution sign (-1 buy / +1 sell).
QHash< int, QVariant > cache
 Memoised mode-stable values (see HashKey* enum).

Static Public Attributes

static constexpr const char * type = "playerItem"
 This row's type key.
Static Public Attributes inherited from ItemMarketEntry
static bool * isMoneyCurrency = nullptr
 Shared: current currency mode.
static bool * isBuyMode = nullptr
 Shared: current buy/sell mode.
static PlayerBasicsplayer = nullptr
 Shared: player money/coins.
static QHash< QString, QVector< ItemMarketEntry * > * > instances
 All rows, grouped by type.
static QVector< ItemMarketEntry * > instancesCombined
 All rows, flat.
static QVector< ItemMarketEntry * > * activeList = nullptr
 Current model's live rows.

Additional Inherited Members

Public Types inherited from ItemMarketEntry
enum  { CompatNo = 0 , CompatYes , CompatEither }
 Three-state compatibility for the mode filters. More...
enum  {
  HashKeyName , HashKeyInStockCount , HashKeyCanSell , HashKeyItemWorth ,
  HashKeyWhichType
}
 Cache keys for the memoised mode-stable values. More...
Protected Member Functions inherited from ItemMarketEntry
void doReUpdateConstants ()
 Force a refresh of the "mode-stable" values.
Protected Attributes inherited from ItemMarketEntry
 : void onCartChanged()
 < Quantity on the cart.

Detailed Description

Market row for one of the player's own items being sold.

An ItemMarketEntry subtype for selling a player-owned toItem (from toBox) for money or coins. checkout() removes the sold quantity and credits the balance. See ItemMarketEntry.

Definition at line 38 of file itemmarketentryplayeritem.h.

Constructor & Destructor Documentation

◆ ItemMarketEntryPlayerItem()

ItemMarketEntryPlayerItem::ItemMarketEntryPlayerItem ( ItemStorageBox * toBox,
Item * toItem )

◆ ~ItemMarketEntryPlayerItem()

ItemMarketEntryPlayerItem::~ItemMarketEntryPlayerItem ( )
virtual

Definition at line 40 of file itemmarketentryplayeritem.cpp.

Member Function Documentation

◆ _canSell()

bool ItemMarketEntryPlayerItem::_canSell ( )
overridevirtual

Subtype: compute sellability.

Implements ItemMarketEntry.

Definition at line 70 of file itemmarketentryplayeritem.cpp.

References ItemMarketEntry::requestFilter(), and toItem.

◆ _inStockCount()

int ItemMarketEntryPlayerItem::_inStockCount ( )
overridevirtual

Subtype: compute the owned/sellable count.

Implements ItemMarketEntry.

Definition at line 62 of file itemmarketentryplayeritem.cpp.

References ItemMarketEntry::requestFilter(), and toItem.

◆ _itemWorth()

int ItemMarketEntryPlayerItem::_itemWorth ( )
overridevirtual

Subtype: compute the unit value.

Implements ItemMarketEntry.

Definition at line 82 of file itemmarketentryplayeritem.cpp.

References ItemMarketEntry::isMoneyCurrency, ItemMarketEntry::requestFilter(), and toItem.

◆ _name()

QString ItemMarketEntryPlayerItem::_name ( )
overridevirtual

Subtype: compute the display name.

Implements ItemMarketEntry.

Definition at line 50 of file itemmarketentryplayeritem.cpp.

References ItemMarketEntry::requestFilter(), and toItem.

◆ _whichType()

QString ItemMarketEntryPlayerItem::_whichType ( )
overridevirtual

Subtype: report the type label.

Implements ItemMarketEntry.

Definition at line 101 of file itemmarketentryplayeritem.cpp.

References type.

◆ checkout()

void ItemMarketEntryPlayerItem::checkout ( )
overridevirtual

◆ infoText()

QString ItemMarketEntryPlayerItem::infoText ( )
overridevirtual

Detailed-tooltip body (default none).

Reimplemented from ItemMarketEntry.

Definition at line 42 of file itemmarketentryplayeritem.cpp.

References toItem.

◆ onCartLeft()

int ItemMarketEntryPlayerItem::onCartLeft ( )
overridevirtual

◆ stackCount()

int ItemMarketEntryPlayerItem::stackCount ( )
overridevirtual

Subtype: new stack slots needed (see note above).

Implements ItemMarketEntry.

Definition at line 129 of file itemmarketentryplayeritem.cpp.

Member Data Documentation

◆ toBox

QPointer<ItemStorageBox> ItemMarketEntryPlayerItem::toBox

The box the item is sold from (auto-nulls if freed).

Definition at line 59 of file itemmarketentryplayeritem.h.

Referenced by checkout(), and ItemMarketEntryPlayerItem().

◆ toItem

QPointer<Item> ItemMarketEntryPlayerItem::toItem

The item being sold (auto-nulls if freed).

Definition at line 60 of file itemmarketentryplayeritem.h.

Referenced by _canSell(), _inStockCount(), _itemWorth(), _name(), checkout(), infoText(), ItemMarketEntryPlayerItem(), and onCartLeft().

◆ type

const char* ItemMarketEntryPlayerItem::type = "playerItem"
staticconstexpr

This row's type key.

Definition at line 61 of file itemmarketentryplayeritem.h.

Referenced by _whichType().


The documentation for this class was generated from the following files: