summaryrefslogtreecommitdiff
path: root/src/gui/widgets/popup.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/widgets/popup.h')
-rw-r--r--src/gui/widgets/popup.h193
1 files changed, 0 insertions, 193 deletions
diff --git a/src/gui/widgets/popup.h b/src/gui/widgets/popup.h
deleted file mode 100644
index 92fbaf78a..000000000
--- a/src/gui/widgets/popup.h
+++ /dev/null
@@ -1,193 +0,0 @@
-/*
- * The ManaPlus Client
- * Copyright (C) 2004-2009 The Mana World Development Team
- * Copyright (C) 2009-2010 The Mana Developers
- * Copyright (C) 2011-2017 The ManaPlus Developers
- * Copyright (C) 2009 Aethyra Development Team
- *
- * This file is part of The ManaPlus Client.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef GUI_WIDGETS_POPUP_H
-#define GUI_WIDGETS_POPUP_H
-
-#include "gui/widgets/container.h"
-
-#include "listeners/mouselistener.h"
-#include "listeners/widgetlistener.h"
-
-class ImageCollection;
-class Skin;
-class WindowContainer;
-
-/**
- * A light version of the Window class. Particularly suited for popup type
- * functionality that doesn't need to be resized or moved around by the mouse
- * once created, but only needs to display some simple content, like a static
- * message.
- *
- * Popups, in general, shouldn't also need to update their content once
- * created, although this is not an explicit requirement to use the popup
- * class.
- *
- * \ingroup GUI
- */
-class Popup notfinal : public Container,
- public MouseListener,
- public WidgetListener
-{
- public:
- /**
- * Constructor. Initializes the title to the given text and hooks
- * itself into the popup container.
- *
- * @param name A human readable name for the popup. Only useful for
- * debugging purposes.
- * @param skin The location where the Popup's skin XML can be found.
- */
- explicit Popup(const std::string &name = "",
- std::string skin = "");
-
- A_DELETE_COPY(Popup)
-
- /**
- * Destructor. Deletes all the added widgets.
- */
- virtual ~Popup();
-
- /**
- * Sets the window container to be used by new popups.
- */
- static void setWindowContainer(WindowContainer *const windowContainer);
-
- /**
- * Draws the popup.
- */
- void draw(Graphics *const graphics) override A_NONNULL(2);
-
- void safeDraw(Graphics *const graphics) override A_NONNULL(2);
-
- /**
- * Sets the size of this popup.
- */
- void setContentSize(int width, int height);
-
- /**
- * Sets the location relative to the given widget.
- */
- void setLocationRelativeTo(const Widget *const widget);
-
- void mouseMoved(MouseEvent &event) override;
-
- /**
- * Sets the minimum width of the popup.
- */
- void setMinWidth(const int width);
-
- int getMinWidth() const noexcept2 A_WARN_UNUSED
- { return mMinWidth; }
-
- /**
- * Sets the minimum height of the popup.
- */
- void setMinHeight(const int height);
-
- int getMinHeight() const noexcept2 A_WARN_UNUSED
- { return mMinHeight; }
-
- /**
- * Sets the maximum width of the popup.
- */
- void setMaxWidth(const int width);
-
- int getMaxWidth() const noexcept2 A_WARN_UNUSED
- { return mMaxWidth; }
-
- /**
- * Sets the minimum height of the popup.
- */
- void setMaxHeight(const int height);
-
- int getMaxHeight() const noexcept2 A_WARN_UNUSED
- { return mMaxHeight; }
-
- /**
- * Gets the padding of the popup. The padding is the distance between
- * the popup border and the content.
- *
- * @return The padding of the popup.
- * @see setPadding
- */
- int getPadding() const noexcept2 A_WARN_UNUSED
- { return mPadding; }
-
- void setPadding(int padding) noexcept2
- { mPadding = padding; }
-
- /**
- * Sets the name of the popup. This is only useful for debug purposes.
- */
- void setPopupName(const std::string &name) noexcept2
- { mPopupName = name; }
-
- const std::string &getPopupName() const noexcept2
- { return mPopupName; }
-
- /**
- * Schedule this popup for deletion. It will be deleted at the start
- * of the next logic update.
- */
- void scheduleDelete();
-
- // Inherited from BasicContainer
-
- Rect getChildrenArea() override;
-
- /**
- * Sets the location to display the popup. Tries to horizontally center
- * the popup and provide a vertical buffer between the given point and
- * the popup. Prevents the popup from extending off-screen, if
- * possible.
- */
- void position(const int x, const int y);
-
- void hide();
-
- void widgetResized(const Event &event) override;
-
- void widgetMoved(const Event &event) override final;
-
- bool isPopupVisible() const noexcept2
- { return mVisible == Visible_true; }
-
- void postInit() override
- { mInit = true; }
-
- protected:
- int mPadding; /**< Holds the padding of the popup. */
- Skin *mSkin; /**< Skin in use by this popup */
-
- private:
- std::string mPopupName; /**< Name of the popup */
- ImageCollection *mVertexes A_NONNULLPOINTER;
- int mMinWidth; /**< Minimum popup width */
- int mMinHeight; /**< Minimum popup height */
- int mMaxWidth; /**< Maximum popup width */
- int mMaxHeight; /**< Maximum popup height */
- bool mInit;
-};
-
-#endif // GUI_WIDGETS_POPUP_H