vnote/src/widgets/widgetsfactory.h
2021-07-05 21:51:50 +08:00

59 lines
1.7 KiB
C++

#ifndef WIDGETSFACTORY_H
#define WIDGETSFACTORY_H
class QMenu;
class QWidget;
class QLineEdit;
class QString;
class QComboBox;
class QCheckBox;
class QSpinBox;
class QToolButton;
class QDoubleSpinBox;
class QFormLayout;
class QPlainTextEdit;
class QRadioButton;
namespace vnotex
{
class LineEditWithSnippet;
class WidgetsFactory
{
public:
WidgetsFactory() = delete;
static QMenu *createMenu(QWidget *p_parent = nullptr);
static QMenu *createMenu(const QString &p_title, QWidget *p_parent = nullptr);
static QLineEdit *createLineEdit(QWidget *p_parent = nullptr);
static QLineEdit *createLineEdit(const QString &p_contents, QWidget *p_parent = nullptr);
static LineEditWithSnippet *createLineEditWithSnippet(QWidget *p_parent = nullptr);
static LineEditWithSnippet *createLineEditWithSnippet(const QString &p_contents, QWidget *p_parent = nullptr);
static QComboBox *createComboBox(QWidget *p_parent = nullptr);
static QCheckBox *createCheckBox(const QString &p_text, QWidget *p_parent = nullptr);
static QRadioButton *createRadioButton(const QString &p_text, QWidget *p_parent = nullptr);
static QSpinBox *createSpinBox(QWidget *p_parent = nullptr);
static QDoubleSpinBox *createDoubleSpinBox(QWidget *p_parent = nullptr);
static QToolButton *createToolButton(QWidget *p_parent = nullptr);
static QFormLayout *createFormLayout(QWidget *p_parent = nullptr);
static QPlainTextEdit *createPlainTextConsole(QWidget *p_parent = nullptr);
static QPlainTextEdit *createPlainTextEdit(QWidget *p_parent = nullptr);
};
} // ns vnotex
#endif // WIDGETSFACTORY_H