d56319ff78bd895f76844b985942194481c5938e
[pithos-ms-client] / trunk / Pithos.Client.WPF / FileProperties / FilePropertiesView.xaml
1 <Window x:Class="Pithos.Client.WPF.FilePropertiesView"
2              xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3              xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
4              xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
5              xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:cal="http://www.caliburnproject.org"
6         mc:Ignorable="d" 
7              d:DesignHeight="300" d:DesignWidth="300" MaxWidth="900"
8          Height="681" Icon="/Pithos.Client.WPF;component/Images/PithosTaskbar.png"
9         Background="{StaticResource {x:Static SystemColors.ControlBrushKey}}" 
10         >
11     <Window.Resources>
12         <ResourceDictionary>
13             <ResourceDictionary.MergedDictionaries>
14                 <ResourceDictionary Source="..\PithosStyles.xaml" />
15             </ResourceDictionary.MergedDictionaries>
16             <BooleanToVisibilityConverter x:Key="BoolToVisible" />
17         </ResourceDictionary>       
18     </Window.Resources>
19     <Grid>
20         <Grid.RowDefinitions>
21             <RowDefinition Height="Auto"/>
22             <RowDefinition Height="Auto"/>
23             <RowDefinition Height="*"/>
24             <RowDefinition Height="*"/>
25             <RowDefinition Height="*"/>
26             <RowDefinition Height="Auto"/>
27         </Grid.RowDefinitions>
28
29         <Grid Grid.Row="0">
30             <Grid.ColumnDefinitions>
31                 <ColumnDefinition Width="Auto"/>
32                 <ColumnDefinition Width="*"/>
33                 <ColumnDefinition Width="Auto"/>
34             </Grid.ColumnDefinitions>
35             <Image x:Name="FileIcon" Width="48" Height="48" Margin="5" Grid.Column="0" Stretch="None"/>
36             <StackPanel Margin="5" Grid.Column="1">
37                 <TextBlock x:Name="FileName" Grid.Row="0" Text="File Name" FontSize="16" FontWeight="Bold"/>
38                 <StackPanel Orientation="Horizontal" Grid.Row="1">
39                     <TextBlock Text="Container: " />
40                     <TextBlock x:Name="Container" Text="Container" />
41                 </StackPanel>
42             </StackPanel>
43             <TextBlock x:Name="ShortSize" Text="345 KB" FontWeight="Bold" FontSize="14" Grid.Column="2" />
44         </Grid>
45         <GroupBox Header="General" Grid.Row="1">
46             <Grid>
47                 <Grid.Resources>
48                     <Style x:Key="NameColumnStyle" TargetType="TextBlock">
49                         <Setter Property="HorizontalAlignment" Value="Right"/>
50                         <Setter Property="Margin" Value="5,2"/>
51                     </Style>
52                     <Style x:Key="ValueColumnStyle" TargetType="TextBlock">
53                         <Setter Property="HorizontalAlignment" Value="Left"/>
54                         <Setter Property="Margin" Value="5,2"/>
55                     </Style>
56                 </Grid.Resources>
57                 <Grid.ColumnDefinitions>
58                     <ColumnDefinition Width="Auto" />
59                     <ColumnDefinition Width="*"/>
60                 </Grid.ColumnDefinitions>
61                 <Grid.RowDefinitions>
62                     <RowDefinition/>
63                     <RowDefinition/>
64                     <RowDefinition/>
65                     <RowDefinition/>
66                     <RowDefinition/>
67                     <RowDefinition/>
68                 </Grid.RowDefinitions>
69                 <TextBlock Text="Kind :" Grid.Row="0" Grid.Column="0" Style="{StaticResource ResourceKey=NameColumnStyle}"/>
70                 <TextBlock Text="Size :" Grid.Row="1" Grid.Column="0" Style="{StaticResource ResourceKey=NameColumnStyle}"/>
71                 <TextBlock Text="Where :" Grid.Row="2" Grid.Column="0" Style="{StaticResource ResourceKey=NameColumnStyle}"/>
72                 <TextBlock Text="Modified :" Grid.Row="3" Grid.Column="0" Style="{StaticResource ResourceKey=NameColumnStyle}"/>
73                 <TextBlock Text="Modified By :" Grid.Row="4" Grid.Column="0" Style="{StaticResource ResourceKey=NameColumnStyle}"/>
74                 <TextBlock Text="Version :" Grid.Row="5" Grid.Column="0" Style="{StaticResource ResourceKey=NameColumnStyle}"/>
75                 <TextBlock x:Name="Kind" Text="application/pdf" Grid.Row="0" Grid.Column="1" Style="{StaticResource ResourceKey=ValueColumnStyle}"/>
76                 <TextBlock x:Name="Size" Text="345 KB (345,332 bytes)" Grid.Row="1" Grid.Column="1" Style="{StaticResource ResourceKey=ValueColumnStyle}"/>
77                 <TextBlock x:Name="Where" Text="pithos/somefile.pdf" Grid.Row="2" Grid.Column="1" Style="{StaticResource ResourceKey=ValueColumnStyle}"/>
78                 <TextBlock x:Name="Modified" Text="28/10/2011 11:34 AM" Grid.Row="3" Grid.Column="1" Style="{StaticResource ResourceKey=ValueColumnStyle}"/>
79                 <TextBlock x:Name="ModifiedBy" Text="SomeUser" Grid.Row="4" Grid.Column="1" Style="{StaticResource ResourceKey=ValueColumnStyle}"/>
80                 <TextBlock x:Name="Version" Text="2345456" Grid.Row="5" Grid.Column="1" Style="{StaticResource ResourceKey=ValueColumnStyle}"/>
81             </Grid>
82         </GroupBox>
83         <GroupBox Header="Metadata" Grid.Row="2" >
84                 <DataGrid ItemsSource="{Binding Tags}" x:Name="Tags"
85                     AutoGenerateColumns="False" CanUserAddRows="True" >
86                     <DataGrid.Columns>                        
87                         <DataGridTemplateColumn >
88                             <DataGridTemplateColumn.CellTemplate>
89                                 <DataTemplate>
90                                     <Button Content=" - " Command="DataGrid.DeleteCommand"/>
91                                 </DataTemplate>
92                             </DataGridTemplateColumn.CellTemplate>
93                         </DataGridTemplateColumn>
94                         <DataGridTextColumn Binding="{Binding Name}" Header="Key" />
95                         <DataGridTextColumn Binding="{Binding Value}" Header="Value"  />                    
96                     </DataGrid.Columns>
97                 </DataGrid>
98         </GroupBox>
99         <GroupBox Header="Public &amp; Permissions" Grid.Row="3" >
100             <StackPanel>
101                 <TextBlock Margin="5" Visibility="{Binding Path=IsPublic,FallbackValue=false, Converter={StaticResource BoolToVisible}}">
102                     <Run Text="Public URL:" />
103                     <Run Text="{Binding PublicUrl,FallbackValue='http://someurl'}" />
104                 </TextBlock>
105
106                 <CheckBox x:Name="IsPublic" Content="Public" Margin="65,5,5,5"/>
107                 <DataGrid ItemsSource="{Binding Permissions}" 
108                     AutoGenerateColumns="False" CanUserAddRows="True">
109                     <DataGrid.Columns>
110                         <DataGridTemplateColumn >
111                             <DataGridTemplateColumn.CellTemplate>
112                                 <DataTemplate>
113                                     <Button Content=" - " 
114                                 cal:Message.Attach="RemoveTag($dataContext)" />
115                                 </DataTemplate>
116                             </DataGridTemplateColumn.CellTemplate>
117                         </DataGridTemplateColumn>
118                         <DataGridTextColumn Binding="{Binding UserName}" Header="Name" />
119                         <DataGridCheckBoxColumn Binding="{Binding Read}" Header="Read"/>
120                         <DataGridCheckBoxColumn Binding="{Binding Write}" Header="Write"/>                                           
121                     </DataGrid.Columns>
122                 </DataGrid>
123             </StackPanel>
124         </GroupBox>
125         <GroupBox Header="General" Grid.Row="4">
126             <Grid>
127                 <Grid.Resources>
128                     <Style x:Key="NameColumnStyle" TargetType="TextBlock">
129                         <Setter Property="HorizontalAlignment" Value="Right"/>
130                         <Setter Property="Margin" Value="5,2"/>
131                     </Style>
132                     <Style x:Key="ValueColumnStyle" TargetType="TextBox">
133                         <Setter Property="HorizontalAlignment" Value="Stretch"/>
134                         <Setter Property="VerticalAlignment" Value="Top"/>
135                         <Setter Property="Margin" Value="5,2"/>
136                     </Style>
137                 </Grid.Resources>
138                 <Grid.ColumnDefinitions>
139                     <ColumnDefinition Width="Auto" />
140                     <ColumnDefinition Width="*"/>
141                 </Grid.ColumnDefinitions>
142                 <Grid.RowDefinitions>
143                     <RowDefinition Height="Auto"/>
144                     <RowDefinition Height="Auto"/>
145                     <RowDefinition Height="Auto"/>
146                 </Grid.RowDefinitions>
147                 <TextBlock Text="Content Encoding :" Grid.Row="0" Grid.Column="0" Style="{StaticResource ResourceKey=NameColumnStyle}"/>
148                 <TextBlock Text="Content Disposition :" Grid.Row="1" Grid.Column="0" Style="{StaticResource ResourceKey=NameColumnStyle}"/>
149                 <TextBlock Text="Manifest :" Grid.Row="2" Grid.Column="0" Style="{StaticResource ResourceKey=NameColumnStyle}"/>
150                 <TextBox x:Name="ContentEncoding" Text="text/utf8" Grid.Row="0" Grid.Column="1" Style="{StaticResource ResourceKey=ValueColumnStyle}"/>
151                 <TextBox x:Name="ContentDisposition" Grid.Row="1" Grid.Column="1" Style="{StaticResource ResourceKey=ValueColumnStyle}"/>
152                 <TextBox x:Name="Manifest" Grid.Row="2" Grid.Column="1" Style="{StaticResource ResourceKey=ValueColumnStyle}"/>
153             </Grid>
154         </GroupBox>
155         <StackPanel Orientation="Horizontal" Grid.Row="5" HorizontalAlignment="Right">
156             <Button Name="SaveChanges" Content="OK" Margin="5,5,10,5" Style="{StaticResource ButtonStyle}" IsDefault="False" />
157             <Button Name="RejectChanges" Content="Cancel" Margin="5,5,10,5" Style="{StaticResource ButtonStyle}" IsCancel="True" />
158             <Button Name="ApplyChanges" Content="Apply" Style="{StaticResource ButtonStyle}" />
159         </StackPanel>
160
161     </Grid>
162 </Window>