mirror of
https://github.com/barelyprofessional/KfChatDotNet.git
synced 2026-04-30 03:22:04 -04:00
107 lines
6.2 KiB
XML
107 lines
6.2 KiB
XML
<Window xmlns="https://github.com/avaloniaui"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:vm="using:KfChatDotNetGui.ViewModels"
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
|
Width="800"
|
|
Height="450"
|
|
x:Class="KfChatDotNetGui.Views.MainWindow"
|
|
Icon="/Assets/avalonia-logo.ico"
|
|
Title="KfChatDotNetGui">
|
|
|
|
<Design.DataContext>
|
|
<vm:MainWindowViewModel/>
|
|
</Design.DataContext>
|
|
|
|
<Window.Styles>
|
|
<Style Selector="ListBoxItem">
|
|
<Setter Property="VerticalContentAlignment" Value="Stretch" />
|
|
</Style>
|
|
</Window.Styles>
|
|
|
|
<Grid RowDefinitions="Auto,*,Auto,Auto">
|
|
<Menu Grid.Row="0">
|
|
<MenuItem Header="_File">
|
|
<MenuItem Click="ConnectMenuItem_OnClick" Header="_Connect"/>
|
|
<Separator/>
|
|
<MenuItem Click="ExitMenuItem_OnClick" Header="_Exit"/>
|
|
</MenuItem>
|
|
<MenuItem Header="_Settings">
|
|
<MenuItem Click="IdentitySettings_OnClick" Header="_Identity"/>
|
|
<MenuItem Click="RoomSettingsMenuItem_OnClick" Header="_Rooms"/>
|
|
<MenuItem Header="_Preferences"/>
|
|
</MenuItem>
|
|
</Menu>
|
|
<Grid Grid.Row="1" ColumnDefinitions="100,4,*,4,200">
|
|
<ListBox SelectionChanged="RoomList_OnSelectionChanged" Grid.Column="0" Name="RoomList" ItemsSource="{Binding RoomList}">
|
|
<ListBox.ItemTemplate>
|
|
<DataTemplate>
|
|
<TextBlock Text="{Binding Name}"/>
|
|
</DataTemplate>
|
|
</ListBox.ItemTemplate>
|
|
</ListBox>
|
|
<GridSplitter Grid.Column="1"/>
|
|
<ListBox Grid.Column="2" Name="ChatMessageList" ItemsSource="{Binding Messages}">
|
|
<ListBox.Styles>
|
|
<Style Selector="ListBoxItem">
|
|
<Setter Property="VerticalAlignment" Value="Stretch"/>
|
|
</Style>
|
|
</ListBox.Styles>
|
|
<ListBox.ItemTemplate>
|
|
<DataTemplate>
|
|
<Grid ColumnDefinitions="Auto,*">
|
|
<!-- <Image VerticalAlignment="Top" Margin="0,0,5,0" MaxHeight="32" Grid.Column="0" Source="{Binding Avatar}"/> -->
|
|
<Grid Grid.Column="1" RowDefinitions="Auto,Auto">
|
|
<Grid Grid.Row="0" ColumnDefinitions="Auto,Auto">
|
|
<Button Grid.Column="0" Click="AuthorNameButton_OnClick" Foreground="LightBlue" Background="Transparent" Padding="0" Margin="0,0,5,0" Content="{Binding Author}"/>
|
|
<TextBlock Grid.Column="1" FontSize="10" VerticalAlignment="Center" Foreground="Gray" Text="{Binding PostedAt}"/>
|
|
</Grid>
|
|
<!-- <TextBlock TextWrapping="Wrap" FontWeight="Light" Grid.Row="1" Text="{Binding Message}"/> -->
|
|
<ListBox Grid.Row="1" ItemsSource="{Binding Messages}" PointerEntered="OuterMessageRow_OnPointerEnter" ScrollViewer.VerticalScrollBarVisibility="Disabled">
|
|
<ListBox.Styles>
|
|
<Style Selector="ListBoxItem">
|
|
<Setter Property="Padding" Value="0"/>
|
|
<Setter Property="Margin" Value="0"/>
|
|
</Style>
|
|
<Style Selector="Button">
|
|
<Setter Property="Background" Value="Transparent"/>
|
|
<Setter Property="FontSize" Value="11"/>
|
|
<Setter Property="Padding" Value="0"/>
|
|
<Setter Property="Margin" Value="0,0,5,0"/>
|
|
</Style>
|
|
</ListBox.Styles>
|
|
<ListBox.ItemTemplate>
|
|
<DataTemplate>
|
|
<Grid ColumnDefinitions="*,Auto" RowDefinitions="*">
|
|
<TextBlock Grid.Column="0" TextWrapping="Wrap" FontWeight="Light" Text="{Binding Message}"/>
|
|
<WrapPanel Grid.Column="1" IsVisible="{Binding IsHighlighted}">
|
|
<Button Click="MessageEditButton_OnClick" IsVisible="{Binding OwnMessage}" Foreground="Orange">Edit</Button>
|
|
<Button Click="MessageDeleteButton_OnClick" IsVisible="{Binding OwnMessage}" Foreground="Red">Delete</Button>
|
|
<Button Click="CopyButton_OnClick" Foreground="LightBlue">Copy</Button>
|
|
</WrapPanel>
|
|
</Grid>
|
|
</DataTemplate>
|
|
</ListBox.ItemTemplate>
|
|
</ListBox>
|
|
</Grid>
|
|
</Grid>
|
|
</DataTemplate>
|
|
</ListBox.ItemTemplate>
|
|
</ListBox>
|
|
<GridSplitter Grid.Column="3"></GridSplitter>
|
|
<ListBox Grid.Column="4" Name="UserList" ItemsSource="{Binding UserList}">
|
|
<ListBox.ItemTemplate>
|
|
<DataTemplate>
|
|
<TextBlock Text="{Binding Name}"/>
|
|
</DataTemplate>
|
|
</ListBox.ItemTemplate>
|
|
</ListBox>
|
|
</Grid>
|
|
<Grid Margin="1" Grid.Row="2" ColumnDefinitions="*,Auto">
|
|
<TextBox KeyDown="NewChatMessage_OnKeyDown" Name="NewChatMessage" Grid.Column="0" BorderBrush="Gray" TextWrapping="NoWrap"/>
|
|
<Button Click="NewChatMessageSubmitButton_OnClick" Grid.Column="1">Send</Button>
|
|
</Grid>
|
|
<TextBlock Grid.Row="3" Text="{Binding Status}"/>
|
|
</Grid>
|
|
</Window> |