File: KeepOnlySelection.scm

package info (click to toggle)
denemo 2.6.49-0.2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 66,916 kB
  • sloc: ansic: 94,587; lisp: 38,713; xml: 22,675; python: 1,930; sh: 1,239; makefile: 642; yacc: 288; sed: 93
file content (26 lines) | stat: -rw-r--r-- 911 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
;KeepOnlySelection
	(let ((selection (d-GetSelection)))
		(if selection
				(let ((movement (d-GetMovement))
						(startstaff (list-ref (car selection) 1))
						(endstaff (list-ref (cdr selection) 1))
						(startbar (list-ref (car selection) 2))
						(endbar (list-ref (cdr selection) 2)))
						(d-GoToPosition #f endstaff endbar 1)
						(if (d-MoveToMeasureRight)
							(d-DeleteFromCursorToEnd 'all))
						(while (d-MoveToStaffDown)
							(d-DeleteStaff)
							(d-GoToPosition #f endstaff endbar 1))
						(d-GoToPosition #f startstaff startbar 1)
						(d-DeleteMeasuresBeforeCursor 'all)
						(while (d-MoveToStaffUp)
							(d-DeleteStaff))
						(if (d-NextMovement)
								(begin
									(d-DeleteMovement)
									(while (> (d-GetMovement) movement)
										(d-DeleteMovement))))
						(while (d-PreviousMovement)
								(d-DeleteMovement)))
					(d-WarningDialog (_ "No Selection"))))