geode/loader/include/Geode/ui/MDPopup.hpp

34 lines
1,020 B
C++
Raw Normal View History

#pragma once
#include "MDTextArea.hpp"
#include "Popup.hpp"
namespace geode {
/**
2023-01-24 17:07:15 -05:00
* FLAlertLayer with support for Markdown. See MDTextArea
* for details on what features of MD are supported.
*/
2022-10-30 14:59:20 -04:00
class MDPopup :
public Popup<
std::string const&, std::string const&, char const*, char const*,
2023-02-08 10:25:07 -05:00
utils::MiniFunction<void(bool)>> {
protected:
2023-02-08 10:25:07 -05:00
utils::MiniFunction<void(bool)> m_onClick = nullptr;
bool setup(
2022-10-30 14:59:20 -04:00
std::string const& title, std::string const& info, char const* btn1, char const* btn2,
2023-02-08 10:25:07 -05:00
utils::MiniFunction<void(bool)> onClick
) override;
void onBtn(CCObject*);
static float estimateHeight(std::string const& content);
2022-10-30 14:59:20 -04:00
public:
static MDPopup* create(
2022-10-30 14:59:20 -04:00
std::string const& title, std::string const& content, char const* btn1,
2023-02-08 10:25:07 -05:00
char const* btn2 = nullptr, utils::MiniFunction<void(bool)> onClick = nullptr
);
};
}