comparison lisp/gutter-items.el @ 446:1ccc32a20af4 r21-2-38

Import from CVS: tag r21-2-38
author cvs
date Mon, 13 Aug 2007 11:37:21 +0200
parents 576fb035e263
children 3d3049ae1304
comparison
equal deleted inserted replaced
445:34f3776fcf0e 446:1ccc32a20af4
323 (console-type-list)))) 323 (console-type-list))))
324 324
325 (defun update-tab-in-gutter (frame &optional force-selection) 325 (defun update-tab-in-gutter (frame &optional force-selection)
326 "Update the tab control in the gutter area." 326 "Update the tab control in the gutter area."
327 ;; dedicated frames don't get tabs 327 ;; dedicated frames don't get tabs
328 (unless (window-dedicated-p (frame-selected-window frame)) 328 (unless (or (window-dedicated-p (frame-selected-window frame))
329 (frame-property frame 'popup))
329 (when (specifier-instance default-gutter-visible-p frame) 330 (when (specifier-instance default-gutter-visible-p frame)
330 (unless (and gutter-buffers-tab 331 (unless (and gutter-buffers-tab
331 (eq (default-gutter-position) 332 (eq (default-gutter-position)
332 gutter-buffers-tab-orientation)) 333 gutter-buffers-tab-orientation))
333 (add-tab-to-gutter)) 334 (add-tab-to-gutter))
334 (when (valid-image-instantiator-format-p 'tab-control frame) 335 (when (valid-image-instantiator-format-p 'tab-control frame)
335 (set-glyph-image 336 (let ((items (buffers-tab-items nil frame force-selection)))
336 gutter-buffers-tab 337 (when items
337 (vector 'tab-control :descriptor "Buffers" :face buffers-tab-face 338 (set-glyph-image
338 :orientation gutter-buffers-tab-orientation 339 gutter-buffers-tab
339 (if (or (eq gutter-buffers-tab-orientation 'top) 340 (vector 'tab-control :descriptor "Buffers" :face buffers-tab-face
340 (eq gutter-buffers-tab-orientation 'bottom)) 341 :orientation gutter-buffers-tab-orientation
341 :pixel-width :pixel-height) 342 (if (or (eq gutter-buffers-tab-orientation 'top)
342 (if (or (eq gutter-buffers-tab-orientation 'top) 343 (eq gutter-buffers-tab-orientation 'bottom))
343 (eq gutter-buffers-tab-orientation 'bottom)) 344 :pixel-width :pixel-height)
344 '(gutter-pixel-width) '(gutter-pixel-height)) 345 (if (or (eq gutter-buffers-tab-orientation 'top)
345 :items (buffers-tab-items nil frame force-selection)) 346 (eq gutter-buffers-tab-orientation 'bottom))
346 frame) 347 '(gutter-pixel-width) '(gutter-pixel-height))
347 ;; set-glyph-image will not make the gutter dirty 348 :items items)
348 (set-specifier-dirty-flag 349 frame)
349 (eval (intern (concat 350 ;; set-glyph-image will not make the gutter dirty
350 (symbol-name gutter-buffers-tab-orientation) 351 (set-specifier-dirty-flag
351 "-gutter")))))))) 352 (eval (intern (concat
353 (symbol-name gutter-buffers-tab-orientation)
354 "-gutter"))))))))))
352 355
353 ;; A myriad of different update hooks all doing slightly different things 356 ;; A myriad of different update hooks all doing slightly different things
354 (add-one-shot-hook 357 (add-one-shot-hook
355 'after-init-hook 358 'after-init-hook
356 #'(lambda () 359 #'(lambda ()