mirror of
https://invent.kde.org/multimedia/kdenlive
synced 2025-12-06 00:09:59 +01:00
Show shortcuts in tooltip (thanks to krita devs)
CCBUG: 351721
This commit is contained in:
@@ -284,6 +284,21 @@ MainWindow::MainWindow(const QString &MltPath, const QUrl &Url, const QString &
|
||||
new TimelineSearch(this);
|
||||
new ScopeManager(this);
|
||||
|
||||
// Add shortcut to action tooltips
|
||||
QList< KActionCollection * > collections = KActionCollection::allCollections();
|
||||
for (int i = 0; i < collections.count(); ++i) {
|
||||
KActionCollection *coll = collections.at(i);
|
||||
foreach( QAction* tempAction, coll->actions()) {
|
||||
// find the shortcut pattern and delete (note the preceding space in the RegEx)
|
||||
QString strippedTooltip = tempAction->toolTip().remove(QRegExp("\\s\\(.*\\)"));
|
||||
// append shortcut if it exists for action
|
||||
if (tempAction->shortcut() == QKeySequence(0))
|
||||
tempAction->setToolTip( strippedTooltip);
|
||||
else
|
||||
tempAction->setToolTip( strippedTooltip + " (" + tempAction->shortcut().toString() + ")");
|
||||
}
|
||||
}
|
||||
|
||||
setupGUI();
|
||||
|
||||
emit GUISetupDone();
|
||||
|
||||
@@ -130,14 +130,11 @@ Monitor::Monitor(Kdenlive::MonitorId id, MonitorManager *manager, QWidget *paren
|
||||
m_playIcon = QIcon::fromTheme("media-playback-start");
|
||||
m_pauseIcon = QIcon::fromTheme("media-playback-pause");
|
||||
|
||||
|
||||
if (id != Kdenlive::DvdMonitor) {
|
||||
m_toolbar->addAction(QIcon::fromTheme("go-first"), i18n("Set zone start"), this, SLOT(slotSetZoneStart()));
|
||||
m_toolbar->addAction(QIcon::fromTheme("go-last"), i18n("Set zone end"), this, SLOT(slotSetZoneEnd()));
|
||||
m_toolbar->addAction(manager->getAction("mark_in"));
|
||||
m_toolbar->addAction(manager->getAction("mark_out"));
|
||||
}
|
||||
|
||||
m_toolbar->addAction(QIcon::fromTheme("media-seek-backward"), i18n("Rewind"), this, SLOT(slotRewind()));
|
||||
//m_toolbar->addAction(QIcon::fromTheme("media-skip-backward"), i18n("Rewind 1 frame"), this, SLOT(slotRewindOneFrame()));
|
||||
m_toolbar->addAction(manager->getAction("monitor_seek_backward"));
|
||||
|
||||
QToolButton *playButton = new QToolButton(m_toolbar);
|
||||
m_playMenu = new QMenu(i18n("Play..."), this);
|
||||
@@ -150,9 +147,7 @@ Monitor::Monitor(Kdenlive::MonitorId id, MonitorManager *manager, QWidget *paren
|
||||
playButton->setMenu(m_playMenu);
|
||||
playButton->setPopupMode(QToolButton::MenuButtonPopup);
|
||||
m_toolbar->addWidget(playButton);
|
||||
|
||||
//m_toolbar->addAction(QIcon::fromTheme("media-skip-forward"), i18n("Forward 1 frame"), this, SLOT(slotForwardOneFrame()));
|
||||
m_toolbar->addAction(QIcon::fromTheme("media-seek-forward"), i18n("Forward"), this, SLOT(slotForward()));
|
||||
m_toolbar->addAction(manager->getAction("monitor_seek_forward"));
|
||||
|
||||
playButton->setDefaultAction(m_playAction);
|
||||
|
||||
|
||||
@@ -56,6 +56,11 @@ void MonitorManager::setDocument(KdenliveDoc *doc)
|
||||
m_document = doc;
|
||||
}
|
||||
|
||||
QAction *MonitorManager::getAction(QString name)
|
||||
{
|
||||
return pCore->window()->action(name.toLatin1());
|
||||
}
|
||||
|
||||
void MonitorManager::initMonitors(Monitor *clipMonitor, Monitor *projectMonitor, RecMonitor *recMonitor)
|
||||
{
|
||||
m_clipMonitor = clipMonitor;
|
||||
@@ -397,12 +402,12 @@ void MonitorManager::setupActions()
|
||||
pCore->window()->addAction("seek_zone_end", zoneEnd);
|
||||
connect(zoneEnd, &QAction::triggered, this, &MonitorManager::slotZoneEnd);
|
||||
|
||||
QAction *markIn = new QAction(i18n("Set Zone In"), this);
|
||||
QAction *markIn = new QAction(QIcon::fromTheme("go-first"), i18n("Set Zone In"), this);
|
||||
markIn->setShortcut(Qt::Key_I);
|
||||
pCore->window()-> addAction("mark_in", markIn);
|
||||
pCore->window()->addAction("mark_in", markIn);
|
||||
connect(markIn, &QAction::triggered, this, &MonitorManager::slotSetInPoint);
|
||||
|
||||
QAction *markOut = new QAction(i18n("Set Zone Out"), this);
|
||||
QAction *markOut = new QAction(QIcon::fromTheme("go-last"), i18n("Set Zone Out"), this);
|
||||
markOut->setShortcut(Qt::Key_O);
|
||||
pCore->window()-> addAction("mark_out", markOut);
|
||||
connect(markOut, &QAction::triggered, this, &MonitorManager::slotSetOutPoint);
|
||||
|
||||
@@ -62,7 +62,8 @@ public:
|
||||
void setConsumerProperty(const QString &name, const QString &value);
|
||||
BinController *binController();
|
||||
Mlt::Profile *profile();
|
||||
|
||||
/** @brief Return a mainwindow action from its id name. */
|
||||
QAction *getAction(QString name);
|
||||
Monitor *clipMonitor();
|
||||
Monitor *projectMonitor();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user