FileOpAction class | actions.t[1158]

A base class for file-oriented actions, such as SCRIPT, RECORD, and REPLAY. We provide common handling that prompts interactively for a filename; subclasses must override a few methods and properties to carry out the specific subclassed operation on the file.

`DefineSystemAction(FileOp) // original source text`
`class FileOpAction : SystemAction // after macro expansion`

Superclass Tree (in declaration order)

`FileOpAction`
`SystemAction`
`IAction`
`Action`
`BasicProd`
`object`

Subclass Tree

`FileOpAction`
`RecordAction`
`predicate(Record)`
`RecordEventsAction`
`predicate(RecordEvents)`
`RecordStringAction`
`predicate(RecordString)`
`RecordEventsStringAction`
`predicate(RecordEventsString)`
`ReplayAction`
`ReplayStringAction`
`predicate(ReplayQuiet)`
`predicate(ReplayString)`
`SaveAction`
`predicate(Save)`
`SaveStringAction`
`predicate(SaveString)`
`ScriptAction`
`predicate(Script)`
`ScriptStringAction`
`predicate(ScriptString)`

Global Objects

(none)

Summary of Properties

`fileDisposition filePromptMsg fileTypeID includeInUndo isRepeatable showCancelMsg`

Inherited from `SystemAction` :
`actionTime`

``

Inherited from `Action` :
`afterActionMainList beforeAfterObjs defaultForRecursion extraMessageParams implicitMsg isImplicit iterationCanceled originalAction parentAction preCond predicateNounPhrases pronounOverride remappedFrom showDefaultReports synthParamID verbFlags verifiedOkay`

Inherited from `BasicProd` :
`firstTokenIndex isSpecialResponseMatch lastTokenIndex`

Summary of Methods

`execSystemAction performFileOp setUpFileOp`

Inherited from `SystemAction` :
`execAction getInputFile`

Inherited from `IAction` :
`doActionMain resolveNouns`

Inherited from `Action` :
`actionOfKind addBeforeAfterObj afterAction afterActionMain announceActionObject announceAllDefaultObjects announceDefaultObject beforeAction beforeActionMain cacheMultiObjectAnnouncements callAfterActionMain callCatchAllProp callPreConditions callVerifyPreCond callVerifyProp cancelIteration checkAction checkPreConditions checkRemapping combineRemappedVerifyResults createActionFrom createActionInstance createTopicQualifierResolver doAction doActionOnce filterAmbiguousWithVerify filterFacets filterPluralWithVerify finishResolveList getAnaphoricBinding getCurrentObjects getDefaultWithVerify getEnteredVerbPhrase getImplicitPhrase getInfPhrase getMatchForRole getMessageParam getNotifyTable getObjectForRole getObjPreCondDescList getObjPreConditions getObjResponseProd getOriginalAction getOrigTokenList getOtherObjectRole getParticiplePhrase getPreCondDescList getPreCondPropForRole getPredicate getPronounOverride getQuestionInf getRemappedFrom getRemapPropForRole getResolvedObjList getResolveInfo getRoleFromIndex getSimpleSynonymRemap getSortedVerifyResults getVerbPhrase getVerifyPropForRole initTentative isConversational isNestedIn isPartOf isRemapped makeResolveInfo makeResolveInfoList maybeAnnounceDefaultObject maybeAnnounceImplicit maybeAnnounceMultiObject noMatch notifyBeforeAfter objListPronoun preAnnounceActionObject recalcSenseContext repeatAction resetAction resolveAction resolvedObjectsInScope runBeforeNotifiers saveActionForAgain setCurrentObjects setImplicit setMessageParam setMessageParams setNested setObjectMatches setOriginalAction setPronounOverride setRemapped setResolvedObjects spPrefix spSuffix synthMessageParam verifyAction verifyHandlersExist whatObj whatTranslate withVerifyResults zeroActionTime`

Inherited from `BasicProd` :
`canResolveTo getOrigText setOrigTokenList`

Properties

`fileDisposition` | `actions.t[1163]`

the file dialog open/save type

`filePromptMsg` | `actions.t[1160]`

our file dialog prompt message

`fileTypeID` | `actions.t[1166]`

the file dialog type ID

`includeInUndo` OVERRIDDEN | `actions.t[1245]`

we can't include this in undo, as it affects external files

`isRepeatable` OVERRIDDEN | `actions.t[1248]`

don't allow repeating with AGAIN

`showCancelMsg` | `actions.t[1169]`

show our cancellation mesage

Methods

`execSystemAction ( )`OVERRIDDEN | `actions.t[1189]`

Each concrete action subclass must override this to carry out our operation. This is called when the user has successfully selected a filename for the operation.

`performFileOp (fname, ack, desc, :?)` | `actions.t[1180]`

Carry out our file operation.

'desc' is an optional named argument giving a description string entered by the user via the Save Game dialog. Some versions of the Save Game dialog let the user enter this additional information, which can be stored as part of the saved game metadata.

`setUpFileOp (ack)` | `actions.t[1200]`

ask for a file, and carry out our operation is we get one

TADS 3 Library Manual
Generated on 5/16/2013 from TADS version 3.1.3