Class TierEdit<T>
- All Implemented Interfaces:
IExtendable
,Serializable
,UndoableEdit
- Direct Known Subclasses:
IPALookupEdit
,RecordSegmentEdit
A change to the value of a Tier
. The record parameter is optional, however if it is not
null additional operations (such as syllabification and alignment) will be performed on
dependent tiers. If the tier is not currently in the record it is added when this edit is performed.
An EditorEventType.TierChange
event will be issued for each altered tier with valueAdjusting set to true.
If this edit's valueAdjusting is false, another event will also be issued for each tier with valueAdjusting set to false.
This should be the end of a sequence of change events on the same tier. By default valueAdjusting is true.
If the tier is blind and the provided transcriber is not Transcriber.VALIDATOR
Blind transcriptions are
modified instead of tier value. When modifying blind transcriptions EditorEventType.TierChangeData.oldValue()
and EditorEventType.TierChangeData.newValue()
will be the values for the provided
transcriber and not the value returned by Tier.getValue()
.
Secondary behaviours may be added to tier edits by supplying an implementation of TierEdit.DependentTierChanges
as
an extension on the tier object. Secondary actions are responsible for firing TierChange events for any modified tiers.
Multiple secondary actions may be added using TierEdit.DependentTierChangeChain
.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
Chain dependent tier changes.static interface
Extension for tiers which allow for automatic changes to dependent tiers to be setup at runtime. -
Field Summary
Fields inherited from class javax.swing.undo.AbstractUndoableEdit
RedoName, UndoName
-
Constructor Summary
ConstructorsConstructorDescriptionWith record provided if not the current recordTierEdit
(SessionEditor editor, Tier<T> tier, String text) TierEdit
(SessionEditor editor, Tier<T> tier, T newValue) TierEdit
(SessionEditor editor, Transcriber transcriber, Record record, Tier<T> tier, T newValue) New tier editor event with transcriber specifiedTierEdit
(Session session, EditorEventManager editorEventManager, Record record, Tier<T> tier, String text) Tier edit using text as new tier valueTierEdit
(Session session, EditorEventManager editorEventManager, Record record, Tier<T> tier, T newValue) TierEdit
(Session session, EditorEventManager editorEventManager, Transcriber transcriber, Record record, Tier<T> tier, String text) TierEdit
(Session session, EditorEventManager editorEventManager, Transcriber transcriber, Record record, Tier<T> tier, String text, boolean valueAdjusting) Tier edit using text with all parameters specifiedTierEdit
(Session session, EditorEventManager editorEventManager, Transcriber transcriber, Record record, Tier<T> tier, T newValue) TierEdit
(Session session, EditorEventManager editorEventManager, Transcriber transcriber, Record record, Tier<T> tier, T newValue, boolean valueAdjusting) Tier edit with all parameters specified -
Method Summary
Modifier and TypeMethodDescriptionvoid
doIt()
'Do' the specified action.<R> void
fireTierChange
(Tier<R> tier, R oldValue, R newValue) Fire tier change events for given tier oldLoc value and new valuegetAdditionalTierChange
(String tierName) getTier()
boolean
Deprecated.opposite of valueAdjustingboolean
protected void
Called on doIt() and undo() this will apply any dependent tier changes such as phone alignment or segment adjustments.void
putAdditionalTierChange
(String tierName, Object value) void
setFireHardChangeOnUndo
(boolean fireHardChangeOnUndo) Deprecated.use setValueAdjustingvoid
setValueAdjusting
(boolean valueAdjusting) void
undo()
Methods inherited from class ca.phon.app.session.editor.undo.SessionUndoableEdit
canRedo, canUndo, getEditorEventManager, getExtension, getExtensions, getSession, getSource, putExtension, redo, removeExtension, setSource
Methods inherited from class javax.swing.undo.AbstractUndoableEdit
addEdit, die, getPresentationName, isSignificant, replaceEdit, toString
-
Constructor Details
-
TierEdit
-
TierEdit
public TierEdit(SessionEditor editor, Transcriber transcriber, Record record, Tier<T> tier, T newValue) New tier editor event with transcriber specified- Parameters:
editor
-transcriber
-record
-tier
-newValue
-
-
TierEdit
With record provided if not the current record- Parameters:
editor
-record
-tier
-newValue
-
-
TierEdit
-
TierEdit
public TierEdit(Session session, EditorEventManager editorEventManager, Transcriber transcriber, Record record, Tier<T> tier, T newValue) -
TierEdit
public TierEdit(Session session, EditorEventManager editorEventManager, Transcriber transcriber, Record record, Tier<T> tier, T newValue, boolean valueAdjusting) Tier edit with all parameters specified- Parameters:
session
-editorEventManager
-transcriber
-record
-tier
-newValue
-valueAdjusting
-
-
TierEdit
-
TierEdit
-
TierEdit
-
TierEdit
public TierEdit(Session session, EditorEventManager editorEventManager, Transcriber transcriber, @Nullable Record record, Tier<T> tier, String text) -
TierEdit
public TierEdit(Session session, EditorEventManager editorEventManager, Transcriber transcriber, @Nullable Record record, Tier<T> tier, String text, boolean valueAdjusting) Tier edit using text with all parameters specified- Parameters:
session
-editorEventManager
-transcriber
-record
- if not provided secondary tier actions are not performedtier
-text
-valueAdjusting
-
-
-
Method Details
-
getUndoPresentationName
- Specified by:
getUndoPresentationName
in interfaceUndoableEdit
- Overrides:
getUndoPresentationName
in classAbstractUndoableEdit
-
getRedoPresentationName
- Specified by:
getRedoPresentationName
in interfaceUndoableEdit
- Overrides:
getRedoPresentationName
in classAbstractUndoableEdit
-
getTranscriber
-
getRecord
-
getOldValue
-
getTier
-
getNewValue
-
isValueAdjusting
public boolean isValueAdjusting() -
setValueAdjusting
public void setValueAdjusting(boolean valueAdjusting) -
putAdditionalTierChange
-
getAdditionalTierChange
-
isFireHardChangeOnUndo
Deprecated.opposite of valueAdjusting- Returns:
- !isValueIsAdjusting()z
-
setFireHardChangeOnUndo
Deprecated.use setValueAdjusting- Parameters:
fireHardChangeOnUndo
-
-
fireTierChange
Fire tier change events for given tier oldLoc value and new value- Type Parameters:
R
- type of provided tier and values- Parameters:
tier
-oldValue
-newValue
-
-
doIt
public void doIt()Description copied from class:SessionUndoableEdit
'Do' the specified action. The method is called by the EditorUnsoSupport when new edits are posted.- Specified by:
doIt
in classSessionUndoableEdit
-
undo
public void undo()- Specified by:
undo
in interfaceUndoableEdit
- Overrides:
undo
in classAbstractUndoableEdit
-
performDependentTierChanges
protected void performDependentTierChanges()Called on doIt() and undo() this will apply any dependent tier changes such as phone alignment or segment adjustments.
-