internal TimingChangeKiaiAction(TimingRecord record, Modifier mod) : base(record, mod) { Type = ActionType.ChangeKiai; }
public string BuildStatistics() { // First just calculate the column widths so we can format them nicely. We'll save the formatted tick counts // so we don't have to regenerate them later. string[] formattedTime = new string[timingRecords.Count]; int nameColumnWidth = 0; int timeColumnWidth = 0; for (int i = 0; i < timingRecords.Count; i++) { var timingRecord = timingRecords[i]; formattedTime[i] = string.Format("{0:#,0}ms", timingRecord.Milliseconds); if (formattedTime[i].Length > timeColumnWidth) { timeColumnWidth = formattedTime[i].Length; } int nameWidth = timingRecord.Name.Length; TimingRecord parent = GetParent(timingRecord); while (parent != null) { nameWidth += 2; parent = GetParent(parent); } if (nameWidth > nameColumnWidth) { nameColumnWidth = nameWidth; } } // Now generate the output System.Text.StringBuilder output = new System.Text.StringBuilder(); for (int i = 0; i < timingRecords.Count; i++) { var timingRecord = timingRecords[i]; int nameWidth = 0; TimingRecord parent = GetParent(timingRecord); while (parent != null) { output.Append("- "); nameWidth += 2; parent = GetParent(parent); } output.Append(timingRecord.Name); nameWidth += timingRecord.Name.Length; output.Append(' ', nameColumnWidth + 2 - nameWidth); output.Append(' ', timeColumnWidth - formattedTime[i].Length); output.Append(formattedTime[i]); parent = GetParent(timingRecord); if (parent != null) { output.Append(string.Format(" {0,3}%", ((timingRecord.Milliseconds * 100) / parent.Milliseconds))); } output.AppendLine(); } return(output.ToString()); }
internal TimingRemoveAction(TimingRecord record, Modifier mod) : base(record, mod) { Type = ActionType.Remove; }
internal TimingChangeSignatureAction(TimingRecord record, Modifier mod) : base(record, mod) { Type = ActionType.ChangeSignature; }
internal TimingChangeVelocityAction(TimingRecord record, Modifier mod) : base(record, mod) { Type = ActionType.ChangeVelocity; }
internal TimingChangeTickRateAction(TimingRecord record, Modifier mod) : base(record, mod) { Type = ActionType.ChangeTickRate; }
internal TimingChangeBeatLengthAction(TimingRecord record, Modifier mod) : base(record, mod) { Type = ActionType.ChangeBeatLength; }
internal TimingChangeSoundSampleAction(TimingRecord record, Modifier mod) : base(record, mod) { Type = ActionType.ChangeSoundSample; }
internal TimingChangeCustomAction(TimingRecord record, Modifier mod) : base(record, mod) { Type = ActionType.ChangeCustom; }
internal TimingAddAction(TimingRecord record, Modifier mod) : base(record, mod) { Type = ActionType.Add; }
internal TimingMoveTimelineAction(TimingRecord record, Modifier mod) : base(record, mod) { Type = ActionType.MoveTimeline; }