初始化:图形化界面骨架(文件选择、语法高亮、自动缩进、查找/替换)
This commit is contained in:
53
mainwindow.h
Normal file
53
mainwindow.h
Normal file
@@ -0,0 +1,53 @@
|
||||
#pragma once
|
||||
|
||||
#include <QMainWindow>
|
||||
|
||||
class FileBrowserWidget;
|
||||
class CodeEditorWidget;
|
||||
class CompileProcessManager;
|
||||
|
||||
class MainWindow : public QMainWindow
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit MainWindow(QWidget *parent = nullptr);
|
||||
~MainWindow();
|
||||
|
||||
private slots:
|
||||
void onActionNewFile();
|
||||
void onActionOpenFile();
|
||||
void onActionSaveFile();
|
||||
void onActionExit();
|
||||
|
||||
void onActionBuild();
|
||||
void onActionRun();
|
||||
|
||||
// 后端编译结果回调
|
||||
void onCompileFinished(const QString &stdoutText,
|
||||
const QString &stderrText,
|
||||
int exitCode);
|
||||
|
||||
private:
|
||||
void createActions();
|
||||
void createMenus();
|
||||
void setupCentralWidgets();
|
||||
void connectSignals();
|
||||
|
||||
private:
|
||||
// UI 部件
|
||||
FileBrowserWidget *m_fileBrowser = nullptr;
|
||||
CodeEditorWidget *m_codeEditor = nullptr;
|
||||
|
||||
// 后端模块
|
||||
CompileProcessManager *m_compileManager = nullptr;
|
||||
|
||||
// 菜单动作
|
||||
QAction *m_actNew = nullptr;
|
||||
QAction *m_actOpen = nullptr;
|
||||
QAction *m_actSave = nullptr;
|
||||
QAction *m_actExit = nullptr;
|
||||
|
||||
QAction *m_actBuild = nullptr;
|
||||
QAction *m_actRun = nullptr;
|
||||
};
|
||||
Reference in New Issue
Block a user