mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
[app-utils] remove config-var.scm
unused since 1999?
This commit is contained in:
parent
6945e1c7d7
commit
f64586b873
@ -175,7 +175,6 @@ set (app_utils_SCHEME_1
|
|||||||
hooks.scm
|
hooks.scm
|
||||||
business-options.scm
|
business-options.scm
|
||||||
c-interface.scm
|
c-interface.scm
|
||||||
config-var.scm
|
|
||||||
date-utilities.scm
|
date-utilities.scm
|
||||||
migrate-prefs.scm
|
migrate-prefs.scm
|
||||||
options.scm
|
options.scm
|
||||||
|
@ -157,18 +157,6 @@
|
|||||||
(append (list category) key)
|
(append (list category) key)
|
||||||
(list category key))))
|
(list category key))))
|
||||||
(export gnc:option-get-value)
|
(export gnc:option-get-value)
|
||||||
;; config-var.scm
|
|
||||||
(export gnc:make-config-var)
|
|
||||||
(export gnc:config-var-description-get)
|
|
||||||
(export gnc:config-var-action-func-get)
|
|
||||||
(export gnc:config-var-equality-func-get)
|
|
||||||
(export gnc:config-var-modified?)
|
|
||||||
(export gnc:config-var-modified?-set!)
|
|
||||||
(export gnc:config-var-default-value-get)
|
|
||||||
(export gnc:config-var-default-value-set!)
|
|
||||||
(export gnc:config-var-value-get)
|
|
||||||
(export gnc:config-var-value-set!)
|
|
||||||
(export gnc:config-var-value-is-default?)
|
|
||||||
|
|
||||||
;; prefs.scm
|
;; prefs.scm
|
||||||
(export gnc:get-debit-string)
|
(export gnc:get-debit-string)
|
||||||
@ -294,7 +282,6 @@
|
|||||||
(export gnc:*kvp-option-path*)
|
(export gnc:*kvp-option-path*)
|
||||||
|
|
||||||
(load-from-path "c-interface")
|
(load-from-path "c-interface")
|
||||||
(load-from-path "config-var")
|
|
||||||
(load-from-path "options")
|
(load-from-path "options")
|
||||||
(load-from-path "hooks")
|
(load-from-path "hooks")
|
||||||
(load-from-path "prefs")
|
(load-from-path "prefs")
|
||||||
|
@ -1,74 +0,0 @@
|
|||||||
;; This program 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 2 of
|
|
||||||
;; the License, or (at your option) any later version.
|
|
||||||
;;
|
|
||||||
;; This program 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 this program; if not, contact:
|
|
||||||
;;
|
|
||||||
;; Free Software Foundation Voice: +1-617-542-5942
|
|
||||||
;; 51 Franklin Street, Fifth Floor Fax: +1-617-542-2652
|
|
||||||
;; Boston, MA 02110-1301, USA gnu@gnu.org
|
|
||||||
|
|
||||||
;;; config-var: You can create them, set values, find out if the value
|
|
||||||
;;; is different from the default, and you can get a description. You
|
|
||||||
;;; can also specify an action function which will be called whenever
|
|
||||||
;;; the value is changed. The action function receives the special
|
|
||||||
;;; var and the new value as arguments and should return either #f if
|
|
||||||
;;; the modification should be rejected, or a list containing the
|
|
||||||
;;; result otherwise.
|
|
||||||
|
|
||||||
;;; Finally, a config var has two states, "officially" modified, and
|
|
||||||
;;; unofficially modified. You control what kind of modification
|
|
||||||
;;; you're making with the second argument to
|
|
||||||
;;; gnc:config-var-value-set! The idea is that options specified on
|
|
||||||
;;; the command line will set the value of these config vars, but that
|
|
||||||
;;; setting is considered transient. Other settings (like from the UI
|
|
||||||
;;; preferences panel, or normal user code) should be considered
|
|
||||||
;;; permanent, and if they leave the variable value different from the
|
|
||||||
;;; default, should be saved to the auto configuration file.
|
|
||||||
|
|
||||||
(define (gnc:make-config-var description
|
|
||||||
set-action-func
|
|
||||||
equality-func
|
|
||||||
default)
|
|
||||||
(let ((var (vector description set-action-func
|
|
||||||
equality-func #f default default)))
|
|
||||||
(gnc:config-var-value-set! var #f default)
|
|
||||||
var))
|
|
||||||
|
|
||||||
(define (gnc:config-var-description-get var) (vector-ref var 0))
|
|
||||||
|
|
||||||
(define (gnc:config-var-action-func-get var) (vector-ref var 1))
|
|
||||||
|
|
||||||
(define (gnc:config-var-equality-func-get var) (vector-ref var 2))
|
|
||||||
|
|
||||||
(define (gnc:config-var-modified? var) (vector-ref var 3))
|
|
||||||
(define (gnc:config-var-modified?-set! var value) (vector-set! var 3 value))
|
|
||||||
|
|
||||||
(define (gnc:config-var-default-value-get var) (vector-ref var 4))
|
|
||||||
(define (gnc:config-var-default-value-set! var value)
|
|
||||||
(vector-set! var 4 value))
|
|
||||||
|
|
||||||
(define (gnc:config-var-value-get var) (vector-ref var 5))
|
|
||||||
(define (gnc:config-var-value-set! var is-config-mod? value)
|
|
||||||
(let ((set-action (gnc:config-var-action-func-get var))
|
|
||||||
(result (list value)))
|
|
||||||
(if set-action (set! result (set-action var value)))
|
|
||||||
(if result
|
|
||||||
(begin
|
|
||||||
(if is-config-mod? (gnc:config-var-modified?-set! var #t))
|
|
||||||
(vector-set! var 5 (car result))))))
|
|
||||||
|
|
||||||
(define (gnc:config-var-value-is-default? var)
|
|
||||||
(if (not (gnc:config-var-modified? var))
|
|
||||||
#t
|
|
||||||
(let ((equal-values? (gnc:config-var-equality-func-get var)))
|
|
||||||
(equal-values?
|
|
||||||
(gnc:config-var-default-value-get var)
|
|
||||||
(gnc:config-var-value-get var)))))
|
|
Loading…
Reference in New Issue
Block a user