mirror of
https://github.com/ppy/osu.git
synced 2025-01-15 09:22:54 +08:00
wip: Move more functionality into ComposeBlueprintContainer
This commit is contained in:
parent
ee332e0d42
commit
d8d12cbbdd
@ -14,7 +14,7 @@ namespace osu.Game.Screens.Edit.Components.Timelines.Summary.Parts
|
||||
/// <summary>
|
||||
/// Represents a part of the summary timeline..
|
||||
/// </summary>
|
||||
public abstract class TimelinePart : Container
|
||||
public class TimelinePart : Container
|
||||
{
|
||||
protected readonly IBindable<WorkingBeatmap> Beatmap = new Bindable<WorkingBeatmap>();
|
||||
|
||||
@ -22,7 +22,7 @@ namespace osu.Game.Screens.Edit.Components.Timelines.Summary.Parts
|
||||
|
||||
protected override Container<Drawable> Content => timeline;
|
||||
|
||||
protected TimelinePart()
|
||||
public TimelinePart()
|
||||
{
|
||||
AddInternal(timeline = new Container { RelativeSizeAxes = Axes.Both });
|
||||
|
||||
|
@ -40,9 +40,6 @@ namespace osu.Game.Screens.Edit.Compose.Components
|
||||
[Resolved]
|
||||
private IAdjustableClock adjustableClock { get; set; }
|
||||
|
||||
[Resolved]
|
||||
private HitObjectComposer composer { get; set; }
|
||||
|
||||
[Resolved]
|
||||
private EditorBeatmap beatmap { get; set; }
|
||||
|
||||
@ -77,7 +74,7 @@ namespace osu.Game.Screens.Edit.Compose.Components
|
||||
dragBox.CreateProxy()
|
||||
};
|
||||
|
||||
foreach (var obj in composer.HitObjects)
|
||||
foreach (var obj in beatmap.HitObjects)
|
||||
addBlueprintFor(obj);
|
||||
}
|
||||
|
||||
|
@ -14,15 +14,19 @@ using osuTK.Graphics;
|
||||
|
||||
namespace osu.Game.Screens.Edit.Compose.Components.Timeline
|
||||
{
|
||||
internal class TimelineHitObjectDisplay : TimelinePart
|
||||
internal class TimelineHitObjectDisplay : BlueprintContainer
|
||||
{
|
||||
private EditorBeatmap beatmap { get; }
|
||||
|
||||
private readonly TimelinePart content;
|
||||
|
||||
public TimelineHitObjectDisplay(EditorBeatmap beatmap)
|
||||
{
|
||||
RelativeSizeAxes = Axes.Both;
|
||||
|
||||
this.beatmap = beatmap;
|
||||
|
||||
AddInternal(content = new TimelinePart());
|
||||
}
|
||||
|
||||
[BackgroundDependencyLoader]
|
||||
@ -42,15 +46,15 @@ namespace osu.Game.Screens.Edit.Compose.Components.Timeline
|
||||
|
||||
private void remove(HitObject h)
|
||||
{
|
||||
foreach (var d in Children.OfType<TimelineHitObjectRepresentation>().Where(c => c.HitObject == h))
|
||||
foreach (var d in content.OfType<TimelineHitObjectRepresentation>().Where(c => c.HitObject == h))
|
||||
d.Expire();
|
||||
}
|
||||
|
||||
private void add(HitObject h)
|
||||
{
|
||||
var yOffset = Children.Count(d => d.X == h.StartTime);
|
||||
var yOffset = content.Count(d => d.X == h.StartTime);
|
||||
|
||||
Add(new TimelineHitObjectRepresentation(h) { Y = -yOffset * TimelineHitObjectRepresentation.THICKNESS });
|
||||
content.Add(new TimelineHitObjectRepresentation(h) { Y = -yOffset * TimelineHitObjectRepresentation.THICKNESS });
|
||||
}
|
||||
|
||||
private class TimelineHitObjectRepresentation : CompositeDrawable
|
||||
|
Loading…
Reference in New Issue
Block a user