vtabwidget.h 809 B

123456789101112131415161718192021222324252627282930313233
  1. #ifndef VTABWIDGET_H
  2. #define VTABWIDGET_H
  3. #include <QTabWidget>
  4. #include <QJsonObject>
  5. #include <QString>
  6. class VTabWidget : public QTabWidget
  7. {
  8. Q_OBJECT
  9. public:
  10. explicit VTabWidget(QWidget *parent = 0);
  11. signals:
  12. public slots:
  13. void openFile(QJsonObject fileJson);
  14. void editFile();
  15. void saveFile();
  16. void readFile();
  17. private slots:
  18. void handleTabCloseRequest(int index);
  19. private:
  20. void openWelcomePage();
  21. int insertTabWithData(int index, QWidget *page, const QString &label, const QJsonObject &tabData);
  22. int appendTabWithData(QWidget *page, const QString &label, const QJsonObject &tabData);
  23. int findTabByFile(const QString &path, const QString &name);
  24. int openFileInTab(const QString &path, const QString &name, bool modifiable);
  25. };
  26. #endif // VTABWIDGET_H