feat(ui): planning sessions UI (Plan C) #5
@@ -37,6 +37,9 @@ public sealed partial class TaskRowViewModel : ViewModelBase
|
|||||||
public bool IsPlanningParent => Status == TaskStatus.Planning || Status == TaskStatus.Planned;
|
public bool IsPlanningParent => Status == TaskStatus.Planning || Status == TaskStatus.Planned;
|
||||||
public bool IsDraft => Status == TaskStatus.Draft;
|
public bool IsDraft => Status == TaskStatus.Draft;
|
||||||
|
|
||||||
|
public bool CanOpenPlanningSession => Status == TaskStatus.Manual && !IsChild;
|
||||||
|
public bool CanResumeOrDiscardPlanning => Status == TaskStatus.Planning;
|
||||||
|
|
||||||
public string? PlanningBadge => Status switch
|
public string? PlanningBadge => Status switch
|
||||||
{
|
{
|
||||||
TaskStatus.Planning => "PLANNING",
|
TaskStatus.Planning => "PLANNING",
|
||||||
@@ -76,9 +79,15 @@ public sealed partial class TaskRowViewModel : ViewModelBase
|
|||||||
OnPropertyChanged(nameof(IsPlanningParent));
|
OnPropertyChanged(nameof(IsPlanningParent));
|
||||||
OnPropertyChanged(nameof(PlanningBadge));
|
OnPropertyChanged(nameof(PlanningBadge));
|
||||||
OnPropertyChanged(nameof(IsDraft));
|
OnPropertyChanged(nameof(IsDraft));
|
||||||
|
OnPropertyChanged(nameof(CanOpenPlanningSession));
|
||||||
|
OnPropertyChanged(nameof(CanResumeOrDiscardPlanning));
|
||||||
}
|
}
|
||||||
|
|
||||||
partial void OnParentTaskIdChanged(string? value) => OnPropertyChanged(nameof(IsChild));
|
partial void OnParentTaskIdChanged(string? value)
|
||||||
|
{
|
||||||
|
OnPropertyChanged(nameof(IsChild));
|
||||||
|
OnPropertyChanged(nameof(CanOpenPlanningSession));
|
||||||
|
}
|
||||||
|
|
||||||
partial void OnBranchChanged(string? value) => OnPropertyChanged(nameof(HasBranch));
|
partial void OnBranchChanged(string? value) => OnPropertyChanged(nameof(HasBranch));
|
||||||
partial void OnLiveTailChanged(string? value) => OnPropertyChanged(nameof(HasLiveTail));
|
partial void OnLiveTailChanged(string? value) => OnPropertyChanged(nameof(HasLiveTail));
|
||||||
|
|||||||
@@ -38,6 +38,19 @@
|
|||||||
IsVisible="{Binding IsQueued}"
|
IsVisible="{Binding IsQueued}"
|
||||||
Click="OnRemoveFromQueueClick"/>
|
Click="OnRemoveFromQueueClick"/>
|
||||||
<Separator/>
|
<Separator/>
|
||||||
|
<MenuItem Header="Open planning Session"
|
||||||
|
Command="{Binding $parent[ItemsControl].((vm:TasksIslandViewModel)DataContext).OpenPlanningSessionCommand}"
|
||||||
|
CommandParameter="{Binding}"
|
||||||
|
IsVisible="{Binding CanOpenPlanningSession}"/>
|
||||||
|
<MenuItem Header="Resume planning Session"
|
||||||
|
Command="{Binding $parent[ItemsControl].((vm:TasksIslandViewModel)DataContext).ResumePlanningSessionCommand}"
|
||||||
|
CommandParameter="{Binding}"
|
||||||
|
IsVisible="{Binding CanResumeOrDiscardPlanning}"/>
|
||||||
|
<MenuItem Header="Discard planning session"
|
||||||
|
Command="{Binding $parent[ItemsControl].((vm:TasksIslandViewModel)DataContext).DiscardPlanningSessionCommand}"
|
||||||
|
CommandParameter="{Binding}"
|
||||||
|
IsVisible="{Binding CanResumeOrDiscardPlanning}"/>
|
||||||
|
<Separator/>
|
||||||
<MenuItem Header="Schedule for..." Click="OnScheduleForClick"/>
|
<MenuItem Header="Schedule for..." Click="OnScheduleForClick"/>
|
||||||
<MenuItem Header="Clear schedule"
|
<MenuItem Header="Clear schedule"
|
||||||
IsVisible="{Binding HasSchedule}"
|
IsVisible="{Binding HasSchedule}"
|
||||||
|
|||||||
Reference in New Issue
Block a user