         endPlayButton.isEnabled = previewLengthControl.selectedSegmentIndex > 0
     }
     
-    @objc func updatePreviewButtonPositions() {
+    @objc func layoutWaveformOverlayViews() {
         if let startSample = waveformView.highlightedSamples?.lowerBound, let x = waveformView.position(of: startSample) {
             startPlayButtonHorizontalLayoutConstraint.constant = waveformView.position(of: startSample) ?? 0
             startMarkerHorizontalLayoutConstraint.constant = x

        // render the waveform
        waveformView.audioURL = sting.url
        
        NotificationCenter.default.addObserver(self, selector: #selector(updatePreviewButtonPositions), name: .waveformViewDidUpdate, object: nil)
        
        startMarkerView.dragRecogniser.addTarget(self, action: #selector(startMarkerDragged(_:)))
        endMarkerView.dragRecogniser.addTarget(self, action: #selector(endMarkerDragged(_:)))

        NotificationCenter.default.post(name: .didFinishEditing, object: sting)
    }
    
    override func viewDidLayoutSubviews() {
        layoutWaveformOverlayViews()
    }
    
    func updateLabels() {
        navigationItem.title = sting.name ?? sting.songTitle
        titleLabel.text = sting.songTitle
