代码拉取完成,页面将自动刷新
同步操作将从 liyuanbhu/JHPhoto_BASIC 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QSettings>
#include <QMainWindow>
#include <QScrollArea>
#include <QSpinBox>
#include <QKeyEvent>
#include <QTimer>
#include "DisplayWidget/ToolBarMeasure.h"
#include "DisplayWidget/ToolBarZoom.h"
#include "DisplayWidget/ToolBarProperty.h"
#include "Camera/CameraCommon/ToolBarCamera.h"
#include "Camera/CameraCommon/CameraImage_RGB24.h"
#include "Camera/CameraCommon/CameraImage_RGB32.h"
#include "Camera/CameraCommon/IndustryCamera.h"
#include "Camera/CameraCommon/CameraFactory.h"
#include "Nosepiece/NosepieceCommon/ToolbarNosepiece.h"
#include "Nosepiece/NosepieceCommon/LensManager.h"
#include "Nosepiece/NosepieceCommon/ToolBarLens.h"
#include "AboutDialog.h"
#include "Nosepiece/NosepieceCommon/LensManageDialog.h"
namespace Ui {
class MainWindow;
}
class DisplayWidget;
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
enum ZOOM{ LEN0 = 0, LEN1 = 1, LEN2, LEN3, LEN4, LEN5 };
explicit MainWindow(QWidget *parent = nullptr) ;
~MainWindow() Q_DECL_OVERRIDE;
QImage getImage();
public slots:
void clearAllMark();
protected:
void closeEvent(QCloseEvent *event) Q_DECL_OVERRIDE;
void keyPressEvent(QKeyEvent *event) Q_DECL_OVERRIDE;
private:
void setupCamera(QSettings &settings);
void setupToolBar(QSettings &settings);
void setupStatusBar();
void setupScale(QSettings &settings);
void setupNosepiece(QSettings &settings);
void savePassword(QSettings &settings);
QString configFilePath();
private slots:
void toggleCameraState();
void changePassword();
void setClibMode(bool on);
void showCalibDialog();
void showLensManageDialog();
void loadImage();
void saveImageWithMark();
void saveImageWithoutMark();
void openDefaultCamera();
void closeCamera();
/// Camera 相关的 slots
void changeRuler(int old, int len);
void showAbout();
void setDefaultAppInfo();
void updateCameraImage(const uint8_t *imgBuf, int stride, QSize size, AVPixelFormat format);
void updateCameraFrame(Qly::VideoFrame frame);
void updateMousePos(QPointF &p);
void onTimeoutFrameRateCounter();//用来更新真实的 FrameRate
protected:
Ui::MainWindow *ui = nullptr;
/// 显示相关
QScrollArea *m_scrollArea = nullptr;
Qly::DisplayWidget *m_centerWidget = nullptr;
Qly::ToolBarMeasure *m_toolbarMeasure = nullptr;
Qly::ToolBarZoom *m_toolbarZoom = nullptr;
Qly::ToolBarProperty *m_toolbarProperty = nullptr;
QLabel * m_labelMousePosition = nullptr;
QLabel * m_labelCameraName = nullptr;
QLabel * m_labelCameraResolution = nullptr;
QLabel * m_labelCameraFrameCount = nullptr;
QLabel * m_labelCameraFrameRate = nullptr;
QLabel * m_labelCameraPixelFormat = nullptr;
QTimer * m_timerStatusBar = nullptr;
/// 物镜相关
// ToolBarNosepiece *m_toolbarNosepiece;
Qly::ToolBarLens * m_toolbarLens = nullptr;
Qly::LensManageDialog * m_lensDialog = nullptr;
/// 相机相关
Qly::ToolBarCamera *m_toolbarCamera = nullptr;
Qly::CameraImage * m_cameraImage = nullptr;
Qly::IndustryCamera * m_camera = nullptr;
Qly::CameraFactory * m_cameraFind = nullptr;
AboutDialog *m_aboutDialog = nullptr;
QString m_password;
bool m_saveImage;
/// 以下是公司信息,在派生类里会设置这些内容
QString m_appName;
QString m_companyName;
QString m_author;
QString m_website;
QString m_email;
QString m_version;
QString m_phoneNumber;
QIcon m_appIcon;
};
#endif // MAINWINDOW_H
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。