Object: BASE-AJAX-GRAPHICS-SHEET (The :GWL Package) |
Mixins: BASE-AJAX-SHEET, BASE-HTML-GRAPHICS-SHEET |
Input Slots (optional) | |
AFTER-PRESENT! [from BASE-HTML-SHEET] void | |
This is an empty function by default, but can be overridden in the respondent of a form, to do some processing after the respondent's write-html-sheet function runs to present the object. | |
AFTER-SET! [from BASE-HTML-SHEET] void | |
This is an empty function by default, but can be overridden in the requestor of a form, to do some processing after the requestor's form values are set into the specified bashee. | |
BACKGROUND-COLOR array of three numbers between 0 and 1 | |
RGB Color in decimal format. Color to be used for the background of the viewport. Defaults to the :background from the global *colors-default* parameter. | |
BASHEE [from SKELETON-UI-ELEMENT] gdl object | |
Object to have its settable computed-slots and/or query-plist set from the fields on the form upon submission. Defaults to self. | |
BEFORE-PRESENT! [from BASE-HTML-SHEET] void | |
This is an empty function by default, but can be overridden in the respondent of a form, to do some processing before the respondent's write-html-sheet function runs to present the object. This can be useful especially for objects which are subclasses of higher-level mixins such as application-mixin and node-mixin, where you do not have direct access to the write-html-sheet function and typically only define the model-inputs function. It is not always reliable to do processing in the model-inputs function, since some slots which depend on your intended modifications may already have been evaluated by the time the model-inputs function runs. | |
BEFORE-RESPONSE! [from BASE-HTML-SHEET] void | |
This is an empty function by default, but can be overridden in a user specialization of base-html-sheet, to do some processing before the header-plist is evaluated and before the HTTP response is actually initiated. | |
BEFORE-SET! [from BASE-HTML-SHEET] void | |
This is an empty function by default, but can be overridden in the requestor of a form, to do some processing before the requestor's form values are set into the specified bashee. | |
BODY-CLASS [from BASE-AJAX-SHEET] string or nil | |
Names the value of class attribute for the body tag. Default is nil. | |
BODY-ONLOAD [from BASE-AJAX-SHEET] string of javascript or nil | |
This Javascript will go into the :onload event of the body. Default is nil. | |
BODY-ONPAGESHOW [from BASE-AJAX-SHEET] string of javascript or nil | |
This Javascript will go into the :onpageshow event of the body. Default is nil. | |
BODY-ONRESIZE [from BASE-AJAX-SHEET] string of javascript or nil | |
This Javascript will go into the :onresize event of the body. Default is nil. | |
BOUNDING-BOX [from BASE-OBJECT] list of two 3d points | |
The left front bottom and right rear top corners, in global coordinates, of the rectangular volume bounding the tree of geometric objects rooted at this object. | |
CENTER [from BASE-OBJECT] 3d point | |
Indicates in global coordinates where the center of the reference box of this object should be located. | |
CHECK-SANITY? [from BASE-HTML-SHEET] boolean | |
Determines whether a a sanity check is done (with the check-sanity function) before presenting the response page if this page is a respondent. Default is NIL. | |
DISPLAY-LIST-OBJECT-ROOTS list of gdl objects | |
The leaves of each of these objects will be included in the geometry display. Defaults to nil. | |
DISPLAY-LIST-OBJECTS list of gdl objects containing geometry | |
These are the actual objects themselves, not nodes which have children or other descendants that you want to display. If you want to display the leaves of certain nodes, include the objects for those nodes in the display-list-object-roots, not here. Defaults to nil. | |
DOCTYPE-STRING [from BASE-AJAX-SHEET] string or nil | |
Contains the string for the doctype at the top of the document. Default is the standard doctype for HTML5 and later. | |
DOM-ID [from SKELETON-UI-ELEMENT] string | |
This is the auto-computed dom-id which should be used for rendering this section. If you use the main-div HTML string for rendering this object as a page section, then you do not have to generate the :div tag yourself - the main-div will be a string of HTML which is wrapped in the correct :div tag already. | |
FIELD-OF-VIEW-DEFAULT number in angular degrees | |
The maximum angle of the view frustrum for perspective views. Defaults to 45 which is natural human eye field of view. | |
FORCE-VALIDATION-FOR [from SKELETON-UI-ELEMENT] list of gdl objects of type form-control | |
The validation-function will be forced on these objects when a form is submitted, even if the object's html form-control does not happen to be included in the values submitted with the form. Defaults to nil. | |
HEAD-CLASS [from BASE-AJAX-SHEET] string or nil | |
Names the value of class attribute for the head tag. Default is nil. | |
HIDDEN? [from VANILLA-MIXIN*] boolean | |
Indicates whether the object should effectively be a hidden-object even if specified in :objects. Default is nil. | |
HTML-CLASS [from BASE-AJAX-SHEET] string or nil | |
Names the value of class attribute for the html tag. Default is nil. | |
HTML-SECTIONS [from SKELETON-UI-ELEMENT] | |
List of HTML sections to be scanned and possibly replaced in response to GDL Ajax calls. Override this slot at your own risk. The default is all sections who are most recently laid out on the respondent sheet, and this is set programmatically every time the sheet section's main-div is demanded. | |
HTML-SECTIONS-VALID [from SKELETON-UI-ELEMENT] | |
List of valid HTML sections to be scanned and possibly replaced in response to GDL Ajax calls. Override this slot at your own risk. The default is all sections who are most recently laid out on the respondent sheet, and this is set programmatically every time the sheet section's main-div is demanded. | |
IMAGE-FILE [from BASE-OBJECT] pathname or string | |
Points to a pre-existing image file to be displayed instead of actual geometry for this object. Defaults to nil | |
IMAGE-FORMAT keyword symbol | |
Determines the default image format. Defaults to the currently selected value of the image-format-selector, which itself defaults to :raphael. | |
IMAGE-FORMAT-DEFAULT keyword symbol, one of the keys from (the image-format-plist) | |
. Default for the image-format-selector. Defaults to :png. | |
IMAGE-FORMAT-PLIST plist of keys and strings | |
The default formats for graphics display. Defaults to: (list :png "PNG image" :jpeg "jpeg image" :raphael "SVG/VML") | |
IMMUNE-OBJECTS list of gdl objects | |
These objects are not used in computing the scale or centering for the display list. Defaults to nil. | |
INCLUDE-VIEW-CONTROLS? boolean | |
Indicates whether standard view-controls panel should be included with the graphics. | |
INNER-HTML [from SKELETON-UI-ELEMENT] string | |
This can be used with (str .) [in cl-who] or (:princ .) [in htmlGen] to output this section of the page, without the wrapping :div tag [so if you use this, your code would be responsible for wrapping the :div tag with :id (the dom-id).] | |
LENGTH [from GEOMETRY-VIEW-MIXIN] number | |
Length ("height" of screen window) of the graphics viewport. Default is 300. | |
LOCAL-BOX [from BASE-OBJECT] list of two 3d points | |
The left front bottom and right rear top corners, in global coordinates, of the rectangular volume bounding this geometric object. | |
MAIN-SHEET-BODY [from BASE-AJAX-SHEET] string of html | |
The main body of the page. This can be specified as input or overridden in subclass, otherwise it defaults to the content produced by the :output-function of the same name in the applicable lens for html-format. | |
OBLIQUENESS [from BASE-OBJECT] 3x3 orthonormal matrix of double-float numbers | |
This is synonymous with the orientation. | |
ONCLICK-FUNCTION [from BASE-OBJECT] lambda function of zero arguments, or nil | |
If non-nil, this function gets invoked when the user clicks the object in graphics front-ends which support this functionality, e.g. SVG/Raphael and X3DOM. | |
ORDERED-FORM-CONTROLS [from SKELETON-UI-ELEMENT] list of gdl objects, which should be of type 'base-form-control | |
. [Note -- this slot is not really necessary for protecting out-of-bounds sequence references anymore, the form-control processor protects against this by itself now]. These objects are validated and bashed first, in the order given. If the cardinality of one form-control depends on another as in the example below, then you should list those dependent objects first. Default is nil.
| |
ORIENTATION [from BASE-OBJECT] 3x3 matrix of double-float numbers | |
Indicates the absolute Rotation Matrix used to create the coordinate system of this object. This matrix is given in absolute terms (i.e. with respect to the root's orientation), and is generally created with the alignment function. It should be an orthonormal matrix, meaning each row is a vector with a magnitude of one (1.0). | |
POSSIBLE-NILS [from SKELETON-UI-ELEMENT] list of keyword symbols | |
Messages corresponding to form fields which could be missing from form submission (e.g. checkbox fields). Defaults to the names of any children or hidden-children of type menu-form-control or checkbox-form-control. | |
PRESET-ALL? [from SKELETON-UI-ELEMENT] boolean | |
This switch determines whether all form-controls should be preset before the final setting, in order to allow any interdependencies to be detected for validation or detecting changed values. If this is specified as a non-nil value, then any nil values of (the preset?) on individual form controls will be ignored. If this is specified as nil, then (the preset?) of individual form-controls (default of these is also nil) will be respected. Default is nil. | |
PROCESS-COOKIES! [from BASE-HTML-SHEET] void | |
This is an empty function by default, but can be overridden in a user specialization of base-html-sheet, to do some processing before the header-plist is evaluated and before the HTTP response is actually initiated, but after the cookies-received have been set. | |
PROJECTION-VECTOR 3d vector | |
This is the normal vector of the view plane onto which to project the 3D objects. Defaults to (getf *standard-views* (the view-selector value)), and (the view-selector value) defaults to :top. | |
RETURN-OBJECT [from BASE-HTML-SHEET] gdl object | |
Default object to which control will return with the write-back-link method | |
ROOT [from VANILLA-MIXIN*] gdl instance | |
The root-level node in this object's ``tree'' (instance hierarchy). | |
SAFE-CHILDREN [from VANILLA-MIXIN*] list of gdl instances | |
All objects from the :objects specification, including elements of sequences as flat lists. Any children which throw errors come back as a plist with error information | |
STANDARD-VIEWS [from BASE-HTML-GRAPHICS-SHEET] plist of keywords and 3d vectors | |
. Indicates the views to show in the graphics controls. | |
STRINGS-FOR-DISPLAY [from VANILLA-MIXIN*] string or list of strings | |
Determines how the name of objects of this type will be printed in most places. This defaults to the name-for-display (generally the part's name as specified in its parent), followed by an index number if the part is an element of a sequence. | |
SVG-CLASS string with css classes | |
These classes will be included in any svg tag outputted from this drawing. | |
TARGET [from BASE-HTML-SHEET] string | |
Name of a browser frame or window to display this page. Default of NIL indicates to use the same window. | |
TITLE [from BASE-AJAX-SHEET] string | |
The title of the web page. Defaults to "GendL Application -" .followed by the strings-for-display. | |
TRANSITORY-SLOTS [from BASE-HTML-SHEET] list of keyword symbols | |
Messages corresponding to form fields which should not be retained against Updates to the model (e.g. calls to the update! function or hitting the Update button or link in the browser in development mode). Defaults to NIL (the empty list). | |
USE-BSPLINES? [from BASE-HTML-GRAPHICS-SHEET] boolean | |
Determines whether to use native bspline data in the vrml | |
USE-RAPHAEL-GRAF? boolean | |
Include raphael graphing library in the page header? Default nil. | |
USE-RAPHAEL? boolean | |
Include raphael javascript library in the page header? Default nil. | |
VIEW-DIRECTION-DEFAULT | |
Default view initially in the view-selector which is automatically included in the view-controls. | |
VIEWPORT-BORDER-DEFAULT number | |
Thickness of default border around graphics viewport. Default is 1. | |
VISIBLE-CHILDREN [from VANILLA-MIXIN*] list of gdl instances | |
Additional objects to display in Tatu tree. Typically this would be a subset of hidden-children. Defaults to NIL. | |
WIDTH [from GEOMETRY-VIEW-MIXIN] number | |
Width of the graphics viewport. Default is 300. | |
Input Slots (optional, settable) | |
ADDITIONAL-HEADER-CONTENT [from BASE-AJAX-SHEET] string of valid html | |
Additional tag content to go into the page header, if you use the default main-sheet message and just fill in your own main-sheet-body, as is the intended use of the base-ajax-sheet primitive. | |
ADDITIONAL-HEADER-JS-CONTENT [from BASE-AJAX-SHEET] valid javascript | |
This javascript is added to the head of the page, just before the body. | |
DIGITATION-MODE [from BASE-HTML-GRAPHICS-SHEET] keyword symbol, one of :zoom-and-center, :report-point, or :measure-distance | |
.
| |
UI-SPECIFIC-LAYOUT-JS [from BASE-AJAX-SHEET] absolute uri in the browser | |
. This is additional JavaScript that needs to be loaded in order to initiate the layout of a user interface. Defaults to nil. | |
USE-JQUERY? [from BASE-AJAX-SHEET] boolean | |
Include jquery javascript libraries in the page header? Default nil. | |
VIEW [from BASE-HTML-GRAPHICS-SHEET] keyword symbol | |
Determines the default view from the standard-views. Defaults to :trimetric. | |
ZOOM-FACTOR [from BASE-HTML-GRAPHICS-SHEET] number | |
The factor used for zooming in or out. | |
ZOOM-MODE [from BASE-HTML-GRAPHICS-SHEET] keyword symbol, one of :in, :out, or :none, or nil | |
If :in, then clicks in the graphics area will increase the zoom factor by (the zoom-factor). If :out, then clicks will decrease the factor by that amount. If :none or nil, then clicks will have no effect. | |
Input Slots (optional, defaulting) | |
DISPLAY-CONTROLS [from BASE-OBJECT] plist | |
May contain keywords and values indicating display characteristics for this object. The following keywords are recognized currently:
| |
HEIGHT [from BASE-OBJECT] number | |
Z-axis dimension of the reference box. Defaults to zero. | |
RESPONDENT [from SKELETON-UI-ELEMENT] gdl object | |
Object to respond to the form submission. Defaults to self. | |
Computed Slots (settable) | |
DROPPED-HEIGHT-WIDTH plist with :width and :height | |
The dimensions of the bounding-box of the dragged and/or dropped element. | |
DROPPED-OBJECT list representing gdl root-path | |
This is the root path of the dragged and/or dropped object. This is not tested to see if it is part of the same object tree as current self. | |
DROPPED-X-Y 3d point | |
This is the upper-right corner of the bounding box of the dragged and/or dropped element. | |
JS-TO-EVAL [from SKELETON-UI-ELEMENT] string of valid javascript | |
This Javascript will be send with the Ajax response, and evaluated after the innerHTML for this section has been replaced. | |
Computed Slots | |
GRAPHICS string of valid html | |
This can be used to include the geometry, in the format currently selected by the image-format-selector. If the include-view-controls? is non-nil, the view-controls will be appended at the bottom of the graphics inside a table. | |
RASTER-GRAPHICS string of valid html | |
This can be used to include the PNG or JPG raster-graphics of the geometry. | |
VECTOR-GRAPHICS string of valid html | |
This can be used to include the SVG or VML vector-graphics of the geometry. | |
VIEW-CONTROLS string of valid html | |
This includes the image-format-selector, the reset-zoom-button, and the view-selector, in a simple table layout. You can override this to make the view-controls appear any way you want and include different and/or additional form-controls. | |
X3DOM-GRAPHICS string of valid html | |
This can be used to include the x3dom tag content for the geometry. | |
Hidden Objects | |
IMAGE-FORMAT-SELECTOR object of type menu-form-control | |
Its value slot can be used to determine the format of image displayed. | |
VIEW-OBJECT [from GEOMETRY-VIEW-MIXIN] gdl web-drawing object | |
This must be overridden in the specialized class. | |
GDL Functions | |
WRITE-EMBEDDED-X3DOM-WORLD void | |
Writes an embedded X3D tag with content for the view-object child of this object. The view-object child should exist and be of type web-drawing. | |