diff --git a/tools/clog-builder.lisp b/tools/clog-builder.lisp index e93d3e4..bffc526 100644 --- a/tools/clog-builder.lisp +++ b/tools/clog-builder.lisp @@ -2553,7 +2553,8 @@ of controls and double click to select control." (let* ((line (read s nil))) (unless line (return)) (when (equalp (format nil "~A" (second line)) system) - (push `(,ftype ,file) (getf line :components))) + (setf (getf line :components) + (append (getf line :components) `((,ftype ,file))))) (push line sys-list)))) (with-open-file (s fname :direction :output :if-exists :rename) (let ((*print-case* :downcase)) diff --git a/tools/projects.clog b/tools/projects.clog index 0104f19..c40d457 100644 --- a/tools/projects.clog +++ b/tools/projects.clog @@ -1,4 +1,4 @@ - \ No newline at end of file + (projects-populate panel))">Unload \ No newline at end of file diff --git a/tools/projects.lisp b/tools/projects.lisp index e957cd9..d1f23d3 100644 --- a/tools/projects.lisp +++ b/tools/projects.lisp @@ -1,6 +1,8 @@ + (in-package "CLOG-TOOLS") (defclass projects (clog:clog-panel) - ((unload-project-button :reader unload-project-button) + ((reload-project-button :reader reload-project-button) + (unload-project-button :reader unload-project-button) (new-project-button :reader new-project-button) (designtime-delete :reader designtime-delete) (designtime-add-lisp :reader designtime-add-lisp) @@ -19,57 +21,60 @@ (let ((panel (change-class (clog:create-div clog-obj :content - "" + "" :hidden hidden :class class :html-id html-id :auto-place auto-place) 'projects))) + (setf (slot-value panel 'reload-project-button) + (attach-as-child clog-obj "CLOGB3868552729" :clog-type + 'clog:clog-button :new-id t)) (setf (slot-value panel 'unload-project-button) - (attach-as-child clog-obj "CLOGB3868475354" :clog-type + (attach-as-child clog-obj "CLOGB3868552728" :clog-type 'clog:clog-button :new-id t)) (setf (slot-value panel 'new-project-button) - (attach-as-child clog-obj "CLOGB3868475353" :clog-type + (attach-as-child clog-obj "CLOGB3868552727" :clog-type 'clog:clog-button :new-id t)) (setf (slot-value panel 'designtime-delete) - (attach-as-child clog-obj "CLOGB3868475352" :clog-type + (attach-as-child clog-obj "CLOGB3868552726" :clog-type 'clog:clog-button :new-id t)) (setf (slot-value panel 'designtime-add-lisp) - (attach-as-child clog-obj "CLOGB3868475351" :clog-type + (attach-as-child clog-obj "CLOGB3868552725" :clog-type 'clog:clog-button :new-id t)) (setf (slot-value panel 'designtime-add-clog) - (attach-as-child clog-obj "CLOGB3868475350" :clog-type + (attach-as-child clog-obj "CLOGB3868552724" :clog-type 'clog:clog-button :new-id t)) (setf (slot-value panel 'runtime-delete) - (attach-as-child clog-obj "CLOGB3868475349" :clog-type + (attach-as-child clog-obj "CLOGB3868552723" :clog-type 'clog:clog-button :new-id t)) (setf (slot-value panel 'runtime-add-lisp) - (attach-as-child clog-obj "CLOGB3868475348" :clog-type + (attach-as-child clog-obj "CLOGB3868552722" :clog-type 'clog:clog-button :new-id t)) (setf (slot-value panel 'designtime-list) - (attach-as-child clog-obj "CLOGB3868475347" :clog-type + (attach-as-child clog-obj "CLOGB3868552721" :clog-type 'clog:clog-select :new-id t)) (setf (slot-value panel 'runtime-list) - (attach-as-child clog-obj "CLOGB3868475346" :clog-type + (attach-as-child clog-obj "CLOGB3868552720" :clog-type 'clog:clog-select :new-id t)) (setf (slot-value panel 'dbl-click2) - (attach-as-child clog-obj "CLOGB3868475345" :clog-type + (attach-as-child clog-obj "CLOGB3868552719" :clog-type 'clog:clog-label :new-id t)) (setf (slot-value panel 'designtime-label) - (attach-as-child clog-obj "CLOGB3868475344" :clog-type + (attach-as-child clog-obj "CLOGB3868552718" :clog-type 'clog:clog-label :new-id t)) (setf (slot-value panel 'dbl-click1) - (attach-as-child clog-obj "CLOGB3868475343" :clog-type + (attach-as-child clog-obj "CLOGB3868552717" :clog-type 'clog:clog-label :new-id t)) (setf (slot-value panel 'runtime-label) - (attach-as-child clog-obj "CLOGB3868475342" :clog-type + (attach-as-child clog-obj "CLOGB3868552716" :clog-type 'clog:clog-label :new-id t)) (setf (slot-value panel 'edit-asd) - (attach-as-child clog-obj "CLOGB3868475341" :clog-type + (attach-as-child clog-obj "CLOGB3868552715" :clog-type 'clog:clog-button :new-id t)) (setf (slot-value panel 'project-list) - (attach-as-child clog-obj "CLOGB3868475340" :clog-type + (attach-as-child clog-obj "CLOGB3868552714" :clog-type 'clog:clog-select :new-id t)) (setf (slot-value panel 'projects-label) - (attach-as-child clog-obj "CLOGB3868475339" :clog-type + (attach-as-child clog-obj "CLOGB3868552713" :clog-type 'clog:clog-label :new-id t)) (let ((target (projects-label panel))) (declare (ignorable target)) @@ -175,4 +180,10 @@ (asdf/system-registry:clear-system sel) (setf (text-value (project-list panel)) "None") (projects-populate panel)))) - panel)) + (clog:set-on-click (reload-project-button panel) + (lambda (target) + (declare (ignorable target)) + (let ((sel (text-value (project-list panel)))) + (asdf/system-registry:clear-system sel) + (projects-populate panel)))) + panel)) \ No newline at end of file