Commit 62917f2e authored by Dave Cooper's avatar Dave Cooper
Browse files

pushing latest.

parent 965bbba0
......@@ -29,11 +29,35 @@
(setq *asdf-found?* nil)
(defpackage :asdf (:nicknames :asdf/interface asdf/lisp-action))))
(in-package :asdf)
(when (find-package :asdf)
(defclass asdf::gdl (asdf::cl-source-file) ((type :initform "gdl")))
(defclass asdf::gendl (asdf::cl-source-file) ((type :initform "gendl")))
(defclass asdf::lisp (asdf::cl-source-file) ()))
(defclass asdf::lisp (asdf::cl-source-file) ())
(defclass asdf::table (asdf::cl-source-file) ((type :initform "table")))
(defmethod perform ((o compile-op) (c asdf::table))
(perform-peruse-file o c))
(defmethod perform ((o load-op) (c asdf::table))
(perform-peruse-file o c))
(defun perform-peruse-file (o c)
"Perform the perusal of icad-style catalog table."
(declare (ignore o))
(let ((input-file (slot-value c 'asdf/component:absolute-pathname)))
(gendl::peruse-file input-file
:load t))))
(in-package :cl-user)
(eval-when (:compile-toplevel :load-toplevel :execute)
(unless *asdf-found?* (delete-package :asdf)))
......
......@@ -59,7 +59,17 @@ x 1. Update welcome message to reflect empty object and refer to File->New.
(design-mode? nil :settable)
(user-mode?-default *user-mode?*))
(user-mode?-default *user-mode?*)
(additional-css-links nil)
(empty-display-list-greeting
(with-cl-who-string ()
(:p (:h2 (fmt "Welcome to Geysr.")))
(:p (fmt
"Geysr is for inspecting Genworks GDL models
while you're developing them. You can see your
model structure in the tree at the upper left.")))))
:computed-slots
......@@ -131,9 +141,15 @@ x 1. Update welcome message to reflect empty object and refer to File->New.
(body-onresize (when (the use-ajax?) "gdlResize();"))
(body-onpageload "gdlResize();")
(local-css-link (with-cl-who-string ()
((:link :href "/geysr-static/styles.css" :rel "stylesheet"))
((:link :href "/geysr-static/menu.css" :rel "stylesheet"))))
(local-css-link
(with-cl-who-string ()
(string-append
(htm
((:link :href "/geysr-static/styles.css" :rel "stylesheet"))
((:link :href "/geysr-static/menu.css" :rel "stylesheet")))
(if (the additional-css-links)
(dolist (link (ensure-list (the additional-css-links)))
(htm ((:link :href link :rel "stylesheet")))) ""))))
(main-sheet-body
(with-cl-who-string (:indent t)
......@@ -226,26 +242,29 @@ x 1. Update welcome message to reflect empty object and refer to File->New.
:inner-html (if (eql (the click-mode) :user-interface)
(the ui inner-html)
(the viewport inner-html)))
(ui :type 'sheet-section)
#+nil
(ui :type 'iframe
:url (when (the ui-object)
(progn (gwl::register-instance (the ui-object))
(the ui-object url))))
(viewport :type 'viewport
:geysr self
:div-class "viewport-wrapper"
:pass-down (root-object root-object-type)
:length (getf (the viewport-dimensions) :length)
:width (getf (the viewport-dimensions) :width)
:onclick-function nil
:background-color "#d3d3d3"
:empty-display-list-message
(with-cl-who-string ()
(:p (:h2 (fmt "Welcome to Geysr.")))
(:p (fmt
"Geysr is for inspecting Genworks GDL models
while you're developing them. You can see your
model structure in the tree at the upper left."))
(str (the empty-display-list-greeting))
(:p "The Display List is currently empty. You may click a node (in the tree at the upper-left) to apply the "
(:i ((:a :class "menu-show" :href "#" :onclick (the (menu-control-js "the__mode")))
......@@ -290,18 +309,8 @@ x 1. Update welcome message to reflect empty object and refer to File->New.
" for a wireframe, pannable and zoomable view, or "
(:i ((:a :class "menu-show" :href "#"
:onclick graphics-format-show)
"x3dom")) " for a shaded, navigable view.")))))
"x3dom")) " for a shaded, navigable view.")))))))
)
:length (getf (the viewport-dimensions) :length)
:width (getf (the viewport-dimensions) :width)
:onclick-function nil
:background-color "#d3d3d3"
:geysr self)
(viewport-script :type 'sheet-section
:js-to-eval :parse
......
......@@ -58,14 +58,26 @@
(define-object geysr-glider (assembly)
:computed-slots ((root-object-type (read-from-string "wbl::glider"))))
(defun win-pathname-string-to-ux (string)
(glisp:replace-regexp string "\\" "/"))
(defparameter *home* (make-pathname :name nil :type nil :defaults *load-pathname*))
(defun initialize ()
(let* ((directory (namestring
(or (probe-file (merge-pathnames "geysr/" (glisp:executable-homedir-pathname)))
(glisp:system-home :geysr)
(error "~&Geysr System Home not found, needed for its static/.~%"))))
(static (namestring (merge-pathnames "static/" directory))))
(let* ((geysr-dir
(or (probe-file (merge-pathnames "geysr/" (glisp:executable-homedir-pathname)))
(ignore-errors (glisp:system-home :geysr))))
(static (namestring
(if geysr-dir (merge-pathnames "static/" geysr-dir)
(or (probe-file (merge-pathnames "geysr-static/" *home*))
(probe-file (merge-pathnames "../geysr-static/" *home*)))))))
(print-variables static)
(setq static (win-pathname-string-to-ux (subseq static 0 (1- (length static)))))
(print-variables static)
(with-all-servers (server)
(mapc #'(lambda(prefix file)
......@@ -99,5 +111,4 @@
)))
;; (initialize)
#menu
{
z-index: 9;
font-family: "Lucida Grande", Helvetica, Arial, sans-serif;
}
#menu > ul
{
padding: 0px 10px;
margin: 0;
}
#menu ul
{
list-style: none;
}
#menu > ul > li
{
float: left;
position: relative;
padding-left: 3px;
padding-right: 3px;
width: auto;
color: rgb(68, 68, 68);
margin-left: 0px;
}
#menu ul ul li
{
padding-left: 15px;
padding-right: 15px;
white-space: nowrap;
}
#menu ul ul li a
{
display: flex;
flex-direction: row;
align-items: center;
}
#menu ul li
{
outline: none;
}
#menu a
{
display: block;
text-decoration: none;
padding: 5px 5px;
color: rgb(68, 68, 68);
}
#menu > ul ul
{
position: absolute;
background: rgb(240, 240, 240);
left: 0;
top: 100%;
visibility: hidden;
opacity: 0.95;
font-size: 15px;
box-shadow: 0 3px 5px rgba(0,0,0,0.12), 0 3px 5px rgba(0,0,0,0.24);
border-bottom-left-radius: 5px;
border-bottom-right-radius: 5px;
margin-left: 0px;
}
#menu > ul ul ul
{
left: 100%;
top: -3px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
}
#menu > ul ul > li:last-child
{
margin-bottom: 3px;
}
#menu > ul ul > li:first-child
{
margin-top: 3px;
}
#menu ul ul hr
{
border: 1px solid rgb(201, 201, 201);
margin: 0px -15px;
/* width: 165px; */
}
#menu li > ul
{
margin-left: 0px;
padding-left: 0px;
}
#menu > ul ul li
{
position: relative;
}
#menu ul li ul li > a,
#menu ul li ul li
{
background: rgb(240, 240, 240);
color: rgb(68, 68, 68);
}
#menu ul li.visible > a,
#menu ul li.visible,
#menu.hoverable ul li:hover > a,
#menu.hoverable ul li:hover
{
color: rgb(240, 240, 240) !important;
background: rgb(0, 144, 248) !important;
}
#menu ul li ul .li-selected
{
color: #407af2;
}
#menu ul li.visible > ul,
#menu.hoverable ul li:hover > ul
{
visibility: visible;
}
.li-heading, #menu.hoverable .li-heading:hover
{
background: rgb(240, 240, 240);
color: rgb(68, 68, 68);
padding: 5px 5px;
padding-right: 10px;
font-weight: bold;
}
.fa-check
{
padding-right: 5px;
}
.menu-right-icon
{
margin-left: auto;
padding-left: 12px;
transform: scale(1.8,1.0);
}
#menu
{
z-index: 9;
font-family: "Lucida Grande", Helvetica, Arial, sans-serif;
}
#menu > ul
{
padding: 0px 10px;
margin: 0;
}
#menu ul
{
list-style: none;
}
#menu > ul > li
{
float: left;
position: relative;
padding-left: 3px;
padding-right: 3px;
width: auto;
color: rgb(68, 68, 68);
margin-left: 0px;
}
#menu ul ul li
{
padding-left: 15px;
padding-right: 15px;
white-space: nowrap;
}
#menu ul ul li a
{
display: flex;
flex-direction: row;
align-items: center;
}
#menu ul li
{
outline: none;
}
#menu a
{
display: block;
text-decoration: none;
padding: 5px 5px;
color: rgb(68, 68, 68);
}
#menu > ul ul
{
position: absolute;
background: rgb(240, 240, 240);
left: 0;
top: 100%;
visibility: hidden;
opacity: 0.95;
font-size: 15px;
box-shadow: 0 3px 5px rgba(0,0,0,0.12), 0 3px 5px rgba(0,0,0,0.24);
border-bottom-left-radius: 5px;
border-bottom-right-radius: 5px;
margin-left: 0px;
}
#menu > ul ul ul
{
left: 100%;
top: -3px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
}
#menu > ul ul > li:last-child
{
margin-bottom: 3px;
}
#menu > ul ul > li:first-child
{
margin-top: 3px;
}
#menu ul ul hr
{
border: 1px solid rgb(201, 201, 201);
margin: 0px -15px;
/* width: 165px; */
}
#menu li > ul
{
margin-left: 0px;
padding-left: 0px;
}
#menu > ul ul li
{
position: relative;
}
/*
#menu > ul ul ul li, ul ul ul li a, ul ul ul ul li a
{
background: rgb(240, 240, 240) !important;
}
*/
#menu ul li ul li > a,
#menu ul li ul li
{
background: rgb(240, 240, 240);
color: rgb(68, 68, 68);
}
#menu ul li ul li.visible > a,
#menu ul li ul li.visible
{
color: rgb(240, 240, 240);
background: rgb(0, 144, 248)
}
#menu ul li ul .li-selected
{
color: #407af2;
}
#menu.hoverable ul li.visible > ul,
#menu.hoverable ul li:hover > ul
{
visibility: visible;
}
/*
#menu li.visible > ul
{
visibility: visible;
}
*/
.li-heading, #menu.hoverable .li-heading:hover
{
background: rgb(240, 240, 240);
color: rgb(68, 68, 68);
padding: 5px 5px;
padding-right: 10px;
font-weight: bold;
}
.fa-check
{
padding-right: 5px;
}
.menu-right-icon
{
margin-left: auto;
padding-left: 12px;
transform: scale(1.8,1.0);
}
#menu {z-index: 9;
font-family: "Lucida Grande", Helvetica, Arial, sans-serif;}
#menu > ul{
padding: 0px 10px;
margin: 0;
}
#menu ul {
list-style: none;
}
#menu li {
float: left;
position: relative;
padding-left: 3px;
padding-right: 3px;
width: auto;
color: rgb(68, 68, 68);
margin-left: 0px;
}
#menu ul ul li {
width: 150px;
padding-left: 15px;
}
#menu a {
display: block;
text-decoration: none;
padding: 5px 5px;
color: rgb(68, 68, 68);
}
#menu > ul ul {
position: absolute;
background: rgb(240, 240, 240);
left: 0;
top: 100%;
visibility: hidden;
opacity: 0.95;
font-size: 15px;
box-shadow: 0 3px 5px rgba(0,0,0,0.12), 0 3px 5px rgba(0,0,0,0.24);
border-bottom-left-radius: 5px;
border-bottom-right-radius: 5px;
margin-left: 0px;
}
#menu > ul ul ul {
left: 100%;
top: -3px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
}
#menu > ul ul > li:last-child {
margin-bottom: 3px;
}
#menu > ul ul > li:first-child {
margin-top: 3px;
}
#menu ul ul hr
{
border: 1px solid rgb(201, 201, 201);
margin: 0px -15px;
width: 165px;
}
#menu .li-selected
{
color: #407af2;
}
.menu-right-icon
{
position: absolute;
right: 10px;
transform: scale(1.8,1.0);
}
.nav-caret
{
transform: scaleX(1.8);
}
#menu li:hover
{
background: rgb(0, 144, 248);
}
#menu ul li:hover > a
{
color: rgb(240, 240, 240);
}