#ifdef ENABLE_DECODE
#include "subwindows/decoder_selector/subwindow.hpp"
-#include "views/decoder_output/view.hpp"
+#include "views/decoder_binary/view.hpp"
+#include "views/tabular_decoder/view.hpp"
#endif
#include <libsigrokcxx/libsigrokcxx.hpp>
// This view will be the main view if there's no main bar yet
v = make_shared<views::trace::View>(session, (main_bar ? false : true), dock_main);
#ifdef ENABLE_DECODE
- if (type == views::ViewTypeDecoderOutput)
- v = make_shared<views::decoder_output::View>(session, false, dock_main);
+ if (type == views::ViewTypeDecoderBinary)
+ v = make_shared<views::decoder_binary::View>(session, false, dock_main);
+ if (type == views::ViewTypeTabularDecoder)
+ v = make_shared<views::tabular_decoder::View>(session, false, dock_main);
#endif
if (!v)
if (w->minimum_width() > 0)
dock->setMinimumSize(w->minimum_width(), 0);
- w->setFocus();
-
return w;
}
void MainWindow::update_acq_button(Session *session)
{
- int state = session->get_capture_state();
+ int state;
+ QString run_caption;
- const QString run_caption =
- session->using_file_device() ? tr("Reload") : tr("Run");
+ if (session) {
+ state = session->get_capture_state();
+ run_caption = session->using_file_device() ? tr("Reload") : tr("Run");
+ } else {
+ state = Session::Stopped;
+ run_caption = tr("Run");
+ }
const QIcon *icons[] = {&icon_grey_, &icon_red_, &icon_green_};
run_stop_button_->setIcon(*icons[state]);
tr("This session contains unsaved data. Close it anyway?"),
QMessageBox::Yes | QMessageBox::No) == QMessageBox::Yes))
remove_session(session);
+
+ if (sessions_.empty())
+ update_acq_button(nullptr);
}
void MainWindow::on_show_decoder_selector(Session *session)