diff --git a/src/Lib/Ass/Line.cc b/src/Lib/Ass/Line.cc
index 53681a342b697576ce07cc498d75d2a5f020fd97..0307bd776bb5edefe30d1eac7cc859ae19e3457c 100644
--- a/src/Lib/Ass/Line.cc
+++ b/src/Lib/Ass/Line.cc
@@ -110,3 +110,15 @@ Line::getStyleProperties() const noexcept
 {
     return styleProperties;
 }
+
+StyleWeakPtr
+Line::getStyle() const noexcept
+{
+    return lineStyle;
+}
+
+const QVector<Syl> &
+Line::getContent() const noexcept
+{
+    return content;
+}
diff --git a/src/Lib/Ass/Line.hh b/src/Lib/Ass/Line.hh
index 4b58a9a6676dffbdfb09abb4609a2b2474001f59..aeac0724c13bde021c65f5b769c3428bebe620bb 100644
--- a/src/Lib/Ass/Line.hh
+++ b/src/Lib/Ass/Line.hh
@@ -39,6 +39,8 @@ public:
     quint64 getDuration() const noexcept;
 
     StyleProperties getStyleProperties() const noexcept;
+    StyleWeakPtr getStyle() const noexcept;
+    const QVector<Syl> &getContent() const noexcept;
 
 private:
     void initSylFromString(const QString &) noexcept;
diff --git a/src/Lib/Ass/Syl.cc b/src/Lib/Ass/Syl.cc
index 0d411f20998acbca715f9dbf444a9f3d46d4f63d..3421da6b8fd000a0563a88795101201a1d7c775d 100644
--- a/src/Lib/Ass/Syl.cc
+++ b/src/Lib/Ass/Syl.cc
@@ -28,3 +28,9 @@ Syl::getDurationFromString(const QString &line) noexcept
     }
     return duration;
 }
+
+QString
+Syl::getContent() const noexcept
+{
+    return content;
+}
diff --git a/src/Lib/Ass/Syl.hh b/src/Lib/Ass/Syl.hh
index 101de152b212992bf0030e9eb3d5ccfe8bde6bf5..79c7a9bc376c028ff9b283d7d12aca3ece0414c0 100644
--- a/src/Lib/Ass/Syl.hh
+++ b/src/Lib/Ass/Syl.hh
@@ -32,6 +32,8 @@ public:
     Syl &operator=(const Syl &) = delete;
     ~Syl() noexcept             = default;
 
+    QString getContent() const noexcept;
+
 private:
     static quint64 getDurationFromString(const QString &) noexcept;
 };
diff --git a/src/Lib/Document/CRTPSubDocument.hh b/src/Lib/Document/CRTPSubDocument.hh
index f8be95a08a8e8a6e0db9223b5597cdc81ab90945..74903d5830140da20c88623e761446710e44b8b3 100644
--- a/src/Lib/Document/CRTPSubDocument.hh
+++ b/src/Lib/Document/CRTPSubDocument.hh
@@ -110,6 +110,9 @@ public:
     QString getElementName() const noexcept;
     QJsonDocument getProperties() const noexcept;
 
+    const QVector<Ass::LinePtr> &getLines() const noexcept;
+    const QVector<Ass::StylePtr> &getStyles() const noexcept;
+
 private:
     QVector<Ass::StylePtr> styles;
     QVector<Ass::LinePtr> lines;
diff --git a/src/UI/PropertyModel.hh b/src/UI/PropertyModel.hh
index c6cdca5eb16601a03c1a4d46c01c4ae8dba2d454..dea2cbca8ceef982d5cbdb7cb09c7899c036717b 100644
--- a/src/UI/PropertyModel.hh
+++ b/src/UI/PropertyModel.hh
@@ -77,8 +77,7 @@ public:
     void setEditable(const bool);
 
     QVariant data(const QModelIndex &, int role) const noexcept override;
-    bool setData(const QModelIndex &, const QVariant &value,
-                 int role = Qt::EditRole) noexcept override;
+    bool setData(const QModelIndex &, const QVariant &v, int r = Qt::EditRole) noexcept override;
 
     QVariant headerData(int section, Qt::Orientation, int role) const noexcept override;
     QModelIndex parent(const QModelIndex &) const noexcept override;