Home > Class Reference > ENSLIB namespace > CSPX.AbstractSVGDocument


abstract class CSPX.AbstractSVGDocument extends %Studio.AbstractDocument

Abstract Document used to server SVG-editor documents into Studio
Subclasses need to provide:
RegisterExtension Projection
Save method
Exists method
EDITORURL parameter


If set, name of superclass used for documents of this type.
For example, Ens.DataTransformDTL
parameter DOMAIN = Ensemble;
Use our own domain for localization
parameter EDITORURL;
URL to use to get actual editor for Studio to display.
parameter EXTENSION;
File extension used for this document (e.g., .dtl)


method Compile(flags As %String) as %Status
Compile this document
classmethod Delete(name As %String) as %Status
Delete the class that corresponds to document name. Subclass should override this behavior for non-class based editors.
classmethod Exists(name As %String) as %Boolean
Return 1 if the given document exists and 0 if it does not.
Subclass should override this behavior.
classmethod GetClassName(pName As %String) as %String
return the corresponding class name for this document
classmethod GetOther(Name As %String) as %String
Return other document types that this is related to. Passed a name and you return a comma separated list of the other documents it is related to or "" if it is not related to anything
Subclass should override this behavior for non-class based editors.
classmethod HasExtension(name As %String, ext As %String) as %Boolean
Check to see that the file type matches
classmethod ListClose(ByRef qHandle As %Binary) as %Status
classmethod ListExecute(ByRef qHandle As %Binary, Directory As %String, Flat As %Boolean, System As %Boolean) as %Status
classmethod ListFetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0) as %Status
method Load() as %Status
Return URL for Studio to use to load editor.
classmethod TimeStamp(name As %String) as %TimeStamp
Return the timestamp of routine 'name' in %TimeStamp format. This is used to determine if the routine has been updated on the server and so needs reloading from Studio. So the format should be $zdatetime($horolog,3), or "" if the routine does not exist.
Subclass should override this behavior for non-class based editors.

Inherited Methods

%AddToSaveSet() %OriginalNamespace() IsUpToDate()
%CheckUnique() %PackageName() ItemList()
%ClassIsLatestVersion() %ReleaseLock() LastModifiedGet()
%ClassName() %Reload() LineTerminatorSet()
%ConstructClone() %RemoveFromSaveSet() LocalizeDescription()
%Delete() %RollBack() Lock()
%DeleteExtent() %Save() LockName()
%DeleteId() %SerializeObject() MoveTo()
%DispatchClassMethod() %SetModified() MoveToEnd()
%DispatchGetModified() %UnlockStream() NextAttribute()
%DispatchGetProperty() %ValidateObject() OpenStream()
%DispatchMethod() AtEndGet() OutputToDevice()
%DispatchSetModified() AtEndSet() OutputToDeviceAt()
%DispatchSetMultidimProperty() Clear() Read()
%DispatchSetProperty() CompileDocument() ReadLine()
%Exists() CompileTime() ReadLineIntoStream()
%ExistsId() CompileTimeGet() ReadSQL()
%Extends() CopyFrom() Rewind()
%GetParameter() CopyFromAndSave() Save()