Class RP_SYS_CustomPhraseValue
java.lang.Object
org.jjazz.rhythm.api.rhythmparameters.RP_SYS_CustomPhraseValue
- All Implemented Interfaces:
PropertyChangeListener,EventListener,MutableRpValue
public class RP_SYS_CustomPhraseValue
extends Object
implements MutableRpValue, PropertyChangeListener
A RhythmParameter to replace one or more RhythmVoice phrases by custom phrases.
All custom phrases start at beat 0. This is a mutable class which fires a ChangeEvent when a phrase is added/removed, or when an added phrase content is modified.
-
Constructor Summary
ConstructorsConstructorDescriptionCreate a deep copy of the specified value. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddChangeListener(ChangeListener listener) Be notified of value mutations (state changes).booleanGet the custom phrase for the specified RhythmVoice.Get the RhythmVoices for which there is a custom phrase.Get the Rhythm which uses this RhythmParameter instance.inthashCode()static RP_SYS_CustomPhraseValueloadFromString(Rhythm r, String s) Create an object from a string.voidvoidremoveChangeListener(ChangeListener listener) Remove the customized phrase for the specified RhythmVoice.static StringSave the specified object state as a string.voidset(RP_SYS_CustomPhraseValue value) Set the customized phrases from the specified value (phrases are directly reused, not cloned).voidsetCustomizedPhrase(RhythmVoice rv, Phrase p) Set the customized phrase for the specified RhythmVoice.The list of RhythmVoice names sorted by preferred channel.toString()
-
Constructor Details
-
RP_SYS_CustomPhraseValue
-
RP_SYS_CustomPhraseValue
Create a deep copy of the specified value.- Parameters:
value-
-
-
Method Details
-
set
Set the customized phrases from the specified value (phrases are directly reused, not cloned).- Parameters:
value- Must share the same rhythm
-
getRhythmParameter
-
setCustomizedPhrase
Set the customized phrase for the specified RhythmVoice.- Parameters:
rv- Must belong to the rhythmp- Can't be null. Phrase starts at beat 0.
-
removeCustomizedPhrase
Remove the customized phrase for the specified RhythmVoice.- Parameters:
rv-- Returns:
- The removed phrase, or null
-
getRhythm
Get the Rhythm which uses this RhythmParameter instance.- Returns:
-
getCustomizedPhrase
Get the custom phrase for the specified RhythmVoice.- Parameters:
rv-- Returns:
- Null if no customized phrase for rv. Phrase starts at beat 0.
-
getCustomizedRhythmVoices
Get the RhythmVoices for which there is a custom phrase.- Returns:
- Empty set if no custom phrase.
-
toDescriptionString
The list of RhythmVoice names sorted by preferred channel.- Returns:
-
saveAsString
Save the specified object state as a string.Example "Bass%[PhraseString]&Piano%[PhraseString]" means 2 RhythmVoices/Phrases. "" means no custom phrase.
- Parameters:
v-- Returns:
- See Also:
-
loadFromString()
-
loadFromString
Create an object from a string.- Parameters:
r-s-- Returns:
- Throws:
ParseException- If s is invalid- See Also:
-
equals
-
hashCode
public int hashCode() -
toString
-
addChangeListener
Description copied from interface:MutableRpValueBe notified of value mutations (state changes).Note that listeners won't be notified if a new RhythmParameter value instance is replaced by another one. Use SongStructure RpChangedEvent to get all types of RP value changes.
- Specified by:
addChangeListenerin interfaceMutableRpValue
-
removeChangeListener
- Specified by:
removeChangeListenerin interfaceMutableRpValue
-
propertyChange
- Specified by:
propertyChangein interfacePropertyChangeListener
-