File: erase-rows.scm

package info (click to toggle)
gimp 2.2.13-1etch4
  • links: PTS
  • area: main
  • in suites: etch
  • size: 94,832 kB
  • ctags: 47,113
  • sloc: ansic: 524,858; xml: 36,798; lisp: 9,870; sh: 9,409; makefile: 7,923; python: 2,674; perl: 2,589; yacc: 520; lex: 334
file content (41 lines) | stat: -rw-r--r-- 1,494 bytes parent folder | download | duplicates (3)
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
(define (script-fu-erase-rows img drawable orientation which type)
  (let* ((width (car (gimp-drawable-width drawable)))
	 (height (car (gimp-drawable-height drawable)))
	 (position-x (car (gimp-drawable-offsets drawable)))
	 (position-y (cadr (gimp-drawable-offsets drawable))))
    (gimp-image-undo-group-start img)
    (letrec ((loop (lambda (i max)
		     (if (< i max)
			 (begin
			   (if (= orientation 0)
			       (gimp-rect-select img position-x (+ i position-y) width 1 CHANNEL-OP-REPLACE FALSE 0)
			       (gimp-rect-select img (+ i position-x) position-y 1 height CHANNEL-OP-REPLACE FALSE 0))
			   (if (= type 0)
			       (gimp-edit-clear drawable)
			       (gimp-edit-fill drawable BACKGROUND-FILL))
			   (loop (+ i 2) max))))))
      (loop (if (= which 0)
		0
		1)
	    (if (= orientation 0)
		height
		width)))
    (gimp-selection-none img)
    (gimp-image-undo-group-end img)
    (gimp-displays-flush)))

(script-fu-register "script-fu-erase-rows"
		    _"_Erase every other Row..."
		    "Erase every other row/column with the background color"
		    "Federico Mena Quintero"
		    "Federico Mena Quintero"
		    "June 1997"
		    "RGB* GRAY* INDEXED*"
		    SF-IMAGE     "Image"      0
		    SF-DRAWABLE  "Drawable"   0
		    SF-OPTION   _"Rows/cols"  '(_"Rows"  _"Columns")
		    SF-OPTION   _"Even/odd"   '(_"Even"  _"Odd")
		    SF-OPTION   _"Erase/fill" '(_"Erase" _"Fill with BG"))

(script-fu-menu-register "script-fu-erase-rows"
			 _"<Image>/Script-Fu/Alchemy")