diff --git a/source/clog-web.lisp b/source/clog-web.lisp index 14b5b74..8cefd4c 100644 --- a/source/clog-web.lisp +++ b/source/clog-web.lisp @@ -844,8 +844,8 @@ propetery will be set to nil on creation.")) is placed in DOM at top of OBJ instead of bottom of OBJ." (unless html-id (setf html-id (clog-connection:generate-id))) - (let* ((panel (create-child obj - (format nil + (let* ((panel (create-child obj + (format nil "
~ ×~

~A

~ diff --git a/tools/clog-builder.lisp b/tools/clog-builder.lisp index 95d77c7..439c94b 100644 --- a/tools/clog-builder.lisp +++ b/tools/clog-builder.lisp @@ -2110,9 +2110,11 @@ of controls and double click to select control." (btn-del (create-img tool-bar :alt-text "delete" :url-src img-btn-del :class btn-class)) (btn-undo (create-img tool-bar :alt-text "undo" :url-src img-btn-undo :class btn-class)) (btn-redo (create-img tool-bar :alt-text "redo" :url-src img-btn-redo :class btn-class)) - (btn-test (create-img tool-bar :alt-text "eval" :url-src img-btn-test :class btn-class)) (btn-save (create-img tool-bar :alt-text "save" :url-src img-btn-save :class btn-class)) (btn-load (create-img tool-bar :alt-text "load" :url-src img-btn-load :class btn-class)) + (spacer (create-span tool-bar :content " ")) + (btn-esel (create-button tool-bar :content "Eval Sel" :class (format nil "w3-tiny ~A" btn-class))) + (btn-test (create-button tool-bar :content "Eval" :class (format nil "w3-tiny ~A" btn-class))) (content (center-panel box)) (ace (clog-ace:create-clog-ace-element content)) (status (create-div content :class "w3-tiny w3-border")) @@ -2129,18 +2131,22 @@ of controls and double click to select control." (setf (advisory-title btn-del) "delete") (setf (advisory-title btn-undo) "undo") (setf (advisory-title btn-redo) "redo") - (setf (advisory-title btn-test) "evaluate") (setf (advisory-title btn-save) "save") (setf (advisory-title btn-load) "load") + (setf (advisory-title btn-esel) "evaluate selection") + (setf (advisory-title btn-test) "evaluate") (setf (height btn-copy) "12px") (setf (height btn-paste) "12px") (setf (height btn-cut) "12px") (setf (height btn-del) "12px") (setf (height btn-undo) "12px") (setf (height btn-redo) "12px") - (setf (height btn-test) "12px") (setf (height btn-save) "12px") (setf (height btn-load) "12px") + (setf (height btn-esel) "12px") + (setf (height btn-test) "12px") + (setf (width btn-esel) "40px") + (setf (width btn-test) "40px") (setf (positioning ace) :absolute) (setf (positioning status) :absolute) (set-geometry ace :units "" :width "" :height "" @@ -2202,11 +2208,24 @@ of controls and double click to select control." (set-on-click btn-redo (lambda (obj) (declare (ignore obj)) (clog-ace:execute-command ace "redo"))) + (set-on-click btn-esel (lambda (obj) + (let ((val (clog-ace:selected-text ace))) + (unless (equal val "") + (let ((result (capture-eval val :clog-obj obj + :eval-in-package "CLOG-USER"))) + (clog-web-alert (connection-body obj) "Result" + (format nil "~&result: ~A" result) + :color-class "w3-green" + :time-out 3)))))) (set-on-click btn-test (lambda (obj) - (alert-dialog obj - (capture-eval (text-value ace)) - :title "Eval Result"))))) - + (let ((val (text-value ace))) + (unless (equal val "") + (let ((result (capture-eval val :clog-obj obj + :eval-in-package "CLOG-USER"))) + (clog-web-alert (connection-body obj) "Result" + (format nil "~&result: ~A" result) + :color-class "w3-green" + :time-out 3)))))))) (defun on-repl (obj) "Open quick start" (let* ((win (create-gui-window obj :title "CLOG Builder REPL" @@ -2220,7 +2239,7 @@ of controls and double click to select control." (let* ((app (connection-data-item obj "builder-app-data")) (win (create-gui-window obj :title "ASDF System Browser" :top 40 :left 225 - :width 592 :height 430 + :width 592 :height 435 :client-movement t)) (panel (create-asdf-systems (window-content win)))) (when project diff --git a/tools/sys-browser.clog b/tools/sys-browser.clog index 6e2da32..a9e6576 100644 --- a/tools/sys-browser.clog +++ b/tools/sys-browser.clog @@ -1,4 +1,4 @@ -
 
\ No newline at end of file diff --git a/tools/sys-browser.lisp b/tools/sys-browser.lisp index ae5b29b..3587b44 100644 --- a/tools/sys-browser.lisp +++ b/tools/sys-browser.lisp @@ -1,3 +1,4 @@ + (in-package "CLOG-TOOLS") (defclass sys-browser (clog:clog-panel) ((file-name :reader file-name) @@ -15,48 +16,48 @@ (let ((panel (change-class (clog:create-div clog-obj :content - "
status
 
" + "
status
 
" :hidden hidden :class class :html-id html-id :auto-place auto-place) 'sys-browser))) (setf (slot-value panel 'file-name) - (attach-as-child clog-obj "CLOGB3868308755" :clog-type + (attach-as-child clog-obj "CLOGB3868359582" :clog-type 'clog:clog-div :new-id t)) (setf (slot-value panel 'eval-sel-button) - (attach-as-child clog-obj "CLOGB3868308754" :clog-type + (attach-as-child clog-obj "CLOGB3868359581" :clog-type 'clog:clog-form-element :new-id t)) (setf (slot-value panel 'eval-button) - (attach-as-child clog-obj "CLOGB3868308753" :clog-type + (attach-as-child clog-obj "CLOGB3868359580" :clog-type 'clog:clog-form-element :new-id t)) (setf (slot-value panel 'save-button) - (attach-as-child clog-obj "CLOGB3868308752" :clog-type + (attach-as-child clog-obj "CLOGB3868359579" :clog-type 'clog:clog-form-element :new-id t)) (setf (slot-value panel 'search-box) - (attach-as-child clog-obj "CLOGB3868308751" :clog-type + (attach-as-child clog-obj "CLOGB3868359578" :clog-type 'clog:clog-form-element :new-id t)) (setf (slot-value panel 'class-only) - (attach-as-child clog-obj "CLOGB3868308750" :clog-type + (attach-as-child clog-obj "CLOGB3868359577" :clog-type 'clog:clog-form-element :new-id t)) (setf (slot-value panel 'label-class-only) - (attach-as-child clog-obj "CLOGB3868308749" :clog-type + (attach-as-child clog-obj "CLOGB3868359576" :clog-type 'clog:clog-label :new-id t)) (setf (slot-value panel 'status-box) - (attach-as-child clog-obj "CLOGB3868308748" :clog-type + (attach-as-child clog-obj "CLOGB3868359575" :clog-type 'clog:clog-div :new-id t)) (setf (slot-value panel 'src-box) - (attach-as-child clog-obj "CLOGB3868308747" :clog-type + (attach-as-child clog-obj "CLOGB3868359574" :clog-type 'clog-ace:clog-ace-element :new-id t)) (setf (slot-value panel 'doc-box) - (attach-as-child clog-obj "CLOGB3868308746" :clog-type + (attach-as-child clog-obj "CLOGB3868359573" :clog-type 'clog:clog-text-area :new-id t)) (setf (slot-value panel 'class-box) - (attach-as-child clog-obj "CLOGB3868308745" :clog-type + (attach-as-child clog-obj "CLOGB3868359572" :clog-type 'clog:clog-select :new-id t)) (setf (slot-value panel 'package-box) - (attach-as-child clog-obj "CLOGB3868308744" :clog-type + (attach-as-child clog-obj "CLOGB3868359571" :clog-type 'clog:clog-select :new-id t)) (setf (slot-value panel 'type-box) - (attach-as-child clog-obj "CLOGB3868308743" :clog-type + (attach-as-child clog-obj "CLOGB3868359570" :clog-type 'clog:clog-select :new-id t)) (let ((target (type-box panel))) (declare (ignorable target)) @@ -132,25 +133,28 @@ (clog:set-on-click (eval-button panel) (lambda (target) (declare (ignorable target)) - (let ((val (text-value (src-box panel)))) + (let ((pac (text-value (package-box panel))) + (val (clog-ace:selected-text (src-box panel)))) + (when (equalp "All" pac) (setf pac "CLOG-USER")) (unless (equal val "") (let ((result (capture-eval val :clog-obj panel :eval-in-package (text-value (package-box panel))))) - (clog-web-alert (connection-body clog-obj) - "Result" (format nil "~&result: ~A" result) - :color-class "w3-green" :time-out 3)))))) + (clog-web-alert (connection-body panel) "Result" + (format nil "~&result: ~A" result) :color-class + "w3-green" :time-out 3)))))) (clog:set-on-click (eval-sel-button panel) (lambda (target) (declare (ignorable target)) - (let ((val (clog-ace:selected-text (src-box panel)))) + (let ((pac (text-value (package-box panel))) + (val (clog-ace:selected-text (src-box panel)))) + (when (equalp "All" pac) (setf pac "CLOG-USER")) (unless (equal val "") (let ((result (capture-eval val :clog-obj panel - :eval-in-package - (text-value (package-box panel))))) - (clog-web-alert (connection-body clog-obj) - "Result" (format nil "~&result: ~A" result) - :color-class "w3-green" :time-out 3)))))) - panel)) + :eval-in-package pac))) + (clog-web-alert (connection-body panel) "Result" + (format nil "~&result: ~A" result) :color-class + "w3-green" :time-out 3)))))) + panel)) \ No newline at end of file