You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
1.1 KiB
C++
71 lines
1.1 KiB
C++
/*!
|
|
\file cspoiler.h
|
|
|
|
*/
|
|
|
|
#ifndef CSPOILER_H
|
|
#define CSPOILER_H
|
|
|
|
|
|
#include <QFrame>
|
|
#include <QGridLayout>
|
|
#include <QParallelAnimationGroup>
|
|
#include <QScrollArea>
|
|
#include <QToolButton>
|
|
#include <QWidget>
|
|
|
|
|
|
/*!
|
|
\brief
|
|
|
|
\class cSpoiler cspoiler.h "cspoiler.h"
|
|
*/
|
|
class cSpoiler : public QWidget
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
/*!
|
|
\brief
|
|
|
|
\fn cSpoiler
|
|
\param parent
|
|
*/
|
|
explicit cSpoiler(QWidget *parent = nullptr);
|
|
|
|
/*!
|
|
\brief
|
|
|
|
\fn setTitle
|
|
\param title
|
|
*/
|
|
void setTitle(const QString& title);
|
|
/*!
|
|
\brief
|
|
|
|
\fn setContentLayout
|
|
\param contentLayout
|
|
*/
|
|
void setContentLayout(QLayout& contentLayout);
|
|
/*!
|
|
\brief
|
|
|
|
\fn setContentWidget
|
|
\param contentWidget
|
|
*/
|
|
void setContentWidget(QWidget* contentWidget);
|
|
|
|
signals:
|
|
|
|
public slots:
|
|
|
|
private:
|
|
QGridLayout m_mainLayout; /*!< TODO: describe */
|
|
QToolButton m_toggleButton; /*!< TODO: describe */
|
|
QFrame m_headerLine; /*!< TODO: describe */
|
|
QParallelAnimationGroup m_toggleAnimation; /*!< TODO: describe */
|
|
QScrollArea m_contentArea; /*!< TODO: describe */
|
|
int m_animationDuration{300}; /*!< TODO: describe */
|
|
};
|
|
|
|
#endif // CSPOILER_H
|