Skip to content

Commit

Permalink
feat(web): disable stuff while playing
Browse files Browse the repository at this point in the history
  • Loading branch information
MrExplode committed Nov 5, 2024
1 parent 92c6e68 commit a569444
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 9 deletions.
23 changes: 20 additions & 3 deletions webapp/src/lib/components/output/OutputPanel.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import { artNetOutput, audioOutput, ltcOutput, schedulerActive } from '$lib/data/output'
import OutputSwitch from '@/output/OutputSwitch.svelte'
import { playing } from '$lib/data/control'
</script>

<Card.Root class="m-2">
Expand All @@ -11,10 +12,26 @@
<Card.Description>Toggle available outputs</Card.Description>
</Card.Header>
<Card.Content class="flex flex-col space-y-2">
<OutputSwitch outputName="ArtNet" description="Timecode over ArtNet" store={artNetOutput} />
<OutputSwitch outputName="Audio" description="Audio player output" store={audioOutput} />
<OutputSwitch outputName="LTC" description="LTC timecode output" store={ltcOutput} />
<OutputSwitch
disabled={$playing}
outputName="ArtNet"
description="Timecode over ArtNet"
store={artNetOutput}
/>
<OutputSwitch
disabled={$playing}
outputName="Audio"
description="Audio player output"
store={audioOutput}
/>
<OutputSwitch
disabled={$playing}
outputName="LTC"
description="LTC timecode output"
store={ltcOutput}
/>
<OutputSwitch
disabled={$playing}
outputName="Scheduler"
description="Scheduled events"
store={schedulerActive}
Expand Down
8 changes: 5 additions & 3 deletions webapp/src/lib/components/output/OutputSwitch.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,16 @@
let {
outputName,
description,
store
}: { outputName: string; description: string; store: Writable<boolean> } = $props()
store,
disabled
}: { outputName: string; description: string; store: Writable<boolean>; disabled: boolean } =
$props()
</script>

<Tooltip.Provider>
<Tooltip.Root>
<Tooltip.Trigger class="flex items-center space-x-2">
<Switch bind:checked={$store} />
<Switch bind:checked={$store} {disabled} />
<Label>{outputName}</Label>
</Tooltip.Trigger>
<Tooltip.Content>
Expand Down
7 changes: 4 additions & 3 deletions webapp/src/lib/components/time/SetTimeDialog.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import { Input } from '@/ui/input'
import { toast } from 'svelte-sonner'
import type { Timecode } from '$lib/data/types'
import { setTime } from '$lib/data/control'
import { playing, setTime } from '$lib/data/control'
import { cn } from '$utils'
const format = /(?<hour>\d{2}):(?<min>\d{2}):(?<sec>\d{2})\/(?<frame>\d{2})/
Expand Down Expand Up @@ -35,8 +35,9 @@
</script>

<Dialog.Root bind:open={isOpen}>
<Dialog.Trigger class={cn(buttonVariants({ variant: 'outline' }), classNames)}
>Set</Dialog.Trigger
<Dialog.Trigger
disabled={$playing}
class={cn(buttonVariants({ variant: 'outline' }), classNames)}>Set</Dialog.Trigger
>
<Dialog.Content>
<Dialog.Header>
Expand Down

0 comments on commit a569444

Please sign in to comment.