Click or drag to resize

ProgramInstanceScript Class

Script for a program instance of Altaxo. Main purpose is add functionality, when the script must load or close projects.
Inheritance Hierarchy

Namespace: Altaxo.Scripting
Assembly: AltaxoBase (in AltaxoBase.dll) Version: 4.8.3179.0 (4.8.3179.0)
Syntax
C#
public class ProgramInstanceScript : AbstractScript, 
	IScriptText, IPureScriptText, ICloneable

The ProgramInstanceScript type exposes the following members.

Constructors
 NameDescription
Public methodProgramInstanceScript Creates an empty script.
Public methodProgramInstanceScript(ProgramInstanceScript) Creates a script as a copy from another script.
Public methodProgramInstanceScript(ProgramInstanceScript, Boolean) Creates a script as a copy from another script with the option for modifying the txt.
Top
Properties
 NameDescription
Protected propertyAccumulatedEventData Gets the accumulated event data.
(Inherited from SuspendableDocumentLeafNodeWithSingleAccumulatedDataT)
Public propertyCodeEnd
(Overrides AbstractScriptCodeEnd)
Public propertyCodeHeader Gets the code header, i.e. the leading script text. It depends on the ScriptStyle.
(Overrides AbstractScriptCodeHeader)
Public propertyCodeStart
(Overrides AbstractScriptCodeStart)
Public propertyCodeTail Get the ending text of the script, dependent on the ScriptStyle.
(Overrides AbstractScriptCodeTail)
Public propertyCodeUserDefault
(Overrides AbstractScriptCodeUserDefault)
Protected propertyDebug_AbsolutePath Gets the absolute path of the node for debugging purposes.
(Inherited from SuspendableDocumentNodeBase)
Public propertyErrors Returns the compiler errors as array of strings.
(Inherited from AbstractScript)
Public propertyIsDirty True if the column script is dirty, i.e. the text changed since the last reset of IsDirty.
(Inherited from AbstractScript)
Public propertyIsDisposed Gets a value indicating whether this instance is disposed.
(Inherited from SuspendableDocumentNodeBase)
Public propertyIsDisposeInProgress Gets a value indicating whether for this instance dispose is in progress, or the instance is already disposed.
(Inherited from SuspendableDocumentNodeBase)
Public propertyIsReadOnly
(Inherited from AbstractScript)
Public propertyIsSomeoneListeningToChanges Gets a value indicating whether someone is listening to changes. For this, either the ParentObject or the Changed event must be set.
(Inherited from SuspendableDocumentNodeBase)
Public propertyIsSuspended Gets a value indicating whether this instance is suspended.
(Inherited from SuspendableDocumentLeafNode)
Public propertyName Gets the name of this document node. Null is returned if the name is not set or unknown. The set accessor will for most nodes throw a InvalidOperationException, since the name can only be set on IProjectItems.
(Inherited from SuspendableDocumentNodeBase)
Public propertyParentObject Gets/sets the parent object this instance belongs to.
(Inherited from SuspendableDocumentNodeBase)
Public propertyScriptAssembly
(Inherited from AbstractScript)
Public propertyScriptName
(Inherited from AbstractScript)
Public propertyScriptObject
(Inherited from AbstractScript)
Public propertyScriptObjectType Gives the type of the script object (full name), which is created after successfull compilation.
(Overrides AbstractScriptScriptObjectType)
Public propertyScriptText Get / sets the script text
(Inherited from AbstractScript)
Public propertyScriptTextHash Get the script text hash
(Inherited from AbstractScript)
Public propertyUserAreaScriptOffset Gets the index in the script (considered as string), where the user area starts. This is momentarily behind the comment line " ----- add your script below this line ------"
(Inherited from AbstractScript)
Top
Methods
 NameDescription
Protected methodAccumulateChangeData
(Inherited from SuspendableDocumentLeafNodeWithEventArgs)
Protected methodAccumulatedChangeData_SetBackAfterResumeAndSuspend Sets the change data without further processing. This function is infrastructure and intended to use only in OnResume after the parent has suspended this node again.
(Inherited from SuspendableDocumentLeafNodeWithSingleAccumulatedDataT)
Protected methodAccumulatedEventData_Clear Clears the accumulated event data.
(Inherited from SuspendableDocumentLeafNodeWithSingleAccumulatedDataT)
Protected methodAccumulatedEventData_HasZeroOrOneEventArg Determines whether there is no or only one single event arg accumulated. If this is the case, the return value is true. If there is one event arg accumulated, it is returned in the argument singleEventArg. The return value is false if there is more than one event arg accumulated. In this case the singleEventArg is null on return, and the calling function should use AccumulatedEventData to enumerate all accumulated event args.
(Inherited from SuspendableDocumentLeafNodeWithSingleAccumulatedDataT)
Protected methodChildDisposeMemberT Helper function to dispose a child node of this instance. It helps to ensure the correct order: first, the child node is set to null and only then the child node is disposed.
(Inherited from SuspendableDocumentNodeBase)
Public methodClearErrors
(Inherited from AbstractScript)
Public methodClone Clones the script.
(Overrides AbstractScriptClone)
Public methodCloneForModification
(Inherited from AbstractScript)
Public methodCompile Does the compilation of the script into an assembly. If it was not compiled before or is dirty, it is compiled first. From the compiled assembly, a new instance of the newly created script class is created and stored in m_ScriptObject.
(Inherited from AbstractScript)
Public methodCopyFrom Copies the content of a script to here.
(Inherited from AbstractScript)
Public methodDispose Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
(Inherited from SuspendableDocumentNodeBase)
Protected methodDispose(Boolean) Releases unmanaged and - optionally - managed resources.
(Inherited from SuspendableDocumentNodeBase)
Public methodEhParentTunnelingEventHappened Is called by the parent when a tunneling event happened into the parent.
(Inherited from SuspendableDocumentNodeBase)
Public methodEhSelfChanged Calls EhSelfChanged with EventArgs.Empty
(Inherited from SuspendableDocumentLeafNodeWithEventArgs)
Protected methodEhSelfChanged(EventArgs) Called if some member of this instance itself has changed.
(Inherited from SuspendableDocumentLeafNode)
Public methodEhSelfTunnelingEventHappened(TunnelingEventArgs) Is called by this instance if a tunneling event happened into this instance. The tunneling event triggers the TunneledEvent and is additionally distributed to all childs of this instance.
(Inherited from SuspendableDocumentNodeBase)
Public methodEhSelfTunnelingEventHappened(TunnelingEventArgs, Boolean) Is called by this instance if a tunneling event happened into this instance. The tunneling event triggers the TunneledEvent and is - depending on the provided parameter - also distributed to all childs of this instance.
(Inherited from SuspendableDocumentNodeBase)
Public methodEquals
(Inherited from AbstractScript)
Public methodExecute Executes the script. If no instance of the script object exists, a error message will be stored and the return value is false. If the script object exists, the Execute function of this script object is called.
Protected methodFinalize Finalizes an instance of the SuspendableDocumentNodeBase class.
(Inherited from SuspendableDocumentNodeBase)
Public methodGetErrorsAsString
(Inherited from AbstractScript)
Public methodGetHashCode
(Inherited from AbstractScript)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Protected methodHandleLowPriorityChildChangeCases Handles the cases when a child changes, but a reaction is neccessary only if the table is not suspended currently.
(Inherited from SuspendableDocumentLeafNode)
Public methodMakeSureWasTriedToCompile This ensures that it was tried to compile the script. If the script object is null, and it was not already tried to compile the script, the script will be compiled by this function, and the script object will be created if the comilation was sucessfull. The flag isTriedToCompile is set to true then (independent on the success of the compilation) to avoid subsequent tries to compile the code.
(Inherited from AbstractScript)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
Protected methodOnAboutToBeResumed Is called when the suspend level is still 1 (one), but is about to fall to zero, i.e. shortly before the call to OnResume. This function is not called before OnResumeSilently!
(Inherited from SuspendableDocumentLeafNode)
Protected methodOnChanged Fires the change event with the EventArgs provided in the argument.
(Inherited from SuspendableDocumentNodeBase)
Protected methodOnResume Is called when the suspend level falls down from 1 to zero by a call to Resume or a call to [M:Altaxo.Main.ISuspendToken.Dispose()].
(Inherited from SuspendableDocumentLeafNode)
Protected methodOnResumeSilently Is called when the suspend level falls down from 1 to zero by a call to ResumeSilently. The implementation should delete any accumulated events, should also disarm the suspendTokens of the childs of this object, and should not fire any Changed events nor set the change state of the object to dirty.
(Inherited from SuspendableDocumentLeafNode)
Protected methodOnSuspended Called when the suspend level has just gone from 0 to 1, i.e. the object was suspended.
(Inherited from SuspendableDocumentLeafNode)
Protected methodOnTunnelingEvent Fires the TunneledEvent event.
(Inherited from SuspendableDocumentNodeBase)
Public methodResume(ISuspendToken) Resumes changed events by calling Resume for the provided suspend token, and setting the reference to the suspend token to null. If Event data were accumulated during the suspended state, a changed event is triggered for each event data.
(Inherited from SuspendableDocumentNodeBase)
Public methodResume(ISuspendToken, EventFiring) Resumes changed events, either with taking the accumulated event data into account (see Resume(ISuspendToken)) or discarding the accumulated event data (see ResumeSilently(ISuspendToken), depending on the provided argument eventFiring.
(Inherited from SuspendableDocumentNodeBase)
Public methodResumeCompleteTemporarily Resumes the object completely for only a short time. Thus, if object was suspended before, it will be suspended again when the function returns.
(Inherited from SuspendableDocumentLeafNode)
Public methodResumeCompleteTemporarilyGetToken Resumes the object completely for the time the returned token is referenced and not disposed. The return value is a token that had 'absorbed' the suspend count of the object, resulting in the suspend count of the object dropped to 0 (zero). When the returned token is finally disposed, the suspend count of the object is increased again by the 'absorbed' suspend count.
(Inherited from SuspendableDocumentLeafNode)
Public methodResumeSilently Resumes changed events by calling Resume for the provided suspend token, and setting the reference to the suspend token to null. All event data accumulated during the suspended state are discarded, and thus no change event is triggered even if the instance has changed during the suspended state.
(Inherited from SuspendableDocumentNodeBase)
Public methodSetCompilerResult
(Inherited from AbstractScript)
Public methodSetDisposeInProgress Sets the flag that dispose is in progress for this node and all child nodes recursively.
(Inherited from SuspendableDocumentNodeBase)
Protected methodSetMemberAndRaiseSelfChangedT(NullableT, NullableT) Sets a member variable of this instance and raise a change event with Empty if the new value is different from the old value. The comparison is done using the IEquatableT interface of the member variable. Note: to set members that implement IDocumentNode please use the Child... functions.
(Inherited from SuspendableDocumentNodeBase)
Protected methodSetMemberAndRaiseSelfChangedT(T, T) Sets a member variable of this instance and raise a change event with Empty if the new value is different from the old value. The comparison is done using the IEquatableT interface of the member variable. Note: to set members that implement IDocumentNode please use the Child... functions.
(Inherited from SuspendableDocumentNodeBase)
Protected methodSetMemberEnumAndRaiseSelfChangedT Sets a member variable (which is an Enum) of this instance and raise a change event with Empty if the new value is different from the old value. The comparison is done using the IEquatableT interface of the member variable. Note: to set members that implement IDocumentNode please use the Child... functions.
(Inherited from SuspendableDocumentNodeBase)
Public methodSuspendGetToken Suspend will increase the SuspendLevel.
(Inherited from SuspendableDocumentLeafNode)
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Public methodTryGetName Test if this item already has a name.
(Inherited from SuspendableDocumentNodeBase)
Top
Events
 NameDescription
Public eventChangedFired when something in the object has changed, and the object is not suspended.
(Inherited from SuspendableDocumentNodeBase)
Public eventTunneledEvent The event that is fired when the object is disposed. First argument is the sender, second argument is the original source, and third argument is the event arg.
(Inherited from SuspendableDocumentNodeBase)
Top
Fields
 NameDescription
Protected field_accumulatedEventData Holds the accumulated change data.
(Inherited from SuspendableDocumentLeafNodeWithSingleAccumulatedDataT)
Public field_compilerResult The result of the successfull compiler run. After this variable is set, the script text must not be changed!
(Inherited from AbstractScript)
Protected field_errors Holds error messages created by the compiler.
(Inherited from AbstractScript)
Protected field_isDirty True when the text changed from last time this flag was reseted.
(Inherited from AbstractScript)
Protected field_parent The parent object this instance belongs to.
(Inherited from SuspendableDocumentNodeBase)
Protected field_scriptName The name of the script. This is set to a arbitrary unique name ending in ".cs".
(Inherited from AbstractScript)
Protected field_scriptObject The script object. This is a instance of the newly created script class.
(Inherited from AbstractScript)
Public field_scriptText The text of the column script.
(Inherited from AbstractScript)
Protected field_wasTriedToCompile True when the script text was already tried to compile.
(Inherited from AbstractScript)
Top
See Also