Changed the breakpoint system to use the afore-mentioned system.
[aesalon.git] / src / gui / ProgramDisplay.h
blob3980b70bf48e9d2a5bce5e75d0141059dfcff5c1
1 #ifndef AESALON_GUI_PROGRAM_DISPLAY_H
2 #define AESALON_GUI_PROGRAM_DISPLAY_H
4 #include <QTimer>
6 #include <QMdiSubWindow>
7 #include <QGridLayout>
8 #include <QLineEdit>
9 #include <QLabel>
10 #include <QHBoxLayout>
11 #include <QVBoxLayout>
12 #include <QPushButton>
13 #include <QTabWidget>
14 #include <QCheckBox>
15 #include <QComboBox>
16 #include <QSpinBox>
17 #include <QFormLayout>
19 #include "ProgramBlockDisplay.h"
20 #include "ProgramReferenceDisplay.h"
22 #include "misc/SmartPointer.h"
23 #include "Program.h"
25 namespace Aesalon {
26 namespace GUI {
28 class ProgramDisplay : public QMdiSubWindow { Q_OBJECT
29 private:
30 ProgramBlockDisplay *program_block_display;
31 ProgramReferenceDisplay *program_reference_display;
33 QWidget *launch_widget;
34 QVBoxLayout *launch_layout;
35 QFormLayout *launch_program_layout;
36 QComboBox *launch_program_name;
37 QComboBox *launch_program_arguments;
38 QLabel *launch_port_label;
39 QSpinBox *launch_port;
40 QCheckBox *launch_program_xterm;
41 QPushButton *launch_program_button;
43 QWidget *running_widget;
44 QVBoxLayout *running_layout;
45 QTabWidget *running_tab_bar;
46 QWidget *running_general;
47 QVBoxLayout *running_general_layout;
48 QHBoxLayout *running_general_program_layout;
49 QLabel *running_general_program_label;
50 QLabel *running_general_program_name_label;
52 QTimer *update_timer;
54 Misc::SmartPointer<Program> program;
56 void create_launch_widget();
57 void create_running_widget();
58 public slots:
59 bool close();
60 private slots:
61 void begin_program();
62 public:
63 ProgramDisplay(QWidget *parent = 0);
64 virtual ~ProgramDisplay();
67 } // namespace GUI
68 } // namespace Aesalon
70 #endif