126 lines
7.6 KiB
XML
126 lines
7.6 KiB
XML
<Page
|
|
x:Class="PolyChat.MainPage"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
xmlns:models="using:PolyChat.Models"
|
|
mc:Ignorable="d"
|
|
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="224"/>
|
|
<ColumnDefinition Width="*"/>
|
|
</Grid.ColumnDefinitions>
|
|
<!-- LEFT SIDE -->
|
|
<Grid Grid.Column="0" Margin="16">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto"/>
|
|
<RowDefinition Height="*"/>
|
|
</Grid.RowDefinitions>
|
|
<!-- CONNECTION HEADER -->
|
|
<StackPanel HorizontalAlignment="Stretch" Spacing="8" Margin="0 0 0 8">
|
|
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Center">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*"/>
|
|
<ColumnDefinition Width="56"/>
|
|
</Grid.ColumnDefinitions>
|
|
<TextBlock x:Name="textUsername" VerticalAlignment="Center"/>
|
|
<TextBlock x:Name="textNoUsername" Text="No Name" Foreground="{ThemeResource SystemColorDisabledTextColor}" VerticalAlignment="Center"/>
|
|
<Button Grid.Column="1" Click="OnOpenEditUsernameDialog" Content="Edit" HorizontalAlignment="Stretch"/>
|
|
</Grid>
|
|
<Grid Margin="0 8 0 0">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*"/>
|
|
<ColumnDefinition Width="auto"/>
|
|
</Grid.ColumnDefinitions>
|
|
<TextBlock Text="Connect to" Foreground="{ThemeResource SystemColorDisabledTextColor}"/>
|
|
<TextBlock x:Name="ipAddress" Grid.Column="1"/>
|
|
</Grid>
|
|
<Border BorderThickness="1" BorderBrush="{ThemeResource AppBarBorderThemeBrush}"/>
|
|
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Center">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*"/>
|
|
<ColumnDefinition Width="56"/>
|
|
</Grid.ColumnDefinitions>
|
|
<TextBlock Text="My Chats" VerticalAlignment="Center" FontSize="20"/>
|
|
<Button Grid.Column="1" Click="OnOpenNewChatDialog" Content="New" HorizontalAlignment="Stretch"/>
|
|
</Grid>
|
|
</StackPanel>
|
|
<!-- CHATS LIST -->
|
|
<TextBlock x:Name="textNoChats" Grid.Row="1" Text="No open Chats" Foreground="{ThemeResource SystemColorDisabledTextColor}" Margin="0 32 0 0" HorizontalAlignment="Center"/>
|
|
<ScrollViewer Grid.Row="1" HorizontalAlignment="Stretch" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Hidden">
|
|
<ListView x:Name="listViewPartners" ItemsSource="{x:Bind Partners}" HorizontalAlignment="Stretch" Margin="0 8 0 0">
|
|
<ListView.ItemTemplate>
|
|
<DataTemplate x:DataType="models:ChatPartner">
|
|
<RadioButton GroupName="chatSelect" Tag="{x:Bind Code}" HorizontalAlignment="Stretch" Height="64" Click="OnChatPartnerSelected">
|
|
<StackPanel x:Name="ChatPartner" VerticalAlignment="Center" HorizontalAlignment="Stretch">
|
|
<StackPanel Orientation="Horizontal" HorizontalAlignment="Stretch">
|
|
<TextBlock HorizontalAlignment="Stretch" Text="{x:Bind Name}"/>
|
|
<TextBlock Foreground="{ThemeResource SystemColorDisabledTextColor}" Text=" ("/>
|
|
<TextBlock Foreground="{ThemeResource SystemColorDisabledTextColor}" Text="{x:Bind Code}"/>
|
|
<TextBlock Foreground="{ThemeResource SystemColorDisabledTextColor}" Text=")"/>
|
|
</StackPanel>
|
|
<!--
|
|
<StackPanel Orientation="Horizontal" HorizontalAlignment="Stretch">
|
|
<TextBlock HorizontalAlignment="Stretch" Text="{x:Bind Messages.Last().toString()}"/>
|
|
<TextBlock Text="{x:Bind Message[Messages.Count()].Date}"/>
|
|
</StackPanel>
|
|
-->
|
|
</StackPanel>
|
|
</RadioButton>
|
|
</DataTemplate>
|
|
</ListView.ItemTemplate>
|
|
</ListView>
|
|
</ScrollViewer>
|
|
</Grid>
|
|
<TextBlock x:Name="textNoChatSelected" Grid.Column="1" Text="No Chat Selected" Foreground="{ThemeResource SystemColorDisabledTextColor}" FontSize="24" VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
|
<!-- RIGHT SIDE -->
|
|
<Grid x:Name="gridRight" Grid.Column="1">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="64"/>
|
|
<RowDefinition Height="*"/>
|
|
<RowDefinition Height="64"/>
|
|
</Grid.RowDefinitions>
|
|
<!-- CHAT HEADER LEFT & RIGHT -->
|
|
<Grid Padding="16 0">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*"/>
|
|
<ColumnDefinition Width="auto"/>
|
|
</Grid.ColumnDefinitions>
|
|
<StackPanel Orientation="Horizontal">
|
|
<TextBlock x:Name="selectedPartnerName" VerticalAlignment="Center"/>
|
|
</StackPanel>
|
|
<StackPanel Orientation="Horizontal" Grid.Column="1">
|
|
<Button Click="OnDeleteChat" Content="Delete Chat"/>
|
|
</StackPanel>
|
|
</Grid>
|
|
<!-- CHAT -->
|
|
<ScrollViewer Grid.Row="1" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Hidden">
|
|
<ListView x:Name="listViewMessages" VerticalAlignment="Bottom" Margin="4 16">
|
|
<ListView.ItemTemplate>
|
|
<DataTemplate x:DataType="models:ChatMessage">
|
|
<StackPanel x:Name="Message" Margin="0 4" Padding="16 8" CornerRadius="4" Background="{ThemeResource SystemAccentColor}">
|
|
<TextBlock Text="{x:Bind Content}"/>
|
|
<TextBlock Text="{x:Bind TimeStamp.ToShortDateString()}"/>
|
|
<TextBlock Text="{x:Bind Foreign}"/>
|
|
</StackPanel>
|
|
</DataTemplate>
|
|
</ListView.ItemTemplate>
|
|
</ListView>
|
|
</ScrollViewer>
|
|
<!-- CHAT INPUT & SEND -->
|
|
<Grid Grid.Row="2" Margin="16 0">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*"/>
|
|
<ColumnDefinition Width="auto"/>
|
|
</Grid.ColumnDefinitions>
|
|
<TextBox x:Name="inputSend" KeyUp="OnKeyUp" PlaceholderText="My message" VerticalAlignment="Center"/>
|
|
<StackPanel Orientation="Horizontal" Grid.Column="1" Margin="16 0 0 0">
|
|
<Button x:Name="buttonSend" IsEnabled="False" Content="Send" Click="OnSendMessage" Foreground="{ThemeResource SystemColorButtonTextColor}" Background="{ThemeResource SystemAccentColor}"/>
|
|
</StackPanel>
|
|
</Grid>
|
|
</Grid>
|
|
</Grid>
|
|
</Page>
|