#ifndef MAINWINDOW_H #define MAINWINDOW_H #include #include #include #include #include #include "channelwidget.h" #include "triggerwidget.h" namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q_OBJECT std::vector> channels; std::vector> triggers; Ui::MainWindow *ui; QCodeEditor codeEditor; QPythonHighlighter highligter; QPythonCompleter completer; signals: void channelStateChanged(uint16_t device, uint16_t channel); public: explicit MainWindow(QWidget *parent = nullptr); ~MainWindow(); private slots: void onActionOpenTriggered(); void onActionSaveTriggered(); void onActionSaveAsTriggered(); private: void enumerateDevices(); void generateExample(); void updateStatus(); QString currentFilePath; bool isFileModified; }; #endif // MAINWINDOW_H