supercell-wx/scwx-qt/source/scwx/qt/ui/collapsible_group.hpp
2023-06-25 00:58:51 -05:00

43 lines
711 B
C++

#pragma once
#include <QFrame>
namespace Ui
{
class CollapsibleGroup;
}
namespace scwx
{
namespace qt
{
namespace ui
{
class CollapsibleGroupImpl;
class CollapsibleGroup : public QFrame
{
Q_OBJECT
public:
explicit CollapsibleGroup(QWidget* parent = nullptr);
explicit CollapsibleGroup(const QString& title, QWidget* parent = nullptr);
~CollapsibleGroup();
void SetContentsLayout(QLayout* contents);
void SetTitle(const QString& title);
public slots:
void Collapse();
void Expand();
private:
friend class CollapsibleGroupImpl;
std::unique_ptr<CollapsibleGroupImpl> p;
Ui::CollapsibleGroup* ui;
};
} // namespace ui
} // namespace qt
} // namespace scwx