mainmenu: added cache actions

This commit is contained in:
itsmattkc
2020-05-15 15:09:08 +10:00
parent 2039067fdc
commit a40eaa1ed5
2 changed files with 46 additions and 1 deletions
+33
View File
@@ -180,6 +180,14 @@ MainMenu::MainMenu(MainWindow *parent) :
playback_loop_item_ = playback_menu_->AddItem("loop", this, &MainMenu::LoopTriggered);
playback_loop_item_->setCheckable(true);
//
// SEQUENCE MENU
//
sequence_menu_ = new Menu(this, this, &MainMenu::SequenceMenuAboutToShow);
sequence_cache_item_ = sequence_menu_->AddItem("seqcache", this, &MainMenu::SequenceCacheTriggered);
sequence_cache_in_to_out_item_ = sequence_menu_->AddItem("seqcacheinout", this, &MainMenu::SequenceCacheInOutTriggered);
//
// WINDOW MENU
//
@@ -360,6 +368,16 @@ void MainMenu::PlaybackMenuAboutToShow()
playback_loop_item_->setChecked(Config::Current()["Loop"].toBool());
}
void MainMenu::SequenceMenuAboutToShow()
{
TimeBasedPanel* p = PanelManager::instance()->MostRecentlyFocused<TimeBasedPanel>();
bool can_cache_sequence = (p && p->GetConnectedViewer());
sequence_cache_item_->setEnabled(can_cache_sequence);
sequence_cache_in_to_out_item_->setEnabled(can_cache_sequence);
}
void MainMenu::WindowMenuAboutToShow()
{
// Remove any previous items
@@ -591,6 +609,16 @@ void MainMenu::OpenRecentItemTriggered()
Core::instance()->OpenProjectFromRecentList(static_cast<QAction*>(sender())->data().toInt());
}
void MainMenu::SequenceCacheTriggered()
{
qDebug() << "STUB";
}
void MainMenu::SequenceCacheInOutTriggered()
{
qDebug() << "STUB";
}
void MainMenu::Retranslate()
{
// MenuShared is not a QWidget and therefore does not receive a LanguageEvent, we use MainMenu's to update it
@@ -659,6 +687,11 @@ void MainMenu::Retranslate()
playback_shuttleright_item_->setText(tr("Shuttle Right"));
playback_loop_item_->setText(tr("Loop"));
// Sequence menu
sequence_menu_->setTitle(tr("&Sequence"));
sequence_cache_item_->setText(tr("Cache Entire Sequence"));
sequence_cache_in_to_out_item_->setText(tr("Cache Sequence In/Out"));
// Window menu
window_menu_->setTitle("&Window");
window_maximize_panel_item_->setText(tr("Maximize Panel"));
+13 -1
View File
@@ -85,10 +85,15 @@ private slots:
void ToolsMenuAboutToShow();
/**
* @brief PlaybackMenuAboutToShow
* @brief Slot triggered just before the Playback menu shows
*/
void PlaybackMenuAboutToShow();
/**
* @brief Slot triggered just before the Sequence menu shows
*/
void SequenceMenuAboutToShow();
/**
* @brief Slot triggered just before the Window menu shows
*/
@@ -172,6 +177,9 @@ private slots:
void OpenRecentItemTriggered();
void SequenceCacheTriggered();
void SequenceCacheInOutTriggered();
private:
/**
* @brief Set strings based on the current application language.
@@ -241,6 +249,10 @@ private:
QAction* playback_shuttleright_item_;
QAction* playback_loop_item_;
Menu* sequence_menu_;
QAction* sequence_cache_item_;
QAction* sequence_cache_in_to_out_item_;
Menu* window_menu_;
QAction* window_menu_separator_;
QAction* window_maximize_panel_item_;