#pragma once #ifndef ORIGINALWND_H #define ORIGINALWND_H #include #include "DbTreeViewManager.h" #include #include #include #include #include #include #include "gen_interface.h" #include "Src/CameraBind.h" #include "JOriginalMainWnd.h" #include "CameraDistribute.h" //#include "CViewInterface.h" QT_BEGIN_NAMESPACE namespace Ui { class OriginalWnd; } QT_END_NAMESPACE // 3个切换窗口 enum EN_WND_SWITCH { ChartsAnd = 1, MainAndSecondary, SingleCameraOperation }; class OriginalWnd : public QMainWindow { Q_OBJECT public: explicit OriginalWnd(QWidget* parent = nullptr, CameraBind* pCameraBind = nullptr); ~OriginalWnd(); /**相机初始化 */ void CameraBindInit(CameraBind* pCameraBind); /**所有接口初始化 */ void RegFun(); QWidget* getWidgetLeft() const; // 访问 widget 的接口 /**切换配置 * */ void SwitchToConfig(const QString& name, int configId, int menuArrayIndex, bool isMenuArray = true); // 切换不同配置 void switchToHomeConfig(); void switchToProductionConfig(); void switchToDiagnosisConfig(); void switchToDispositionConfig(); void switchToModuleConfig(); void switchToProgramConfig(); void switchToSystemConfig(); void setChineseMode(QMainWindow* OriginalWnd); protected: bool eventFilter(QObject* obj, QEvent* event) override; void timerEvent(QTimerEvent* event) override; void InitForm(); // 初始化表单控件 /**更新当前时间 */ void UpdateTime(); /**释放收尾 */ void Del(); /**切换快捷侧边按钮 */ void RunOrStopSwitch(); private slots: void on_ChartButton_clicked(); void on_DoubleImageButton_clicked(); void on_SingleImageButton_clicked(); void on_startButton_clicked(); void on_stopButton_clicked(); public slots: void onHandleLanguageSignal(const int& data); void JRunFunSlots(ns_module::ST_BUTTON_FUN pra); private: /**设置当前选中窗口 */ void SwitchMainPage(JOriginalMainWnd* pWnd, QToolButton* tooBut); /**创建选中窗口 */ void CreateSwitchMainPage(int nlastIndex = -1); private: Ui::OriginalWnd* ui; /**相机绑定接口 */ std::unique_ptr m_pCameraBind; /**保存当前切换窗口 */ QPointer m_pJOriginalMainWnd; /**树视图管理 */ std::unique_ptr m_pdbTreeViewManager; /**数据库 */ Gen_Interface gen_if; /**相机分配,观察页面以及相机变化 */ CameraDistribute* m_pCameraDistribute; /**Loop 时间 */ int m_nTimerID = -1; /**快捷按钮切换用 */ bool m_isDisabled = true; }; #endif // ORIGINALWND_H