diff options
Diffstat (limited to 'gui/wxmain.hpp')
-rw-r--r-- | gui/wxmain.hpp | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/gui/wxmain.hpp b/gui/wxmain.hpp index 8068784..9b3db1e 100644 --- a/gui/wxmain.hpp +++ b/gui/wxmain.hpp @@ -58,30 +58,49 @@ public: void onRunCompile(wxCommandEvent&); void onCodeDisassemble(wxCommandEvent&); - void onMeasureTimer(wxTimerEvent& te); + void onPaint(wxPaintEvent&); + void onMeasureTimer(wxTimerEvent&); private: + // Set to true if connected and running bool m_is_running = false; + wxComboBox *m_device_combo = nullptr; wxStyledTextCtrl *m_text_editor = nullptr; wxTextCtrl *m_compile_output = nullptr; wxControl *m_signal_area = nullptr; wxMenuItem *m_run_measure = nullptr; + wxMenuItem *m_run_draw_samples = nullptr; wxTimer *m_measure_timer = nullptr; wxStatusBar *m_status_bar = nullptr; wxMenuBar *m_menu_bar = nullptr; wxComboBox *m_rate_select = nullptr; + + // File handle for logging output samples + // Not null when logging is enabled wxFileOutputStream *m_conv_result_log = nullptr; + // File path of currently opened file + // Empty if new file wxString m_open_file_path; + // File path for temporary files (e.g. compiled ELF) + // Set by compile action wxString m_temp_file_name; + // Device interface + // Not null if connected stmdsp::device *m_device = nullptr; + stmdsp::adcsample_t *m_device_samples = nullptr; + stmdsp::adcsample_t *m_device_samples_input = nullptr; + // WAV data for signal generator + // Not null when a WAV is loaded wav::clip *m_wav_clip = nullptr; bool tryDevice(); void prepareEditor(); wxString compileEditorCode(); wxMenu *loadTemplates(); + // Updates control availabilities based on device connection + void updateMenuOptions(); }; #endif // WXMAIN_HPP_ |