Skip to content

Commit

Permalink
Add short keys Q and E to timeline
Browse files Browse the repository at this point in the history
  • Loading branch information
UmSenhorQualquer committed Mar 6, 2019
1 parent 4ac27ab commit 688fa26
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 1 deletion.
2 changes: 1 addition & 1 deletion pyforms_gui/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
__author__ = "Ricardo Ribeiro"
__credits__ = ["Ricardo Ribeiro"]
__license__ = "MIT"
__version__ = "4.3"
__version__ = "4.4"
__maintainer__ = "Ricardo Ribeiro"
__email__ = "ricardojvr@gmail.com"
__status__ = "Development"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ class ControlEventTimeline(ControlBase, QWidget):
- **S**: First press, mark the beginning of an event, Second press, create an event ending in the current cursor time.
- **A**: Move the cursor to the left.
- **D**: Move the cursor to the right.
- **Q**: Select the previous event in the selected row.
- **E**: Select the next event in the selected row.
"""

def __init__(self, label="", default=0, max=100):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ def __len__(self):
def __add__(self, other):
if isinstance(other, Event):
self._events.append(other)
self._events = sorted(self._events, key=lambda e: e.begin)
return self

def __sub__(self, other):
Expand Down
14 changes: 14 additions & 0 deletions pyforms_gui/controls/control_event_timeline/timeline_widget.py
Original file line number Diff line number Diff line change
Expand Up @@ -467,6 +467,20 @@ def keyReleaseEvent(self, event: QKeyEvent):
if event.key() == QtCore.Qt.Key_L:
self.toggle_selected_event_lock()

# Lock or unlock an event
if event.key() == QtCore.Qt.Key_E:
index = self.selected_row.events.index(self._selected)
if index < len(self.selected_row.events)-1:
self._selected = self.selected_row.events[index+1]
self.position = self._selected.begin

# Move to the previous event
if event.key() == QtCore.Qt.Key_Q:
index = self.selected_row.events.index(self._selected)
if index > 0:
self._selected = self.selected_row.events[index - 1]
self.position = self._selected.begin

# Move the event up
if modifier == QtCore.Qt.ControlModifier and event.key() == QtCore.Qt.Key_Up:
self._selected.move(0, self._selected.top_coordinate - self.TRACK_HEIGHT)
Expand Down

0 comments on commit 688fa26

Please sign in to comment.