aboutsummaryrefslogtreecommitdiff
path: root/module/vcomponent/util/instance.scm
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@lysator.liu.se>2021-12-21 16:17:28 +0100
committerHugo Hörnquist <hugo@lysator.liu.se>2021-12-22 22:58:30 +0100
commitd00fea566004e67161ee45246b239fff5d416b0e (patch)
tree5641c0c0d0e78b046b6045ed2440512f12259560 /module/vcomponent/util/instance.scm
parentComplete rewrite of use2dot (diff)
downloadcalp-d00fea566004e67161ee45246b239fff5d416b0e.tar.gz
calp-d00fea566004e67161ee45246b239fff5d416b0e.tar.xz
Cleanup modules.
Primarly this moves all vcompenent input and output code to clearly labeled modules, instead of being spread out. At the same time it also removes a handfull of unused procedures.
Diffstat (limited to 'module/vcomponent/util/instance.scm')
-rw-r--r--module/vcomponent/util/instance.scm22
1 files changed, 22 insertions, 0 deletions
diff --git a/module/vcomponent/util/instance.scm b/module/vcomponent/util/instance.scm
new file mode 100644
index 00000000..15c020b1
--- /dev/null
+++ b/module/vcomponent/util/instance.scm
@@ -0,0 +1,22 @@
+(define-module (vcomponent util instance)
+ :use-module (calp util)
+ :use-module ((calp util config) :select (get-config))
+ :use-module ((oop goops) :select (make))
+ :export (global-event-object)
+)
+
+
+
+
+
+;; TODO this is loaded on compile, meaning that Guile's auto-compiler may
+;; evaluate this to early.
+(define-once global-event-object
+ (make (@@ (vcomponent util instance methods) <events>)
+ calendar-files: (get-config 'calendar-files)))
+
+(define-public (reload)
+ (let ((new-value (make (@@ (vcomponent util instance methods) <events>)
+ calendar-files: (get-config 'calendar-files))))
+ (display "Reload done\n" (current-error-port))
+ (set! global-event-object new-value)))