eismultiplexer-qt/mainwindow.h
2025-10-13 14:09:10 +02:00

44 lines
829 B
C++

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <memory>
#include <QCodeEditor>
#include <QPythonCompleter>
#include <QPythonHighlighter>
#include "channelwidget.h"
#include "triggerwidget.h"
namespace Ui
{
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
std::vector<std::shared_ptr<ChannelWidget>> channels;
std::vector<std::shared_ptr<TriggerWidget>> 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:
void enumerateDevices();
void generateExample();
};
#endif // MAINWINDOW_H