| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- <Window xmlns="https://github.com/avaloniaui"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:vm="using:SlamCross.ViewModels"
- xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
- xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
- mc:Ignorable="d" d:DesignWidth="900" d:DesignHeight="600"
- x:Class="SlamCross.Views.MainWindow"
- x:DataType="vm:MainWindowViewModel"
- Title="SLAM - Source Live Audio Mixer"
- Width="900" Height="600"
- MinWidth="700" MinHeight="450">
- <Design.DataContext>
- <vm:MainWindowViewModel/>
- </Design.DataContext>
- <DockPanel Margin="8">
- <StackPanel DockPanel.Dock="Top" Spacing="6" Margin="0,0,0,6">
- <Grid ColumnDefinitions="Auto,Auto,Auto,*,Auto">
- <Button Grid.Column="0" Content="Import Files" Click="ImportButton_Click"
- IsEnabled="{Binding InterfaceEnabled}" Margin="0,0,4,0"/>
- <Button Grid.Column="1" Content="Import from YouTube" Click="YTButton_Click"
- IsEnabled="{Binding InterfaceEnabled}" Margin="0,0,4,0"/>
- <Button Grid.Column="2" Content="{Binding StartButtonText}"
- Click="StartStopButton_Click" Margin="0,0,8,0"/>
- <TextBlock Grid.Column="3" Text="{Binding StatusText}"
- VerticalAlignment="Center"/>
- <Button Grid.Column="4" Content="Settings" Click="SettingsButton_Click"
- IsEnabled="{Binding InterfaceEnabled}"/>
- </Grid>
- <ProgressBar Value="{Binding Progress}" Maximum="{Binding ProgressMax}" Height="6"/>
- <Grid ColumnDefinitions="Auto,8,Auto,8,Auto,*">
- <Button Grid.Column="0" Content="{Binding PlayKeyButtonText}" Click="PlayKeyButton_Click"
- IsEnabled="{Binding InterfaceEnabled}"/>
- <Button Grid.Column="2" Content="{Binding StreamButtonText}" Click="StreamButton_Click"
- Background="#2a7a2a"/>
- <Button Grid.Column="4" Content="Stop Stream" Click="StopStreamButton_Click"
- IsEnabled="{Binding IsStreaming}" Background="#7a2a2a"/>
- <TextBlock Grid.Column="5" Text="{Binding StreamStatusText}"
- VerticalAlignment="Center" Margin="8,0,0,0" FontStyle="Italic"/>
- </Grid>
- <Grid ColumnDefinitions="Auto,8,*,8,40">
- <TextBlock Grid.Column="0" Text="Volume:" VerticalAlignment="Center"/>
- <Slider Grid.Column="2" Minimum="0" Maximum="100"
- Value="{Binding GlobalVolume}"
- VerticalAlignment="Center"/>
- <TextBlock Grid.Column="4" Text="{Binding GlobalVolume, StringFormat='{}{0}%'}"
- VerticalAlignment="Center" HorizontalAlignment="Right"/>
- </Grid>
- <Grid ColumnDefinitions="Auto,*,8,Auto,*,8,Auto,*" RowDefinitions="Auto">
- <TextBlock Grid.Column="0" Text="Virtual Cable In:" VerticalAlignment="Center" Margin="0,0,4,0"/>
- <ComboBox Grid.Column="1"
- ItemsSource="{Binding OutputDevices}"
- SelectedItem="{Binding SelectedVirtualInCable}"
- DisplayMemberBinding="{Binding Name}"/>
- <TextBlock Grid.Column="3" Text="Cable Out (mic):" VerticalAlignment="Center" Margin="0,0,4,0"/>
- <ComboBox Grid.Column="4"
- ItemsSource="{Binding InputDevices}"
- SelectedItem="{Binding SelectedVirtualOutCable}"
- DisplayMemberBinding="{Binding Name}"/>
- <TextBlock Grid.Column="6" Text="Regular Mic:" VerticalAlignment="Center" Margin="0,0,4,0"/>
- <ComboBox Grid.Column="7"
- ItemsSource="{Binding InputDevices}"
- SelectedItem="{Binding SelectedRegularMic}"
- DisplayMemberBinding="{Binding Name}"/>
- </Grid>
- </StackPanel>
- <DataGrid x:Name="TrackGrid"
- ItemsSource="{Binding Tracks}"
- SelectionMode="Extended"
- CanUserSortColumns="True"
- CanUserResizeColumns="True"
- IsReadOnly="True"
- DoubleTapped="TrackGrid_DoubleTapped">
- <DataGrid.Columns>
- <DataGridTextColumn Header="Playing" Binding="{Binding IsPlaying}" Width="60"/>
- <DataGridTextColumn Header="Name" Binding="{Binding Name}" Width="*"/>
- <DataGridTextColumn Header="Hotkey" Binding="{Binding Hotkey}" Width="70"/>
- <DataGridTextColumn Header="Volume" Binding="{Binding Volume}" Width="65"/>
- <DataGridTextColumn Header="Trimmed" Binding="{Binding Trimmed}" Width="65"/>
- <DataGridTextColumn Header="Tags" Binding="{Binding Tags}" Width="200"/>
- </DataGrid.Columns>
- <DataGrid.ContextMenu>
- <ContextMenu x:Name="TrackContextMenu">
- <MenuItem Header="Play" Click="MenuPlay_Click"/>
- <MenuItem Header="Refresh" Click="MenuRefresh_Click"/>
- <Separator/>
- <MenuItem Header="Set Volume" Click="MenuVolume_Click"/>
- <MenuItem Header="Set Hotkey" Click="MenuHotkey_Click"/>
- <MenuItem Header="Remove Hotkey" Click="MenuRemoveHotkey_Click"/>
- <MenuItem Header="Trim" Click="MenuTrim_Click"/>
- <MenuItem Header="Rename" Click="MenuRename_Click"/>
- <Separator/>
- <MenuItem Header="Show in Files" Click="MenuGoTo_Click"/>
- <Separator/>
- <MenuItem Header="Delete" Click="MenuDelete_Click"/>
- </ContextMenu>
- </DataGrid.ContextMenu>
- </DataGrid>
- </DockPanel>
- </Window>
|