Mercurial > emacs
view lisp/cdl.el @ 105936:45191c90be7e
Bug #4574. Common code for file/font dialog. Handle timers with glib-timers.
* keyboard.h: Declare timer_check.
* keyboard.c (timer_check_2): New function that does what the old
timer_check did.
(timer_check): Call timer_check_2 until -1 or a non-zero time is
returned, i.e. don't return -1 with timers pending.
* process.c: Remove extern declaration of timer_check.
* xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
even if timer_check returned -1.
* gtkutil.c (xg_dialog_response_cb): data is now a struct xg_dialog_data
(pop_down_dialog): Destroy widget (if any), cancel timer and unref
the event loop.
(xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
(xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
Destroy the dialog after xg_dialog_run.
author | Jan Djärv <jan.h.d@swipnet.se> |
---|---|
date | Tue, 10 Nov 2009 19:06:40 +0000 |
parents | a9dc0e7c3f2b |
children | 1d1d5d9bd884 |
line wrap: on
line source
;;; cdl.el --- Common Data Language (CDL) utility functions for GNU Emacs ;; Copyright (C) 1993, 2001, 2002, 2003, 2004, 2005, ;; 2006, 2007, 2008, 2009 Free Software Foundation, Inc. ;; Author: ATAE@spva.physics.imperial.ac.uk (Ata Etemadi) ;; Maintainer: FSF ;; Keywords: data ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. ;; GNU Emacs is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. ;;; Commentary: ;;; Code: (defun cdl-get-file (filename) "Run file through ncdump and insert result into buffer after point." (interactive "fCDF file: ") (message "ncdump in progress...") (let ((start (point))) (call-process "ncdump" nil t nil (expand-file-name filename)) (goto-char start)) (message "ncdump in progress...done")) (defun cdl-put-region (filename start end) "Run region through ncgen and write results into a file." (interactive "FNew CDF file: \nr") (message "ncgen in progress...") (call-process-region start end "ncgen" nil nil nil "-o" (expand-file-name filename)) (message "ncgen in progress...done")) (provide 'cdl) ;; arch-tag: b8e95a6e-2387-4077-ad9a-af54b09b8615 ;;; cdl.el ends here