diff --git a/include/personStorage.h b/include/personStorage.h
index a839a64f05490b00a47d375945881d6b88cfe4ed..e5a9c097e4f0adce142d14bcd87868f461d231de 100644
--- a/include/personStorage.h
+++ b/include/personStorage.h
@@ -39,7 +39,7 @@ class PersonStorage : public QObject
     Q_OBJECT
 
 public:
-    enum class Direction
+    enum class TrajectorySegment
     {
         Previous,
         Following,
@@ -50,9 +50,9 @@ public:
 
     void splitPerson(size_t pers, int frame);
     bool splitPersonAt(const Vec2F &p, int frame, const QSet<size_t> &onlyVisible);
-    bool delPointOf(int pers, int direction, int frame);
-    bool delPoint(const Vec2F &p, int direction, int frame, const QSet<size_t> &onlyVisible);
-    void delPointAll(Direction direction, int frame);
+    bool delPointOf(int pers, TrajectorySegment direction, int frame);
+    bool delPoint(const Vec2F &p, TrajectorySegment direction, int frame, const QSet<size_t> &onlyVisible);
+    void delPointAll(TrajectorySegment direction, int frame);
     void delPointROI();
     void delPointInsideROI();
     bool editTrackPersonComment(const Vec2F &p, int frame, const QSet<size_t> &onlyVisible);
diff --git a/include/petrack.h b/include/petrack.h
index 4288188fb6bd1dbd3793c0c3d77e3fd1f3503007..fd292f6d166d131be3dd814e0186d2f8007a484d 100644
--- a/include/petrack.h
+++ b/include/petrack.h
@@ -150,8 +150,8 @@ public slots:
     void editTrackPersonComment(QPointF pos);
     void setTrackPersonHeight(QPointF pos);
     void resetTrackPersonHeight(QPointF pos);
-    void deleteTrackPoint(QPointF pos, int direction);
-    void deleteTrackPointAll(PersonStorage::Direction direction);
+    void deleteTrackPoint(QPointF pos, PersonStorage::TrajectorySegment direction);
+    void deleteTrackPointAll(PersonStorage::TrajectorySegment direction);
     void deleteTrackPointROI();
     void deleteTrackPointInsideROI();
     void moveTrackPoint(QPointF pos);
diff --git a/include/view.h b/include/view.h
index 0e2f077c29c2627ef61f02cb091324037293da37..8a906ead7e8c1bc061041cf20c72a0325c50c548 100644
--- a/include/view.h
+++ b/include/view.h
@@ -19,7 +19,7 @@
 #ifndef VIEW_H
 #define VIEW_H
 
-#include "personStorage.h" // for Direction
+#include "personStorage.h"
 
 #include <QFrame>
 #include <QGraphicsView>
@@ -57,8 +57,8 @@ signals:
     void mouseShiftControlDoubleClick(QPointF pos);
     void mouseShiftDoubleClick(QPointF pos);
     void mouseControlDoubleClick(QPointF pos);
-    void mouseRightDoubleClick(QPointF pos, int direction);
-    void mouseMiddleDoubleClick(PersonStorage::Direction direction);
+    void mouseRightDoubleClick(QPointF pos, PersonStorage::TrajectorySegment direction);
+    void mouseMiddleDoubleClick(PersonStorage::TrajectorySegment direction);
     void mouseShiftWheel(int delta);
     void mouseCtrlWheel(int delta);
     void mouseAltPressed(QPointF pos);
diff --git a/src/autosave.cpp b/src/autosave.cpp
index a0ebb640afa3c466be71cbcfada1d323df9a8607..b3bd44b40427e8edaa3b42c948c050f58e6cd507 100644
--- a/src/autosave.cpp
+++ b/src/autosave.cpp
@@ -114,7 +114,7 @@ void Autosave::loadAutosave()
     {
         const QString trcAutosaveName = autosaveFiles[trcIndex];
         const auto    trcFile         = mPetrack.getTrackFileName();
-        mPetrack.deleteTrackPointAll(PersonStorage::Direction::Whole);
+        mPetrack.deleteTrackPointAll(PersonStorage::TrajectorySegment::Whole);
         mPetrack.importTracker(trcAutosaveName);
         mPetrack.setTrackFileName(trcFile);
     }
diff --git a/src/personStorage.cpp b/src/personStorage.cpp
index b1488ac8394ce907b1469302602cd0e52a0f86e7..e8581b15864ceedcbe7873f192e49fb1df775c31 100644
--- a/src/personStorage.cpp
+++ b/src/personStorage.cpp
@@ -87,23 +87,23 @@ bool PersonStorage::splitPersonAt(const Vec2F &point, int frame, const QSet<size
 /**
  * @brief Deletes points of pers
  * @param pers TrackPerson whose points should be deleted
- * @param direction notes if previous (-1), following(1) or whole(0) trajectory should be deleted
- * @param frame
+ * @param direction the direction in which the trajectory should be deleted
+ * @param frame the frame (exclusive) from which the deletion will happen
  * @return true, if deletion occured
  */
-bool PersonStorage::delPointOf(int pers, int direction, int frame)
+bool PersonStorage::delPointOf(int pers, TrajectorySegment direction, int frame)
 {
     onManualAction();
 
-    if(direction == -1)
+    if(direction == TrajectorySegment::Previous)
     {
         deletePersonFrameRange(pers, mPersons[pers].firstFrame(), frame - 1);
     }
-    else if(direction == 0)
+    else if(direction == TrajectorySegment::Whole)
     {
         deletePerson(pers);
     }
-    else if(direction == 1)
+    else if(direction == TrajectorySegment::Following)
     {
         deletePersonFrameRange(pers, frame + 1, mPersons[pers].lastFrame());
     }
@@ -114,12 +114,16 @@ bool PersonStorage::delPointOf(int pers, int direction, int frame)
 /**
  * @brief Deletes points of a SINGLE person in onlyVisible
  * @param point point which need to be on the person (helpful if onlyVisible is not properly set)
- * @param direction notes if previous (-1), following(1) or whole(0) trajectory should be deleted
- * @param frame
+ * @param direction the direction in which the trajectory should be deleted
+ * @param frame the frame (exclusive) from which the deletion will happen
  * @param onlyVisible set of people whose points could be deleted; empty means everyone
  * @return true if deletion occured
  */
-bool PersonStorage::delPoint(const Vec2F &point, int direction, int frame, const QSet<size_t> &onlyVisible)
+bool PersonStorage::delPoint(
+    const Vec2F        &point,
+    TrajectorySegment   direction,
+    int                 frame,
+    const QSet<size_t> &onlyVisible)
 {
     onManualAction();
 
@@ -142,7 +146,7 @@ bool PersonStorage::delPoint(const Vec2F &point, int direction, int frame, const
  * @param direction notes if previous, following or whole trajectory should be deleted
  * @param frame
  */
-void PersonStorage::delPointAll(Direction direction, int frame)
+void PersonStorage::delPointAll(TrajectorySegment direction, int frame)
 {
     onManualAction();
 
@@ -152,21 +156,21 @@ void PersonStorage::delPointAll(Direction direction, int frame)
         {
             switch(direction)
             {
-                case Direction::Previous:
+                case TrajectorySegment::Previous:
                     deletePersonFrameRange(i, mPersons[i].firstFrame(), frame - 1);
                     break;
-                case Direction::Whole:
+                case TrajectorySegment::Whole:
                     deletePerson(i--); // after deleting the person decrease i by one
                     break;
-                case Direction::Following:
+                case TrajectorySegment::Following:
                     deletePersonFrameRange(i, frame + 1, mPersons[i].lastFrame());
                     break;
             }
         }
         else if(
-            ((direction == Direction::Previous) && (frame > mPersons.at(i).lastFrame())) ||
-            (direction == Direction::Whole) ||
-            ((direction == Direction::Following) && (frame < mPersons.at(i).firstFrame())))
+            ((direction == TrajectorySegment::Previous) && (frame > mPersons.at(i).lastFrame())) ||
+            (direction == TrajectorySegment::Whole) ||
+            ((direction == TrajectorySegment::Following) && (frame < mPersons.at(i).firstFrame())))
         {
             deletePerson(i--); // after deleting the person decrease i by one
         }
diff --git a/src/petrack.cpp b/src/petrack.cpp
index bf7a3ed481b4dbe591ff616f041c28210861e3d5..6eded80d8ecfd7c83cd7d97870204ebe69e34cd1 100644
--- a/src/petrack.cpp
+++ b/src/petrack.cpp
@@ -2030,14 +2030,14 @@ void Petrack::createActions()
         mDelPastAct,
         &QAction::triggered,
         this,
-        [this]() { this->deleteTrackPointAll(PersonStorage::Direction::Previous); });
+        [this]() { this->deleteTrackPointAll(PersonStorage::TrajectorySegment::Previous); });
 
     mDelFutureAct = new QAction(tr("&Future part of all trj."), this);
     connect(
         mDelFutureAct,
         &QAction::triggered,
         this,
-        [this]() { this->deleteTrackPointAll(PersonStorage::Direction::Following); });
+        [this]() { this->deleteTrackPointAll(PersonStorage::TrajectorySegment::Following); });
 
     mDelAllRoiAct = new QAction(tr("&Trj. moving through ROI"), this);
     connect(mDelAllRoiAct, &QAction::triggered, this, &Petrack::deleteTrackPointROI);
@@ -3973,9 +3973,11 @@ int Petrack::addOrMoveManualTrackPoint(const QPointF &pos)
     return pers;
 }
 
-// direction zeigt an, ob bis zum aktuellen (-1), ab dem aktuellen (1) oder ganzer trackpath (0)
-// loeschen von Trackpoints einer Trajektorie
-void Petrack::deleteTrackPoint(QPointF pos, int direction) // const QPoint &pos
+/**
+ * Deletes trajectory based on current frame and selected trajectories.
+ * @see PersonStorage::delPoint
+ */
+void Petrack::deleteTrackPoint(QPointF pos, PersonStorage::TrajectorySegment direction) // const QPoint &pos
 {
     mPersonStorage.delPoint((Vec2F) pos, direction, mAnimation->getCurrentFrameNum(), getPedestrianUserSelection());
     updateControlWidget();
@@ -4000,7 +4002,7 @@ void Petrack::resetTrackPersonHeight(QPointF pos)
  * @brief Delete the following, previous or whole trajectory of **all** trajectories
  * @param direction previous, following or whole
  */
-void Petrack::deleteTrackPointAll(PersonStorage::Direction direction) // const QPoint &pos
+void Petrack::deleteTrackPointAll(PersonStorage::TrajectorySegment direction) // const QPoint &pos
 {
     mPersonStorage.delPointAll(direction, mAnimation->getCurrentFrameNum());
     updateControlWidget();
diff --git a/src/tracker.cpp b/src/tracker.cpp
index fdc106e3f920ca2e613dabc88d7e636954281522..23425fa852b49af7ddea90dbdad2d172d69d22ac 100644
--- a/src/tracker.cpp
+++ b/src/tracker.cpp
@@ -23,6 +23,7 @@
 #include "logger.h"
 #include "multiColorMarkerWidget.h"
 #include "pMessageBox.h"
+#include "personStorage.h"
 #include "petrack.h"
 #include "roiItem.h"
 #include "stereoWidget.h"
@@ -1084,7 +1085,7 @@ int Tracker::track(
     // gemacht
     for(int i = 0; i < trjToDel.size(); ++i) // ueber TrackPerson
     {
-        mPersonStorage.delPointOf(trjToDel[i], 0, -1);
+        mPersonStorage.delPointOf(trjToDel[i], PersonStorage::TrajectorySegment::Whole, -1);
     }
 
     // numOfPeopleToTrack kann trotz nicht retrack > 0 sein auch bei alten pfaden
diff --git a/src/trackerItem.cpp b/src/trackerItem.cpp
index 5e9eda3927b621fa0a6c17923e4fe8c3386f785f..12dccc2959f9653047f5d72b35c5ea98c0446188 100644
--- a/src/trackerItem.cpp
+++ b/src/trackerItem.cpp
@@ -170,15 +170,15 @@ void TrackerItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event)
         }
         else if(selectedAction == delTrj)
         {
-            mMainWindow->deleteTrackPoint(event->scenePos(), 0);
+            mMainWindow->deleteTrackPoint(event->scenePos(), PersonStorage::TrajectorySegment::Whole);
         }
         else if(selectedAction == delFutureTrj)
         {
-            mMainWindow->deleteTrackPoint(event->scenePos(), -1);
+            mMainWindow->deleteTrackPoint(event->scenePos(), PersonStorage::TrajectorySegment::Previous);
         }
         else if(selectedAction == delPastTrj)
         {
-            mMainWindow->deleteTrackPoint(event->scenePos(), 1);
+            mMainWindow->deleteTrackPoint(event->scenePos(), PersonStorage::TrajectorySegment::Following);
         }
         else if(selectedAction == addComment)
         {
diff --git a/src/view.cpp b/src/view.cpp
index e15b162971ed6f46dccd1dbb4c903d12ccfb4fde..4c6174f95dc2746bba2c09c2f7880d0c34d4696c 100644
--- a/src/view.cpp
+++ b/src/view.cpp
@@ -19,6 +19,7 @@
 #include "view.h"
 
 #include "control.h"
+#include "personStorage.h"
 #include "petrack.h"
 #include "vector.h"
 
@@ -112,30 +113,30 @@ void GraphicsView::mouseDoubleClickEvent(QMouseEvent *event)
     {
         if(event->modifiers() == Qt::ShiftModifier) // nur shift zugelassen ...
         {
-            emit mouseRightDoubleClick(mapToScene(event->pos()), -1);
+            emit mouseRightDoubleClick(mapToScene(event->pos()), PersonStorage::TrajectorySegment::Previous);
         }
         else if(event->modifiers() == Qt::ControlModifier)
         {
-            emit mouseRightDoubleClick(mapToScene(event->pos()), 0);
+            emit mouseRightDoubleClick(mapToScene(event->pos()), PersonStorage::TrajectorySegment::Whole);
         }
         else if(event->modifiers() == Qt::AltModifier)
         {
-            emit mouseRightDoubleClick(mapToScene(event->pos()), 1);
+            emit mouseRightDoubleClick(mapToScene(event->pos()), PersonStorage::TrajectorySegment::Following);
         }
     }
     else if(event->button() == Qt::MiddleButton)
     {
         if(event->modifiers() == Qt::ShiftModifier) // nur shift zugelassen ...
         {
-            emit mouseMiddleDoubleClick(PersonStorage::Direction::Previous);
+            emit mouseMiddleDoubleClick(PersonStorage::TrajectorySegment::Previous);
         }
         else if(event->modifiers() == Qt::ControlModifier)
         {
-            emit mouseMiddleDoubleClick(PersonStorage::Direction::Whole);
+            emit mouseMiddleDoubleClick(PersonStorage::TrajectorySegment::Whole);
         }
         else if(event->modifiers() == Qt::AltModifier)
         {
-            emit mouseMiddleDoubleClick(PersonStorage::Direction::Following);
+            emit mouseMiddleDoubleClick(PersonStorage::TrajectorySegment::Following);
         }
     }