X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fmainwindow.cpp;h=42f79bbc876757b3a56b2bd200d40789eac23305;hp=c75b3a9e59a5e940cbb2da11168c98e577be2b7d;hb=f9abf97e78bc4825d80926b0ebc6cbaef40768b1;hpb=a5ea63c219065d019195171f3c7694ee0123d5ed diff --git a/pv/mainwindow.cpp b/pv/mainwindow.cpp index c75b3a9e..42f79bbc 100644 --- a/pv/mainwindow.cpp +++ b/pv/mainwindow.cpp @@ -23,7 +23,6 @@ #endif #include -#include #include #include @@ -61,8 +60,8 @@ #include #include -using boost::shared_ptr; using std::list; +using std::shared_ptr; namespace pv { @@ -123,6 +122,7 @@ void MainWindow::setup_ui() "MainWindow", "&Open...", 0, QApplication::UnicodeUTF8)); action_open->setIcon(QIcon::fromTheme("document-open", QIcon(":/icons/document-open.png"))); + action_open->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_O)); action_open->setObjectName(QString::fromUtf8("actionOpen")); menu_file->addAction(action_open); @@ -131,6 +131,7 @@ void MainWindow::setup_ui() "MainWindow", "&Save As...", 0, QApplication::UnicodeUTF8)); action_save_as->setIcon(QIcon::fromTheme("document-save-as", QIcon(":/icons/document-save-as.png"))); + action_save_as->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_S)); action_save_as->setObjectName(QString::fromUtf8("actionSaveAs")); menu_file->addAction(action_save_as); @@ -220,7 +221,7 @@ void MainWindow::setup_ui() "MainWindow", "&Decoders", 0, QApplication::UnicodeUTF8)); pv::widgets::DecoderMenu *const menu_decoders_add = - new pv::widgets::DecoderMenu(menu_decoders); + new pv::widgets::DecoderMenu(menu_decoders, true); menu_decoders_add->setTitle(QApplication::translate( "MainWindow", "&Add", 0, QApplication::UnicodeUTF8)); connect(menu_decoders_add, SIGNAL(decoder_selected(srd_decoder*)), @@ -253,10 +254,12 @@ void MainWindow::setup_ui() // Setup the toolbar QToolBar *const toolbar = new QToolBar(tr("Main Toolbar"), this); toolbar->addAction(action_open); + toolbar->addAction(action_save_as); toolbar->addSeparator(); toolbar->addAction(action_view_zoom_in); toolbar->addAction(action_view_zoom_out); toolbar->addAction(action_view_zoom_fit); + toolbar->addAction(action_view_zoom_one_to_one); addToolBar(toolbar); // Setup the sampling bar @@ -299,11 +302,9 @@ void MainWindow::update_device_list() if (std::find(devices.begin(), devices.end(), selected_device) == devices.end()) devices.push_back(selected_device); + assert(selected_device); - _sampling_bar->set_device_list(devices); - - if (selected_device) - _sampling_bar->set_selected_device(selected_device); + _sampling_bar->set_device_list(devices, selected_device); } void MainWindow::load_file(QString file_name) @@ -316,6 +317,9 @@ void MainWindow::load_file(QString file_name) _session.set_file(file_name.toStdString()); } catch(QString e) { show_session_error(tr("Failed to load ") + file_name, e); + _session.set_default_device(); + update_device_list(); + return; } update_device_list();