Statistics
| Branch: | Revision:

root / trunk / Pithos.Client.WPF / Preferences / PreferencesView.xaml @ 34bdb91d

History | View | Annotate | Download (14.3 kB)

1
<Window x:Class="Pithos.Client.WPF.Preferences.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"
6
        xmlns:Converters="clr-namespace:Pithos.Client.WPF.Converters" 
7
        x:Name="TheView"
8
        Title="Pithos Preferences" Height="436" Width="600" 
9
        ShowInTaskbar="true"
10
        WindowStartupLocation="CenterScreen"
11
        Icon="/Pithos.Client.WPF;component/Images/PithosTaskbar.png"
12
        Background="{StaticResource {x:Static SystemColors.ControlBrushKey}}">
13
        
14
    <Window.Resources>
15
        <ResourceDictionary>
16
        <ResourceDictionary.MergedDictionaries>
17
            <ResourceDictionary Source="..\PithosStyles.xaml" />
18
            </ResourceDictionary.MergedDictionaries>
19
            <Converters:NullToVisibilityConverter x:Key="NullToVisible" />
20
        </ResourceDictionary>
21
    </Window.Resources>
22
<!--    <Window.TaskbarItemInfo>
23
        <TaskbarItemInfo Description="{Binding StatusMessage}" >
24
            <TaskbarItemInfo.ThumbButtonInfos>
25
                <ThumbButtonInfo>
26
                    
27
                </ThumbButtonInfo>
28
            </TaskbarItemInfo.ThumbButtonInfos>
29
        </TaskbarItemInfo>
30
    </Window.TaskbarItemInfo>-->
31
    <Grid>
32
        <Grid.RowDefinitions>
33
            <RowDefinition Height="*"/>
34
            <RowDefinition Height="Auto"/>
35
        </Grid.RowDefinitions>
36

    
37
       
38
        <TabControl Grid.Row="0">  
39
            <TabItem VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch">
40
                <TabItem.Header>
41
                    <StackPanel>
42
                        <Image Source="/Pithos.Client.WPF;component/Images/General.png" Stretch="Uniform" Height="32"/>
43
                        <TextBlock Text="General"/>
44
                    </StackPanel>
45
                </TabItem.Header>
46
                <GroupBox  Height="66" VerticalAlignment="Top" Name="groupBox1" Margin="10,5">
47
                    <StackPanel>
48
                        <CheckBox Content="Show Desktop Notifications" Height="16" Name="Settings_ShowDesktopNotifications" Margin="5,10,5,0" />
49
                        <CheckBox Content="Start on System Startup" Height="16" Name="Settings_StartOnSystemStartup" Margin="5,5,5,0" />
50
                    </StackPanel>
51
                </GroupBox>
52
            </TabItem>
53
            <TabItem VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch">
54
                <TabItem.Header>
55
                    <StackPanel>
56
                        <Image Source="/Pithos.Client.WPF;component/Images/Accounts.png" Stretch="Uniform" Height="32"/>
57
                        <TextBlock Text="Accounts"/>
58
                    </StackPanel>
59
                </TabItem.Header>
60
                <Grid VerticalAlignment="Stretch" >
61
                    <Grid.ColumnDefinitions>
62
                        <ColumnDefinition Width="Auto"/>
63
                        <ColumnDefinition Width="*"/>
64
                    </Grid.ColumnDefinitions>
65
                    <Grid Margin="5,10,5,5" Column="0" Width="250">
66
                        <Grid.RowDefinitions>
67
                            <RowDefinition Height="*"/>
68
                            <RowDefinition Height="Auto"/>
69
                        </Grid.RowDefinitions>
70
                        <ListBox Name="Accounts" Grid.Row="0" VerticalAlignment="Stretch" ItemsSource="{Binding Accounts,Mode=OneWay}" SelectedItem="{Binding CurrentAccount,Mode=TwoWay}" >
71
                            <ListBox.ItemTemplate>
72
                                <DataTemplate>
73
                                    <TextBlock Text="{Binding AccountName}" />
74
                                </DataTemplate>
75
                            </ListBox.ItemTemplate>
76
                        </ListBox>
77
                        <StackPanel Orientation="Horizontal" Grid.Row="1">
78
                            <Button Name="AddAccount" Content="Add " ToolTip="Enter account details manually" Style="{StaticResource ButtonStyle}" Width="75"/>
79
                            <Button Name="RemoveAccount" Content="Remove" Style="{StaticResource ButtonStyle}" Width="75"/>                            
80
                        </StackPanel>
81
                    </Grid>
82
                    <GroupBox Header="Account" Padding="5" Margin="5" Height="231" HorizontalAlignment="Stretch" VerticalAlignment="Top" Grid.Column="1" Visibility="{Binding Path=CurrentAccount, Converter={StaticResource NullToVisible},ConverterParameter='Invert'}"
83
                              HorizontalContentAlignment="Center" VerticalContentAlignment="Center">
84
                        <TextBlock VerticalAlignment="Center" HorizontalAlignment="Center" TextWrapping="Wrap" >
85
                            No account is selected. Please select an account or add a new one.
86
                        </TextBlock>    
87
                    </GroupBox>
88
                    <GroupBox Header="Account" Padding="5" Margin="5,5,5,0" Height="266" HorizontalAlignment="Stretch" VerticalAlignment="Top" Grid.Column="1" Visibility="{Binding Path=CurrentAccount, Converter={StaticResource NullToVisible}}">
89
                            <Grid>
90
                            <Grid.ColumnDefinitions>
91
                                <ColumnDefinition Width="Auto"/>
92
                                <ColumnDefinition Width="91*"/>
93
                            </Grid.ColumnDefinitions>
94
                            <Grid.RowDefinitions>
95
                                <RowDefinition Height="Auto"/>
96
                                <RowDefinition Height="Auto"/>
97
                                <RowDefinition Height="Auto"/>
98
                                <RowDefinition Height="Auto"/>
99
                                <RowDefinition Height="Auto"/>
100
                                <RowDefinition Height="Auto"/>
101
                                <RowDefinition />
102
                            </Grid.RowDefinitions>
103
                            <Label Content="Server" Grid.Column="0" Grid.Row="0" Margin="0,5" HorizontalAlignment="Left"/>
104
                            <TextBox Name="CurrentAccount_ServerUrl" Grid.Column="1" Grid.Row="0" Margin="5"/>
105
                            <Label Content="Account" Grid.Column="0" Grid.Row="1" Margin="0,5" HorizontalAlignment="Left"/>
106
                            <TextBox Name="CurrentAccount_AccountName" Grid.Column="1" Grid.Row="1" Margin="5"/>
107
                            <Label Content="API Key" Grid.Column="0" Grid.Row="2" Margin="0,5" HorizontalAlignment="Left"/>
108
                            <TextBox  Name="CurrentAccount_ApiKey" Grid.Column="1" Grid.Row="2" Margin="5"/>
109
                            <Label Content="Folder" Grid.Column="0" Grid.Row="3" Margin="0,5" HorizontalAlignment="Left"/>
110
                            <Grid Grid.Row="3" Grid.Column="1" >
111
                                <Grid.ColumnDefinitions>
112
                                    <ColumnDefinition Width="*"/>
113
                                    <ColumnDefinition Width="Auto"/>
114
                                </Grid.ColumnDefinitions>
115
                                <TextBox  Name="CurrentAccount_RootPath" Margin="5" HorizontalAlignment="Stretch" Grid.Column="0"/>
116
                                <Button Name="MoveAccountFolder" Content="Move ..." Width="60" Height="30" Grid.Column="1" />
117
                            </Grid>
118
                            <CheckBox Name="CurrentAccount_IsActive" Content="Account is Active" Grid.Column="1" Grid.Row="4" Margin="5"/>
119
                            <Button Name="SelectiveSyncFolders" Content="Selective Sync" Width="Auto" HorizontalAlignment="Left" Style="{StaticResource ButtonStyle}" Grid.Column="1" Grid.Row="6"/>
120
                            
121
                        </Grid>
122
                        
123
                    </GroupBox>
124
                    
125
                </Grid>
126
            </TabItem>
127
            <TabItem VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch" Visibility="Collapsed">
128
                <TabItem.Header>
129
                    <StackPanel>
130
                        <Image Source="/Pithos.Client.WPF;component/Images/Bandwidth.png" Stretch="Uniform" Height="32"/>
131
                        <TextBlock Text="Bandwidth"/>
132
                    </StackPanel>
133
                </TabItem.Header>
134
                <StackPanel>
135
                    <GroupBox Header="Download Rate" Height="100"   Margin="10,5" VerticalAlignment="Top">
136
                        <Grid />
137
                    </GroupBox>
138
                    <GroupBox Header="Upload Rate" Height="100"   Margin="10,5" VerticalAlignment="Top">
139
                        <Grid />
140
                    </GroupBox>
141
                </StackPanel>
142
            </TabItem>
143
            <TabItem VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch">
144
                <TabItem.Header>
145
                    <StackPanel>
146
                        <Image Source="/Pithos.Client.WPF;component/Images/Network.png" Stretch="Uniform" Height="32"/>
147
                        <TextBlock Text="Proxy"/>
148
                    </StackPanel>
149
                </TabItem.Header>
150
                    <Grid Margin="10,5">
151
                        <RadioButton Name="Settings_UseDefaultProxy" Content="Use System Defaults" Margin="5,6,5,0" Height="16" VerticalAlignment="Top"/>
152
                    <RadioButton Name="Settings_UseNoProxy" Content="No Proxy" Margin="5,25,5,0" Height="16" VerticalAlignment="Top"/>
153
                    <RadioButton Name="Settings_UseManualProxy" Content="Manual" Margin="5,44,5,0" Height="16" VerticalAlignment="Top"/>
154
                        <Label Content="Server" Height="28" HorizontalAlignment="Left" Margin="5,63,0,0" Name="label2" VerticalAlignment="Top" />
155
                        <TextBox Height="23" HorizontalAlignment="Left" Margin="76,67,0,0" Name="Settings_ProxyServer" VerticalAlignment="Top" Width="162" IsEnabled="{Binding ElementName=Settings_UseManualProxy, Path=IsChecked}"/>
156
                        <TextBlock Height="23" HorizontalAlignment="Left" Margin="244,67,0,0" Name="textBlock1" Text=":" VerticalAlignment="Top" />
157
                        <TextBox Height="23" HorizontalAlignment="Left" Margin="254,67,0,0" Name="Settings_ProxyPort" VerticalAlignment="Top" Width="65" IsEnabled="{Binding ElementName=Settings_UseManualProxy, Path=IsChecked}"/>
158

    
159
                        <GroupBox Height="109" HorizontalAlignment="Left" Margin="5,96,0,0" Name="groupBox2" VerticalAlignment="Top" Width="373" IsEnabled="{Binding ElementName=Settings_UseManualProxy, Path=IsChecked}">
160
                            <GroupBox.Header>
161
                                <CheckBox Content="Proxy requires authentication" Height="16" VerticalAlignment="Top" Name="Settings_ProxyAuthentication" />
162
                            </GroupBox.Header>
163
                            <Grid >
164
                            <Grid.RowDefinitions>
165
                                <RowDefinition/>
166
                                <RowDefinition/>
167
                                <RowDefinition/>
168
                            </Grid.RowDefinitions>
169
                            <Grid.ColumnDefinitions>
170
                                <ColumnDefinition/>
171
                                <ColumnDefinition/>
172
                            </Grid.ColumnDefinitions>
173
                                <Label Content="Username" Height="28" HorizontalAlignment="Left" Grid.Row="0" Grid.Column="0" VerticalAlignment="Top" />
174
                            <Label Content="Password" Height="28" HorizontalAlignment="Left" Grid.Row="1" Grid.Column="0" VerticalAlignment="Top" />
175
                            <Label Content="Domain" Height="28" HorizontalAlignment="Left" Grid.Row="2" Grid.Column="0"  VerticalAlignment="Top" />
176
                            <TextBox Height="23" HorizontalAlignment="Left" Grid.Row="0" Grid.Column="1" Name="Settings_ProxyUsername" VerticalAlignment="Top" Width="157" IsEnabled="{Binding IsChecked,ElementName=Settings_ProxyAuthentication}"/>
177
                            <TextBox Height="23" HorizontalAlignment="Left" Grid.Row="1" Grid.Column="1" Name="Settings_ProxyPassword" VerticalAlignment="Top" Width="157" IsEnabled="{Binding IsChecked,ElementName=Settings_ProxyAuthentication}"/>
178
                            <TextBox Height="23" HorizontalAlignment="Left" Grid.Row="2" Grid.Column="1" Name="Settings_ProxyDomain" VerticalAlignment="Top" Width="157" IsEnabled="{Binding IsChecked,ElementName=Settings_ProxyAuthentication}"/>
179
                            </Grid>
180
                        </GroupBox>
181
                    </Grid>
182
            </TabItem>
183
            <TabItem VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch">
184
                <TabItem.Header>
185
                    <StackPanel>
186
                        <Image Source="/Pithos.Client.WPF;component/Images/Advanced.png" Stretch="Uniform" Height="32"/>
187
                        <TextBlock Text="Advanced"/>                        
188
                    </StackPanel>
189
                </TabItem.Header>
190
                <StackPanel>
191
                    <CheckBox Content="Activate Shell Extensions" Height="16" HorizontalAlignment="Left" Margin="5" Name="ExtensionsActivated" VerticalAlignment="Top" />
192
                    <Button Content="Refresh Overlays" Name="RefreshOverlays" HorizontalAlignment="Left" Margin="5" Style="{StaticResource ButtonStyle}" Width="Auto" />
193
                    <TextBlock Text="Polling Interval (secs)" Margin="5"/>
194
                    <extToolkit:IntegerUpDown x:Name="Settings_PollingInterval" HorizontalAlignment="Left" Width="100" Margin="5,0" Watermark="Enter seconds" Minimum="10" />                    
195
                    <TextBlock Text="Hashing Parallelism" Margin="5"/>
196
                    <extToolkit:IntegerUpDown x:Name="Settings_HashingParallelism" HorizontalAlignment="Left" Width="100" Margin="5,0" Watermark="Enter number of tasks" Minimum="1" />                    
197
                </StackPanel>
198
            </TabItem>
199
        </TabControl>
200

    
201
        <StackPanel Orientation="Horizontal" Grid.Row="1" HorizontalAlignment="Right">
202
            <Button Name="SaveChanges" Content="OK" Margin="5,5,10,5" Style="{StaticResource ButtonStyle}"/>
203
            <Button Name="RejectChanges" Content="Cancel" Margin="5,5,10,5" Style="{StaticResource ButtonStyle}"/>
204
            <Button Name="ApplyChanges" Content="Apply" Style="{StaticResource ButtonStyle}" />
205
        </StackPanel>
206
    </Grid>
207
</Window>