Merge pull request #995 from manongjohn/set_markers_to_selected_range
Set Start/Stop Markers enhancement
This commit is contained in:
commit
ae7d1082c2
4 changed files with 39 additions and 4 deletions
|
@ -2038,6 +2038,8 @@ void MainWindow::defineActions() {
|
|||
createMenuXsheetAction(MI_SetAutoMarkers, QT_TR_NOOP("Set Auto Markers"), "");
|
||||
createMenuXsheetAction(MI_PreviewThis,
|
||||
QT_TR_NOOP("Set Markers to Current Frame"), "");
|
||||
createMenuXsheetAction(MI_PreviewSelected,
|
||||
QT_TR_NOOP("Set Markers to Selected Range"), "");
|
||||
createMenuXsheetAction(MI_ToggleTaggedFrame,
|
||||
QT_TR_NOOP("Toggle Navigation Tag"), "",
|
||||
"toggle_nav_tag");
|
||||
|
|
|
@ -152,6 +152,7 @@
|
|||
#define MI_ClearMarkers "MI_ClearMarkers"
|
||||
#define MI_SetAutoMarkers "MI_SetAutoMarkers"
|
||||
#define MI_PreviewThis "MI_PreviewThis"
|
||||
#define MI_PreviewSelected "MI_PreviewSelected"
|
||||
|
||||
#define MI_PasteNew "MI_PasteNew"
|
||||
#define MI_Autorenumber "MI_Autorenumber"
|
||||
|
|
|
@ -2729,6 +2729,27 @@ public:
|
|||
|
||||
//============================================================
|
||||
|
||||
class PreviewSelected final : public MenuItemHandler {
|
||||
public:
|
||||
PreviewSelected() : MenuItemHandler(MI_PreviewSelected) {}
|
||||
|
||||
void execute() override {
|
||||
TApp *app = TApp::instance();
|
||||
TSelection *selection = app->getCurrentSelection()->getSelection();
|
||||
if (!selection) return;
|
||||
TCellSelection *cellSelection = dynamic_cast<TCellSelection *>(selection);
|
||||
if (!cellSelection) return;
|
||||
int row0, col0, row1, col1;
|
||||
cellSelection->getSelectedCells(row0, col0, row1, col1);
|
||||
int r0, r1, step;
|
||||
XsheetGUI::getPlayRange(r0, r1, step);
|
||||
XsheetGUI::setPlayRange(row0, row1, step);
|
||||
TApp::instance()->getCurrentXsheetViewer()->update();
|
||||
}
|
||||
} PreviewSelected;
|
||||
|
||||
//============================================================
|
||||
|
||||
class ToggleTaggedFrame final : public MenuItemHandler {
|
||||
public:
|
||||
ToggleTaggedFrame() : MenuItemHandler(MI_ToggleTaggedFrame) {}
|
||||
|
|
|
@ -1225,6 +1225,9 @@ void RowArea::mouseMoveEvent(QMouseEvent *event) {
|
|||
o->path(PredefinedPath::END_PLAY_RANGE).translated(base1);
|
||||
|
||||
if (!m_tooltip.isEmpty()) return;
|
||||
|
||||
TXsheet *xsh = m_viewer->getXsheet();
|
||||
|
||||
if (startArrow.contains(m_pos))
|
||||
m_tooltip = tr("Playback Start Marker");
|
||||
else if (endArrow.contains(m_pos))
|
||||
|
@ -1235,11 +1238,11 @@ void RowArea::mouseMoveEvent(QMouseEvent *event) {
|
|||
.arg((isRootBonePinned) ? " (Root)" : "");
|
||||
else if (o->rect(PredefinedRect::NAVIGATION_TAG_AREA)
|
||||
.adjusted(0, 0, -frameAdj.x(), -frameAdj.y())
|
||||
.contains(mouseInCell)) {
|
||||
TXsheet *xsh = m_viewer->getXsheet();
|
||||
.contains(mouseInCell) &&
|
||||
xsh->isFrameTagged(m_row)) {
|
||||
QString label = xsh->getNavigationTags()->getTagLabel(m_row);
|
||||
if (label.isEmpty()) label = "-";
|
||||
if (xsh->isFrameTagged(m_row)) m_tooltip = tr("Tag: %1").arg(label);
|
||||
m_tooltip = tr("Tag: %1").arg(label);
|
||||
} else if (row == currentRow) {
|
||||
if (Preferences::instance()->isOnionSkinEnabled() &&
|
||||
o->rect(PredefinedRect::ONION)
|
||||
|
@ -1252,6 +1255,12 @@ void RowArea::mouseMoveEvent(QMouseEvent *event) {
|
|||
m_tooltip = tr("Fixed Onion Skin Toggle");
|
||||
else if (m_showOnionToSet == Mos)
|
||||
m_tooltip = tr("Relative Onion Skin Toggle");
|
||||
else
|
||||
m_tooltip = tr("%1+Click\t- Set Playback Start Marker\n%2+Click \t- Set "
|
||||
"Playback End Marker\n%3+Click\t- Remove Playback Markers")
|
||||
.arg(trModKey("Ctrl"))
|
||||
.arg(trModKey("Alt"))
|
||||
.arg(trModKey("Ctrl+Alt"));
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
|
@ -1297,6 +1306,8 @@ void RowArea::contextMenuEvent(QContextMenuEvent *event) {
|
|||
|
||||
menu->addAction(CommandManager::instance()->getAction(MI_PreviewThis));
|
||||
|
||||
menu->addAction(CommandManager::instance()->getAction(MI_PreviewSelected));
|
||||
|
||||
menu->addSeparator();
|
||||
|
||||
if (Preferences::instance()->isOnionSkinEnabled()) {
|
||||
|
|
Loading…
Reference in a new issue