logplus/logPlus/mainwindow.h
2025-11-21 10:14:28 +08:00

96 lines
2.4 KiB
C++

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QDockWidget>
#include <QTextEdit>
#include <QPushButton>
#include <QKeyEvent>
#include <QStackedWidget>
#include "qtprojectwidgets.h"
//#include "qtcenterwidgets.h"
#include "mainwindowcurve.h"
#include "customtabwidget.h"
#include "ConsoleOutputWidget.h"
#include "PropertyWidget.h"
#include "CallManage.h"
#pragma execution_character_set("utf-8")
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = nullptr);
~MainWindow();
private:
Ui::MainWindow *ui;
public:
//工具栏
QAction* m_newAc = nullptr; //新建
QAction* m_openAc = nullptr; //打开
QAction* m_compileAc = nullptr; //
QAction* m_runAc = nullptr;//
QAction* m_debugAc = nullptr; //
QAction* m_grepAc = nullptr; //
QAction* m_loadAc = nullptr; //加载
//停靠栏
QStackedWidget *m_stackedWidget_Center = nullptr;//中间工作区stack
//QDockWidget *m_projectView = nullptr; //左侧工程区
//QDockWidget *m_propertyView = nullptr; //属性区
//QDockWidget *m_logView = nullptr; //日志区
//QDockWidget *m_gdbView = nullptr; //调试区
//子页面
QtProjectWidgets *m_projectWidgets; //左侧工程区
//MainWindowNew *m_centerWidgets; //中间工作区
CustomTabWidget *m_centerWidgets;
PropertyWidget *m_propertyWidget;//属性
ConsoleOutputWidget *m_consoleOutputWidget;//日志
public:
//样式
void loadStyle(const QString &qssFile);
void initTitleBar(); //初始化菜单
void initToolBar(); //初始化工具栏
void initProjectView(); //初始化左侧工程区
void initWorkSpaceView(); //初始化工作区
void dockLayout(); //停靠
void ReadConfig();
CallManage *getInstanceCallManage();
public slots:
void s_New();
void s_Open();
void s_CloseProject();
void s_Risize();
void s_AddOne();
void s_SaveImage();
void s_DrawImg();
void s_DrawLine();
//可视解释
void s_showView();
void s_ShowCurve(QString strSlfName, QString strName);//曲线数据查看
void s_ShowTable(QString strSlfName, QString strName);//表格数据查看
void s_WelllogInformation(QString strSlfName, QString strName);//编辑测井信息
};
#endif // MAINWINDOW_H