Restructured views
[pithos-ms-client] / trunk / Pithos.Client.WPF / Preferences / PreferencesView.xaml
1 <Window x:Class="Pithos.Client.WPF.PreferencesView"
2         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"        
4         xmlns:cal="http://www.caliburnproject.org"
5         xmlns:extToolkit="http://schemas.microsoft.com/winfx/2006/xaml/presentation/toolkit/extended" x:Name="TheView"
6         Title="Pithos Preferences" Height="381" Width="600" 
7         ShowInTaskbar="true"
8         WindowStartupLocation="CenterScreen"
9         Icon="/Pithos.Client.WPF;component/Images/Tray.ico"
10         Background="{StaticResource {x:Static SystemColors.ControlBrushKey}}">
11         
12     <Window.Resources>
13         <ResourceDictionary>
14         <ResourceDictionary.MergedDictionaries>
15             <ResourceDictionary Source="..\PithosStyles.xaml" />
16             </ResourceDictionary.MergedDictionaries>
17         </ResourceDictionary>
18     </Window.Resources>
19 <!--    <Window.TaskbarItemInfo>
20         <TaskbarItemInfo Description="{Binding StatusMessage}" >
21             <TaskbarItemInfo.ThumbButtonInfos>
22                 <ThumbButtonInfo>
23                     
24                 </ThumbButtonInfo>
25             </TaskbarItemInfo.ThumbButtonInfos>
26         </TaskbarItemInfo>
27     </Window.TaskbarItemInfo>-->
28     <Grid>
29         <Grid.RowDefinitions>
30             <RowDefinition Height="*"/>
31             <RowDefinition Height="Auto"/>
32         </Grid.RowDefinitions>
33
34        
35         <TabControl Grid.Row="0">  
36             <TabItem VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch">
37                 <TabItem.Header>
38                     <StackPanel>
39                         <Image Source="/Pithos.Client.WPF;component/Images/General.png" Stretch="Uniform" Height="32"/>
40                         <TextBlock Text="General"/>
41                     </StackPanel>
42                 </TabItem.Header>
43                 <GroupBox  Height="66" VerticalAlignment="Top" Name="groupBox1" Margin="10,5">
44                     <StackPanel>
45                         <CheckBox Content="Show Desktop Notifications" Height="16" Name="Settings_ShowDesktopNotifications" Margin="5,10,5,0" />
46                         <CheckBox Content="Start on System Startup" Height="16" Name="StartOnSystemStartup" Margin="5,5,5,0" />
47                     </StackPanel>
48                 </GroupBox>
49             </TabItem>
50             <TabItem VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch">
51                 <TabItem.Header>
52                     <StackPanel>
53                         <Image Source="/Pithos.Client.WPF;component/Images/Accounts.png" Stretch="Uniform" Height="32"/>
54                         <TextBlock Text="Accounts"/>
55                     </StackPanel>
56                 </TabItem.Header>
57                 <Grid VerticalAlignment="Stretch" >
58                     <Grid.ColumnDefinitions>
59                         <ColumnDefinition Width="Auto"/>
60                         <ColumnDefinition Width="*"/>
61                     </Grid.ColumnDefinitions>
62                     <Grid Margin="5,10,5,5" Column="0" Width="250">
63                         <Grid.RowDefinitions>
64                             <RowDefinition Height="*"/>
65                             <RowDefinition Height="Auto"/>
66                         </Grid.RowDefinitions>
67                         <ListBox Name="Accounts" Grid.Row="0" VerticalAlignment="Stretch" ItemsSource="{Binding Accounts,Mode=OneWay}" SelectedItem="{Binding CurrentAccount,Mode=TwoWay}" >
68                             <ListBox.ItemTemplate>
69                                 <DataTemplate>
70                                     <TextBlock Text="{Binding AccountName}" />
71                                 </DataTemplate>
72                             </ListBox.ItemTemplate>
73                         </ListBox>
74                         <StackPanel Orientation="Horizontal" Grid.Row="1">
75                             <extToolkit:DropDownButton Content="Add" Height="25" Width="75">
76                                 <extToolkit:DropDownButton.DropDownContent>
77                                     <Menu>
78                                         <Menu.ItemsPanel>                                            
79                                                 <ItemsPanelTemplate>
80                                                     <VirtualizingStackPanel Orientation="Vertical"/>
81                                                 </ItemsPanelTemplate>                                            
82                                         </Menu.ItemsPanel>
83
84                                         <MenuItem Name="AddPithosAccount" Header="From Pithos" ToolTip="Go to Pithos site to login and retrieve the authentication token" cal:Message.Attach="AddPithosAccount"/>
85                                         <MenuItem Name="AddAccount" Header="Manually" ToolTip="Enter account details manually" cal:Message.Attach="AddAccount"/>
86                                     </Menu>
87                                 </extToolkit:DropDownButton.DropDownContent>
88                             </extToolkit:DropDownButton>
89                             <Button Name="RemoveAccount" Content="Remove" Style="{StaticResource ButtonStyle}" Width="75"/>                            
90                         </StackPanel>
91                     </Grid>
92                     <GroupBox Header="Account" Padding="5" Margin="5" Height="231" HorizontalAlignment="Stretch" VerticalAlignment="Top" Grid.Column="1">
93                             <Grid>
94                             <Grid.ColumnDefinitions>
95                                 <ColumnDefinition Width="Auto"/>
96                                 <ColumnDefinition Width="91*"/>
97                             </Grid.ColumnDefinitions>
98                             <Grid.RowDefinitions>
99                                 <RowDefinition Height="Auto"/>
100                                 <RowDefinition Height="Auto"/>
101                                 <RowDefinition Height="Auto"/>
102                                 <RowDefinition Height="Auto"/>
103                                 <RowDefinition Height="Auto"/>
104                                 <RowDefinition Height="Auto"/>
105                                 <RowDefinition />
106                             </Grid.RowDefinitions>
107                             <Label Content="Account" Grid.Column="0" Grid.Row="0" Margin="0,5" HorizontalAlignment="Left"/>
108                             <TextBox Name="CurrentAccount_AccountName" Grid.Column="1" Grid.Row="0" Margin="5"/>
109                             <Label Content="API Key" Grid.Column="0" Grid.Row="1" Margin="0,5" HorizontalAlignment="Left"/>
110                             <TextBox  Name="CurrentAccount_ApiKey" Grid.Column="1" Grid.Row="1" Margin="5"/>
111                             <Label Content="Folder" Grid.Column="0" Grid.Row="2" Margin="0,5" HorizontalAlignment="Left"/>
112                             <Grid Grid.Row="2" Grid.Column="1" >
113                                 <Grid.ColumnDefinitions>
114                                     <ColumnDefinition Width="*"/>
115                                     <ColumnDefinition Width="Auto"/>
116                                 </Grid.ColumnDefinitions>
117                                 <TextBox  Name="CurrentAccount_RootPath" Margin="5" HorizontalAlignment="Stretch" Grid.Column="0"/>
118                                 <Button Name="MoveAccountFolder" Content="Move ..." Width="60" Height="30" Grid.Column="1" />
119                             </Grid>
120                             <CheckBox Name="CurrentAccount_IsActive" Content="Account is Active" Grid.Column="1" Grid.Row="3" Margin="5"/>
121                             <CheckBox Name="CurrentAccount_UsePithos" Content="Use Pithos Extensions" Grid.Column="1" Grid.Row="4" Margin="5"/>
122                             <Button Name="SelectiveSyncFolders" Content="Selective Sync" Width="Auto" HorizontalAlignment="Left" Style="{StaticResource ButtonStyle}" Grid.Column="1" Grid.Row="5"/>
123                             
124                         </Grid>
125                         
126                     </GroupBox>
127                     
128                 </Grid>
129             </TabItem>
130             <TabItem VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch">
131                 <TabItem.Header>
132                     <StackPanel>
133                         <Image Source="/Pithos.Client.WPF;component/Images/Bandwidth.png" Stretch="Uniform" Height="32"/>
134                         <TextBlock Text="Bandwidth"/>
135                     </StackPanel>
136                 </TabItem.Header>
137                 <StackPanel>
138                     <GroupBox Header="Download Rate" Height="100"   Margin="10,5" VerticalAlignment="Top">
139                         <Grid />
140                     </GroupBox>
141                     <GroupBox Header="Upload Rate" Height="100"   Margin="10,5" VerticalAlignment="Top">
142                         <Grid />
143                     </GroupBox>
144                 </StackPanel>
145             </TabItem>
146             <TabItem VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch">
147                 <TabItem.Header>
148                     <StackPanel>
149                         <Image Source="/Pithos.Client.WPF;component/Images/Network.png" Stretch="Uniform" Height="32"/>
150                         <TextBlock Text="Proxy"/>
151                     </StackPanel>
152                 </TabItem.Header>
153                     <Grid Margin="10,5">
154                         <RadioButton Name="Settings_UseDefaultProxy" Content="Use System Defaults" Margin="5,6,5,0" Height="16" VerticalAlignment="Top"/>
155                         <RadioButton Name="Settings_UseManualProxy" Content="Manual" Margin="5,28,5,0" Height="16" VerticalAlignment="Top"/>
156                         <Label Content="Server" Height="28" HorizontalAlignment="Left" Margin="5,47,0,0" Name="label2" VerticalAlignment="Top" />
157                         <TextBox Height="23" HorizontalAlignment="Left" Margin="76,51,0,0" Name="Settings_ProxyServer" VerticalAlignment="Top" Width="162" IsEnabled="{Binding ElementName=Settings_UseManualProxy, Path=IsChecked}"/>
158                         <TextBlock Height="23" HorizontalAlignment="Left" Margin="244,51,0,0" Name="textBlock1" Text=":" VerticalAlignment="Top" />
159                         <TextBox Height="23" HorizontalAlignment="Left" Margin="254,51,0,0" Name="Settings_ProxyPort" VerticalAlignment="Top" Width="65" IsEnabled="{Binding ElementName=Settings_UseManualProxy, Path=IsChecked}"/>
160
161                         <GroupBox Height="109" HorizontalAlignment="Left" Margin="5,80,0,0" Name="groupBox2" VerticalAlignment="Top" Width="373" IsEnabled="{Binding ElementName=Settings_UseManualProxy, Path=IsChecked}">
162                             <GroupBox.Header>
163                                 <CheckBox Content="Proxy requires authentication" Height="16" VerticalAlignment="Top" Name="Settings_ProxyAuthentication" />
164                             </GroupBox.Header>
165                             <Grid >
166                                 <Label Content="Username" Height="28" HorizontalAlignment="Left" Margin="0,6,0,0" Name="label3" VerticalAlignment="Top" />
167                                 <Label Content="Password" Height="28" HorizontalAlignment="Left" Margin="0,32,0,0" Name="label4" VerticalAlignment="Top" />
168                                 <TextBox Height="23" HorizontalAlignment="Left" Margin="65,6,0,0" Name="Settings_ProxyUsername" VerticalAlignment="Top" Width="157" IsEnabled="{Binding IsChecked,ElementName=Settings_ProxyAuthentication}"/>
169                                 <TextBox Height="23" HorizontalAlignment="Left" Margin="65,37,0,0" Name="Settings_ProxyPassword" VerticalAlignment="Top" Width="157" IsEnabled="{Binding IsChecked,ElementName=Settings_ProxyAuthentication}"/>
170                             </Grid>
171                         </GroupBox>
172                     </Grid>
173             </TabItem>
174             <TabItem VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch">
175                 <TabItem.Header>
176                     <StackPanel>
177                         <Image Source="/Pithos.Client.WPF;component/Images/Advanced.png" Stretch="Uniform" Height="32"/>
178                         <TextBlock Text="Advanced"/>
179                     </StackPanel>
180                 </TabItem.Header>
181                 <StackPanel>
182                     <CheckBox Content="Activate Shell Extensions" Height="16" HorizontalAlignment="Left" Margin="5" Name="ExtensionsActivated" VerticalAlignment="Top" />
183                     <Button Content="Refresh Overlays" Name="RefreshOverlays" HorizontalAlignment="Left" Margin="5" Style="{StaticResource ButtonStyle}" Width="Auto" />
184                 </StackPanel>
185             </TabItem>
186         </TabControl>
187
188         <StackPanel Orientation="Horizontal" Grid.Row="1" HorizontalAlignment="Right">
189             <Button Name="SaveChanges" Content="OK" Margin="5,5,10,5" Style="{StaticResource ButtonStyle}"/>
190             <Button Name="RejectChanges" Content="Cancel" Margin="5,5,10,5" Style="{StaticResource ButtonStyle}"/>
191             <Button Name="ApplyChanges" Content="Apply" Style="{StaticResource ButtonStyle}" />
192         </StackPanel>
193     </Grid>
194 </Window>