-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathMainWindow.xaml
78 lines (76 loc) · 4.51 KB
/
MainWindow.xaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:Model="clr-namespace:LocalIM.Model" x:Class="LocalIM.MainWindow"
MinHeight="200" MinWidth="300"
Title="Local IM" Height="300" Width="300" WindowStartupLocation="CenterScreen" ResizeMode="CanResizeWithGrip">
<Window.Resources>
</Window.Resources>
<Grid>
<Grid.Effect>
<DropShadowEffect ShadowDepth="2"/>
</Grid.Effect>
<Grid.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="White" Offset="1"/>
<GradientStop Color="#FF8C8C8C"/>
<GradientStop Color="#FFE9E9E9"/>
</LinearGradientBrush>
</Grid.Background>
<DockPanel>
<StatusBar DockPanel.Dock="Bottom">
<TextBlock Text="{Binding StatusText}" Margin="5,5,5,5"/>
</StatusBar>
<StackPanel Orientation="Vertical" DockPanel.Dock="Right" Margin="5,5,5,5">
<Button Content="Settings"/>
</StackPanel>
<DockPanel DockPanel.Dock="Left">
<TextBlock Text="Online Contacts" Margin="5,5,5,5" DockPanel.Dock="Top"/>
<ListBox ItemsSource="{Binding ContactViewModels}" DockPanel.Dock="Bottom" Background="Transparent">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style>
</ListBox.ItemContainerStyle>
<ListBox.ItemTemplate>
<DataTemplate>
<DockPanel Height="30" Background="Transparent">
<DockPanel.InputBindings>
<MouseBinding Command="{Binding ShowContactChatCommand}" MouseAction="LeftDoubleClick"/>
</DockPanel.InputBindings>
<TextBlock Text="{Binding UnreadMessagesCount}" ToolTip="Unread Messages" FontWeight="Bold" Margin="10,0" VerticalAlignment="Center" DockPanel.Dock="Right">
<TextBlock.Style>
<Style TargetType="{x:Type TextBlock}">
<Style.Triggers>
<DataTrigger Binding="{Binding UnreadMessagesCount}" Value="0">
<Setter Property="Visibility" Value="Hidden"/>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
<TextBlock Text="{Binding Contact.Username}" ToolTip="{Binding LastActionText}" VerticalAlignment="Center" DockPanel.Dock="Left">
<TextBlock.Style>
<Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource BasicTextBlock}">
<Style.Triggers>
<DataTrigger Binding="{Binding IsIdle}" Value="false">
<Setter Property="Foreground" Value="Green"/>
</DataTrigger>
<DataTrigger Binding="{Binding IsIdle}" Value="true">
<Setter Property="Foreground" Value="Yellow"/>
</DataTrigger>
<DataTrigger Binding="{Binding IsInActive}" Value="True">
<Setter Property="Foreground" Value="Red"/>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
</DockPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</DockPanel>
</DockPanel>
</Grid>
</Window>