Mana
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Private Types | Private Attributes | Static Private Attributes | List of all members

The buy dialog. More...

#include <buydialog.h>

Inheritance diagram for BuyDialog:
Window

Public Member Functions

 BuyDialog (int npcId)
 
 ~BuyDialog () override
 
void reset ()
 Resets the dialog, clearing shop inventory.
 
void setMoney (int amount)
 Sets the amount of available money.
 
void addItem (int id, int amount, int price)
 Adds an item to the shop inventory.
 
void action (const gcn::ActionEvent &event) override
 Called when receiving actions from the widgets.
 
int getNumberOfElements ()
 Returns the number of items in the shop inventory.
 
void valueChanged (const gcn::SelectionEvent &event) override
 Updates the labels according to the selected item.
 
void mouseClicked (gcn::MouseEvent &mouseEvent) override
 Allows for quick-buying by extending double-click events.
 
std::string getElementAt (int i)
 Returns the name of item number i in the shop inventory.
 
void updateButtonsAndLabels ()
 Updates the state of buttons and labels.
 
void setVisible (bool visible) override
 Sets the visibility of this window.
 
- Public Member Functions inherited from Window
 Window (const std::string &caption="Window", bool modal=false, Window *parent=nullptr)
 Constructor.
 
 Window (SkinType skinType, const std::string &caption="Window", bool modal=false, Window *parent=nullptr)
 Constructor that allows customizing the SkinType used by the window.
 
 ~Window () override
 Destructor.
 
void draw (gcn::Graphics *graphics) override
 Draws the window contents.
 
void drawFrame (gcn::Graphics *graphics) override
 Draws the window frame.
 
void setContentSize (int width, int height)
 Sets the size of this window.
 
void setMinimumContentSize (int width, int height)
 Sets the minimum size of the window content.
 
void setLocationRelativeTo (gcn::Widget *widget)
 Sets the location relative to the given widget.
 
void setResizable (bool resize)
 Sets whether or not the window can be resized.
 
void redraw ()
 
void widgetResized (const gcn::Event &event) override
 Called whenever the widget changes size.
 
void widgetHidden (const gcn::Event &event) override
 Called whenever the widget is hidden.
 
void setCloseButton (bool flag)
 Sets whether or not the window has a close button.
 
bool isResizable () const
 Returns whether the window can be resized.
 
void setMinWidth (int width)
 Sets the minimum width of the window.
 
int getMinWidth () const
 
void setMinHeight (int height)
 Sets the minimum height of the window.
 
int getMinHeight () const
 
void setMaxWidth (int width)
 Sets the maximum width of the window.
 
int getMaxWidth () const
 
void setMaxHeight (int height)
 Sets the minimum height of the window.
 
int getMaxHeight () const
 
void setShowTitle (bool flag)
 Sets flag to show a title or not.
 
void setStickyButton (bool flag)
 Sets whether or not the window has a sticky button.
 
void setSticky (bool sticky)
 Sets whether the window is sticky.
 
bool isSticky () const
 Returns whether the window is sticky.
 
void setVisible (bool visible, bool forceSticky)
 Overloads window setVisible by Guichan to allow sticky window handling, or not, if you force the sticky state.
 
bool isDefaultVisible () const
 Returns whether the window is visible by default.
 
void setDefaultVisible (bool save)
 Sets whether the window is visible by default.
 
bool willSaveVisible () const
 Returns whether the window will save it's visibility.
 
void setSaveVisible (bool save)
 Sets whether the window will save it's visibility.
 
WindowgetParentWindow () const
 Returns the parent window.
 
void scheduleDelete ()
 Schedule this window for deletion.
 
void mousePressed (gcn::MouseEvent &event) override
 Starts window resizing when appropriate.
 
void mouseDragged (gcn::MouseEvent &event) override
 Implements window resizing and makes sure the window is not dragged/resized outside of the screen.
 
void mouseMoved (gcn::MouseEvent &event) override
 Implements custom cursor image changing context, based on mouse relative position.
 
void mouseReleased (gcn::MouseEvent &event) override
 When the mouse button has been let go, this ensures that the mouse custom cursor is restored back to it's standard image.
 
void mouseExited (gcn::MouseEvent &event) override
 When the mouse leaves the window this ensures that the custom cursor is restored back to it's standard image.
 
void setWindowName (const std::string &name)
 Sets the name of the window.
 
const std::string & getWindowName () const
 Returns the name of the window.
 
void loadWindowState ()
 Reads the position (and the size for resizable windows) in the configuration based on the given string.
 
void saveWindowState () const
 Saves the window state so that when the window is reloaded, it'll maintain its previous state and location.
 
void setDefaultSize (int defaultX, int defaultY, int defaultWidth, int defaultHeight)
 Set the default win pos and size.
 
void setDefaultSize ()
 Set the default win pos and size to the current ones.
 
void setDefaultSize (int defaultWidth, int defaultHeight, WindowAlignment alignment, int offsetx=0, int offsetY=0)
 Set the default win pos and size.
 
virtual void resetToDefaultSize ()
 Reset the win pos and size to default.
 
void adjustPositionAfterResize (int oldScreenWidth, int oldScreenHeight)
 Adjusts the window position after the application window has been resized.
 
LayoutgetLayout ()
 Gets the layout handler for this window.
 
void clearLayout ()
 Clears the window's layout (useful for redesigning the window).
 
void reflowLayout (int w=0, int h=0)
 Computes the position of the widgets according to the current layout.
 
LayoutCellplace (int x, int y, gcn::Widget *, int w=1, int h=1)
 Adds a widget to the window and sets it at given cell.
 
ContainerPlacer getPlacer (int x, int y)
 Returns a proxy for adding widgets in an inner table of the layout.
 
void center ()
 Positions the window in the center of it's parent.
 
virtual void close ()
 Overrideable functionality for when the window is to close.
 
const SkingetSkin () const
 Returns the Skin used by this window.
 

Static Public Member Functions

static void closeAll ()
 Closes all instances.
 
- Static Public Member Functions inherited from Window
static void setWindowContainer (WindowContainer *windowContainer)
 Sets the window container to be used by new windows.
 
static int getGuiAlpha ()
 Gets the alpha value used by the window, in a Guichan usable format.
 

Private Types

using DialogList = std::list< BuyDialog * >
 

Private Attributes

int mNpcId
 
gcn::Button * mBuyButton
 
gcn::Button * mQuitButton
 
gcn::Button * mAddMaxButton
 
gcn::Button * mIncreaseButton
 
gcn::Button * mDecreaseButton
 
ShopListBoxmShopItemList
 
gcn::ScrollArea * mScrollArea
 
gcn::Label * mMoneyLabel
 
gcn::Label * mQuantityLabel
 
gcn::Slider * mSlider
 
ShopItemsmShopItems
 
int mMoney
 
int mAmountItems
 
int mMaxItems
 

Static Private Attributes

static DialogList instances
 

Additional Inherited Members

- Static Protected Attributes inherited from Window
static int mouseResize = 0
 Active resize handles.
 

Detailed Description

The buy dialog.

Definition at line 40 of file buydialog.h.

Member Typedef Documentation

◆ DialogList

using BuyDialog::DialogList = std::list<BuyDialog *>
private

Definition at line 104 of file buydialog.h.

Constructor & Destructor Documentation

◆ BuyDialog()

BuyDialog::BuyDialog ( int  npcId)

Definition at line 47 of file buydialog.cpp.

◆ ~BuyDialog()

BuyDialog::~BuyDialog ( )
override

Definition at line 118 of file buydialog.cpp.

Member Function Documentation

◆ action()

void BuyDialog::action ( const gcn::ActionEvent &  event)
override

Called when receiving actions from the widgets.

Definition at line 154 of file buydialog.cpp.

◆ addItem()

void BuyDialog::addItem ( int  id,
int  amount,
int  price 
)

Adds an item to the shop inventory.

Definition at line 148 of file buydialog.cpp.

◆ closeAll()

void BuyDialog::closeAll ( )
static

Closes all instances.

Definition at line 306 of file buydialog.cpp.

◆ getElementAt()

std::string BuyDialog::getElementAt ( int  i)

Returns the name of item number i in the shop inventory.

◆ getNumberOfElements()

int BuyDialog::getNumberOfElements ( )

Returns the number of items in the shop inventory.

◆ mouseClicked()

void BuyDialog::mouseClicked ( gcn::MouseEvent &  mouseEvent)
override

Allows for quick-buying by extending double-click events.

Definition at line 224 of file buydialog.cpp.

◆ reset()

void BuyDialog::reset ( )

Resets the dialog, clearing shop inventory.

Definition at line 136 of file buydialog.cpp.

◆ setMoney()

void BuyDialog::setMoney ( int  amount)

Sets the amount of available money.

Definition at line 128 of file buydialog.cpp.

◆ setVisible()

void BuyDialog::setVisible ( bool  visible)
overridevirtual

Sets the visibility of this window.

Reimplemented from Window.

Definition at line 292 of file buydialog.cpp.

◆ updateButtonsAndLabels()

void BuyDialog::updateButtonsAndLabels ( )

Updates the state of buttons and labels.

Definition at line 233 of file buydialog.cpp.

◆ valueChanged()

void BuyDialog::valueChanged ( const gcn::SelectionEvent &  event)
override

Updates the labels according to the selected item.

Definition at line 214 of file buydialog.cpp.

Member Data Documentation

◆ instances

BuyDialog::DialogList BuyDialog::instances
staticprivate

Definition at line 105 of file buydialog.h.

◆ mAddMaxButton

gcn::Button* BuyDialog::mAddMaxButton
private

Definition at line 111 of file buydialog.h.

◆ mAmountItems

int BuyDialog::mAmountItems
private

Definition at line 123 of file buydialog.h.

◆ mBuyButton

gcn::Button* BuyDialog::mBuyButton
private

Definition at line 109 of file buydialog.h.

◆ mDecreaseButton

gcn::Button* BuyDialog::mDecreaseButton
private

Definition at line 113 of file buydialog.h.

◆ mIncreaseButton

gcn::Button* BuyDialog::mIncreaseButton
private

Definition at line 112 of file buydialog.h.

◆ mMaxItems

int BuyDialog::mMaxItems
private

Definition at line 124 of file buydialog.h.

◆ mMoney

int BuyDialog::mMoney
private

Definition at line 122 of file buydialog.h.

◆ mMoneyLabel

gcn::Label* BuyDialog::mMoneyLabel
private

Definition at line 116 of file buydialog.h.

◆ mNpcId

int BuyDialog::mNpcId
private

Definition at line 107 of file buydialog.h.

◆ mQuantityLabel

gcn::Label* BuyDialog::mQuantityLabel
private

Definition at line 117 of file buydialog.h.

◆ mQuitButton

gcn::Button* BuyDialog::mQuitButton
private

Definition at line 110 of file buydialog.h.

◆ mScrollArea

gcn::ScrollArea* BuyDialog::mScrollArea
private

Definition at line 115 of file buydialog.h.

◆ mShopItemList

ShopListBox* BuyDialog::mShopItemList
private

Definition at line 114 of file buydialog.h.

◆ mShopItems

ShopItems* BuyDialog::mShopItems
private

Definition at line 120 of file buydialog.h.

◆ mSlider

gcn::Slider* BuyDialog::mSlider
private

Definition at line 118 of file buydialog.h.


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