Add initial project structure with essential files including .gitignore, application resources, and various model and view components for the application. Implemented asynchronous parsing support and database structure checks.
This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
#ifndef EDITPDFWIDGET_H
|
||||
#define EDITPDFWIDGET_H
|
||||
|
||||
#include <QWidget>
|
||||
#include <QVBoxLayout>
|
||||
#include <QTabWidget>
|
||||
#include "documentprocessor.h"
|
||||
#include "../model/titleinscriptionsmodel.h"
|
||||
|
||||
class MainController;
|
||||
class SpecificationController;
|
||||
class SpecificationTableModel;
|
||||
|
||||
class EditPDFWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit EditPDFWidget(QWidget *parent = nullptr);
|
||||
explicit EditPDFWidget(MainController *controller, QWidget *parent = nullptr);
|
||||
|
||||
// Методы для работы с данными
|
||||
void setData(ComponentTableModel *componentModel, ProjectParamTableModel *projectParamModel);
|
||||
void updateAllViews();
|
||||
|
||||
// Методы для работы с надписями титульного листа
|
||||
TitleInscriptionsModel* getTitleInscriptionsModel() const;
|
||||
|
||||
// Методы для работы с перечнем элементов
|
||||
PerechenTableModel* getPerechenTableModel() const;
|
||||
|
||||
// Методы для экспорта
|
||||
bool exportCurrentDocument(const QString &filePath = QString());
|
||||
bool exportAllDocuments(const QString &basePath = QString());
|
||||
|
||||
private:
|
||||
void setUp();
|
||||
void setWidgets();
|
||||
void setUpLayout();
|
||||
void setUpConnections();
|
||||
|
||||
QTabWidget* m_tabWidget;
|
||||
|
||||
// Процессоры документов
|
||||
PerechenProcessor* m_perechenProcessor;
|
||||
SpecificationProcessor* m_specificationProcessor;
|
||||
SpecificationPCBProcessor* m_specificationPCBProcessor;
|
||||
VedomostProcessor* m_vedomostProcessor;
|
||||
|
||||
// Виджеты документов
|
||||
DocumentEditWidget* m_perechenEditWidget;
|
||||
DocumentEditWidget* m_specificationEditWidget;
|
||||
DocumentEditWidget* m_specificationPCBEditWidget;
|
||||
DocumentEditWidget* m_vedomostEditWidget;
|
||||
|
||||
// Модели данных
|
||||
ComponentTableModel* m_componentModel;
|
||||
ProjectParamTableModel* m_projectParamModel;
|
||||
MainController* m_controller;
|
||||
|
||||
signals:
|
||||
// Сигнал изменения типа документа для синхронизации с PreviewPdfWidget
|
||||
void documentTypeChanged(const QString &documentType);
|
||||
|
||||
// TODO: Добавить сигналы экспорта когда будет реализован экспорт
|
||||
// signals:
|
||||
// void documentExported(const QString &documentType, const QString &filePath);
|
||||
// void exportError(const QString &documentType, const QString &error);
|
||||
};
|
||||
|
||||
#endif // EDITPDFWIDGET_H
|
||||
Reference in New Issue
Block a user