Allow adding N2 before N1

This commit is contained in:
dotmg 2025-08-27 15:18:28 +02:00
parent 2c79aa1d77
commit 1cb79e64c7
2 changed files with 20 additions and 4 deletions

View file

@ -3,7 +3,8 @@ U0:zC:4 4444 442z2/4 6244 8${DC}2z2/4 4444 622z2/4 4444 622z2/4 4444 82z2/4 4444
N1:#s,slsdsrsm/ #l,smrddrm/ mdltdrmf/ smdrmfsl'/ rsdfmrm/ mdltdrmf/ smdrmfsl'/ rsdfmrd
N2:#m,sls6/ tttlmss/ SmlSl4/ tsdtd4/ tdltdtt/ SmlSl4/ tsdtd4/ tdltdts
N3:#s,slsdstsd/ rmmmdtd/ tdmrmrDr/ #t,rmsfsfmf/ ssffslS/ tdmrmrDr/ rmsfsfmf/ ssffsfm
N4:#d,slsmsrsd/ sSSllsd/ #m, mldtlflr/ sdmr#s,dldf/ fmmrdfm/ m, ldtlf, lr/ sdmrdldf/ fmmrdsd
N4:#d,slsmsrsd/ sSSllsd/ #m, mldtlflr/ sd#s,mrdldf/ fmmrdfm/ m, ldtlf, lr/ sdmrdldf/ fmmrdsd
O4:${N:New}N4:#d,slsmsrsd/ sSSllsd/ #m, mldtlflr/ sd#s,mrdldf/ fmfrdfm/ m, ldtlf, lr/ sdmrdldf/ fmfrdsd
Y1:Izao No_ely mamy\ izao/No ihobi_antsika/${D:Fa noresenny aim-baovao/Ny fa\hafatesantsika:/}Ny ZanakAndriamanitra,/I\zay Tompom-boninahitra,/Nandao ny lapan-dRainy/Nateraka ho olona/Hamonjy sy hamelona/Antsika sombinny\ ainy.
Y2:Velomy ny fisaorana,/Na kely monja aza,/${D:Ka aoka\ izay navotana/Hi_ara-hankalaza/}Ny ZanakAndriamanitra/Ni_ala tao an-danitra/Hanafaka\ alahelo;/Ry vo_avonjy ô! derao/Jesosy I\lay Mpanjakanao/He, gaina\ izao ny helo!
Y3:Izao Andri_amanitra/Dia faly, amintsika:/${D:Jesosy, Tompon-danitra./No tonga namantsika;/}Ho re hatrany lavitra/Fa fo_inAndriamanitra/I\lay sitraky ny fony/Hitondra fahori_ana,/Hi_ari-pijali_ana/Ho solonny mpikomy

View file

@ -368,10 +368,10 @@ class Solfa(val sharedScreenModel: SharedScreenModel, private val fileRepository
}
}
}
if (voiceNumber == 1) {
/*if (voiceNumber == 1) {
N.add(0, POneVoiceNote())
}
N.add(voiceNumber, newN)
}*/
N.addWithPadding(voiceNumber, newN)
}
private fun loadT(line: String) {
templateString = line
@ -641,4 +641,19 @@ class Solfa(val sharedScreenModel: SharedScreenModel, private val fileRepository
L[i].appendDSLyrics(stanzaNumber, lyricsItem)
}
}
fun MutableList<POneVoiceNote>.addWithPadding(index: Int, element: POneVoiceNote) {
if (index < this.size) {
// L'index existe déjà, on remplace l'élément.
this[index] = element
} else {
// L'index n'existe pas encore.
// On remplit d'abord les "trous" avec des notes par défaut.
for (i in this.size until index) {
this.add(POneVoiceNote())
}
// Puis on ajoute le nouvel élément à la fin de la liste,
// ce qui est maintenant l'index cible.
this.add(element)
}
}
}