Files
QtHtmlEditor/include/richtexteditordialog.h
2023-12-02 15:39:51 +01:00

43 lines
957 B
C++

#ifndef RICHTEXTEDITORDIALOG_H
#define RICHTEXTEDITORDIALOG_H
#include "richtexteditor.h"
#include <QDialog>
#include <QTextEdit>
#include <QTabWidget>
#include <QVBoxLayout>
class RichTextEditorDialog : public QDialog
{
Q_OBJECT
public:
explicit RichTextEditorDialog(QWidget *parent = nullptr);
~RichTextEditorDialog();
int showDialog();
void setDefaultFont(const QFont &font);
void setText(const QString &text);
QString text(Qt::TextFormat format = Qt::AutoText) const;
private Q_SLOTS:
void tabIndexChanged(int newIndex);
void richTextChanged();
void sourceChanged();
private:
enum TabIndex { RichTextIndex, SourceIndex };
enum State { Clean, RichTextChanged, SourceChanged };
QTabWidget *m_tab_widget;
State m_state;
int m_initialTab;
protected:
RichTextEditor *m_editor;
QTextEdit *m_text_edit;
QVBoxLayout *m_main_layout;
};
#endif // RICHTEXTEDITORDIALOG_H