     
     // -----------------------------------------------------------------------------------------------------------------------
     //
+    // MARK: - Computed properties
+    //
+    // -----------------------------------------------------------------------------------------------------------------------
+    
+    var fontName:String? {
+        get {
+            return self._fontName ?? self._parent?.fontName
+        }
+    }
+    
+    var fontSize:CGFloat? {
+        get {
+            return self._fontSize ?? self._parent?.fontSize
+        }
+    }
+    
+    
+    // -----------------------------------------------------------------------------------------------------------------------
+    //
     // MARK: - Internal methods
     //
     // -----------------------------------------------------------------------------------------------------------------------

    
    private let _parent:TextStyle?
    
    private (set) var fontName:String?
    private (set) var fontSize:CGFloat?
    private var _fullUppercaseText:Bool?
    
    

    override internal func update() {
        super.update()
        
        self.font = self.createFont(name: self.fontName, size: self.fontSize)
        self.fullUppercaseText = self._fullUppercaseText ?? self._parent?.fullUppercaseText
    }
}
