mirror of
https://github.com/microsoft/PowerToys.git
synced 2024-12-13 19:19:23 +08:00
314 lines
21 KiB
XML
314 lines
21 KiB
XML
<Window
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:wox="clr-namespace:Wox"
|
|
xmlns:UserSettings="clr-namespace:Wox.Infrastructure.Storage.UserSettings;assembly=Wox.Infrastructure" x:Class="Wox.SettingWindow"
|
|
xmlns:woxPlugin="clr-namespace:Wox.Plugin;assembly=Wox.Plugin"
|
|
xmlns:system="clr-namespace:Wox.Plugin.SystemPlugins;assembly=Wox.Plugin.SystemPlugins"
|
|
xmlns:converters="clr-namespace:Wox.Converters"
|
|
Icon="Images\app.png"
|
|
Title="Wox Settings"
|
|
ResizeMode="NoResize"
|
|
WindowStartupLocation="CenterScreen"
|
|
Height="600" Width="800">
|
|
<Window.Resources>
|
|
<ListBoxItem HorizontalContentAlignment="Stretch"
|
|
IsEnabled="False"
|
|
IsHitTestVisible="False" x:Key="FeatureBoxSeperator">
|
|
<Separator Width="{Binding ElementName=lbPlugins, Path=ActualWidth}"/>
|
|
</ListBoxItem>
|
|
<converters:ImagePathConverter x:Key="ImageConverter" />
|
|
</Window.Resources>
|
|
<TabControl Height="auto" >
|
|
<TabItem Header="General">
|
|
<StackPanel Orientation="Vertical" Margin="10">
|
|
<CheckBox x:Name="cbStartWithWindows" Unchecked="CbStartWithWindows_OnUnchecked" Checked="CbStartWithWindows_OnChecked" Margin="10">
|
|
Start Wox on system startup
|
|
</CheckBox>
|
|
<CheckBox x:Name="cbHideWhenDeactive" Margin="10">
|
|
Hide Wox when loses focus
|
|
</CheckBox>
|
|
<CheckBox x:Name="cbDontPromptUpdateMsg" Margin="10">
|
|
Don't show upgrade msg if new version available
|
|
</CheckBox>
|
|
</StackPanel>
|
|
</TabItem>
|
|
<TabItem Header="Plugin">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="200"/>
|
|
<ColumnDefinition/>
|
|
</Grid.ColumnDefinitions>
|
|
<DockPanel Grid.Column="0" >
|
|
<TextBlock DockPanel.Dock="Top" Margin="6" HorizontalAlignment="Left" Cursor="Hand" MouseUp="tbMorePlugins_MouseUp" x:Name="tbMorePlugins" Foreground="Blue" Text="Browse more plugins"></TextBlock>
|
|
<ListBox x:Name="lbPlugins" Margin="0" SelectionChanged="lbPlugins_OnSelectionChanged" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" ScrollViewer.HorizontalScrollBarVisibility="Disabled" Grid.IsSharedSizeScope="True" >
|
|
<ListBox.Resources>
|
|
<DataTemplate DataType="{x:Type system:BaseSystemPlugin}">
|
|
<Grid Height="36" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="3">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="32"></ColumnDefinition>
|
|
<ColumnDefinition/>
|
|
</Grid.ColumnDefinitions>
|
|
<Image Width="32" Height="32" HorizontalAlignment="Left" Source="{Binding FullIcoPath,Converter={StaticResource ImageConverter},IsAsync=True}">
|
|
</Image>
|
|
<Grid Margin="3 0 3 0" Grid.Column="1" HorizontalAlignment="Stretch">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition></RowDefinition>
|
|
<RowDefinition Height="Auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<TextBlock VerticalAlignment="Center" ToolTip="{Binding Name}" x:Name="tbTitle" Text="{Binding Name}"></TextBlock>
|
|
<TextBlock ToolTip="{Binding Description}" Visibility="{Binding Description, Converter={converters:StringNullOrEmptyToVisibilityConverter}}" Grid.Row="1" x:Name="tbSubTitle" Text="{Binding Description}" Opacity="0.5"></TextBlock>
|
|
</Grid>
|
|
</Grid>
|
|
</DataTemplate>
|
|
<DataTemplate DataType="{x:Type woxPlugin:PluginPair}">
|
|
<Grid Height="36" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="3">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="32"></ColumnDefinition>
|
|
<ColumnDefinition/>
|
|
</Grid.ColumnDefinitions>
|
|
<Image Width="32" Height="32" HorizontalAlignment="Left" Source="{Binding Metadata.FullIcoPath,Converter={StaticResource ImageConverter},IsAsync=True}">
|
|
</Image>
|
|
<Grid Margin="3 0 3 0" Grid.Column="1" HorizontalAlignment="Stretch">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition></RowDefinition>
|
|
<RowDefinition Height="Auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<TextBlock VerticalAlignment="Center" ToolTip="{Binding Metadata.Name}" x:Name="tbTitle" Text="{Binding Metadata.Name}"></TextBlock>
|
|
<TextBlock ToolTip="{Binding Metadata.Description}" Visibility="{Binding Metadata.Description, Converter={converters:StringNullOrEmptyToVisibilityConverter}}" Grid.Row="1" x:Name="tbSubTitle" Text="{Binding Metadata.Description}" Opacity="0.5"></TextBlock>
|
|
</Grid>
|
|
</Grid>
|
|
</DataTemplate>
|
|
</ListBox.Resources>
|
|
</ListBox>
|
|
</DockPanel>
|
|
<Grid Margin="0" Grid.Column="1">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto"/>
|
|
<RowDefinition Height="*"/>
|
|
</Grid.RowDefinitions>
|
|
<ContentControl x:Name="PluginInfoPanel" Grid.ColumnSpan="1" Grid.Row="0" Margin="10 10 10 0">
|
|
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="48"></ColumnDefinition>
|
|
<ColumnDefinition/>
|
|
</Grid.ColumnDefinitions>
|
|
<Image Width="48" Height="48" HorizontalAlignment="Left" VerticalAlignment="Top" x:Name="pluginIcon"/>
|
|
<Grid Margin="10,0,0,0" Grid.Column="1" HorizontalAlignment="Stretch">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition></RowDefinition>
|
|
<RowDefinition></RowDefinition>
|
|
<RowDefinition></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<DockPanel Grid.Row="0">
|
|
<TextBlock x:Name="pluginTitle" Text="Plugin Title" Cursor="Hand" MouseUp="PluginTitle_OnMouseUp" ToolTip="{Binding Source=pluginTitle, Path=Text}" FontSize="24"></TextBlock>
|
|
<TextBlock Opacity="0.5" VerticalAlignment="Bottom" HorizontalAlignment="Right" x:Name="pluginAuthor" Text="Author"></TextBlock>
|
|
</DockPanel>
|
|
<TextBlock Grid.Row="1" x:Name="pluginSubTitle" Opacity="0.5" ToolTip="{Binding Source=pluginSubTitle, Path=Text}" Visibility="{Binding Source=pluginSubTitle, Path=Text, Converter={converters:StringNullOrEmptyToVisibilityConverter}}" ></TextBlock>
|
|
<DockPanel Grid.Row="2" Margin="0 8 0 0">
|
|
<CheckBox x:Name="cbDisablePlugin" Click="CbDisablePlugin_OnClick">Disable</CheckBox>
|
|
<TextBlock x:Name="pluginActionKeywordTitle" Margin="50 -2 0 0">ActionKeyword:</TextBlock>
|
|
<TextBlock Margin="5 -2 0 0" ToolTip="Change Action Keyword" Cursor="Hand" MouseUp="PluginActionKeyword_OnMouseUp" Foreground="Blue" Text="key" x:Name="pluginActionKeyword"></TextBlock>
|
|
<TextBlock HorizontalAlignment="Right" Cursor="Hand" MouseUp="tbOpenPluginDirecoty_MouseUp" Foreground="Blue" Text="Plugin Directory" x:Name="tbOpenPluginDirecoty"></TextBlock>
|
|
</DockPanel>
|
|
</Grid>
|
|
</Grid>
|
|
</ContentControl>
|
|
|
|
<ContentControl x:Name="PluginContentPanel" Grid.ColumnSpan="1" Grid.Row="1" Margin="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
|
|
|
|
</ContentControl>
|
|
</Grid>
|
|
</Grid>
|
|
</TabItem>
|
|
<TabItem Header="Theme">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="200"/>
|
|
<ColumnDefinition/>
|
|
</Grid.ColumnDefinitions>
|
|
<DockPanel Grid.Column="0" >
|
|
<TextBlock DockPanel.Dock="Top" Margin="6" HorizontalAlignment="Left" Cursor="Hand" MouseUp="tbMoreThemes_MouseUp" x:Name="tbMoreThemes" Foreground="Blue" Text="Browse more themes"></TextBlock>
|
|
<ListBox x:Name="themeComboBox" Margin="0" SelectionChanged="ThemeComboBox_OnSelectionChanged" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Width="180"/>
|
|
</DockPanel>
|
|
<Grid Margin="0" Grid.Column="1">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition />
|
|
<RowDefinition Height="100"/>
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition/>
|
|
</Grid.ColumnDefinitions>
|
|
<StackPanel x:Name="PreviewPanel" Grid.Row="0" Margin="0">
|
|
<StackPanel x:Name="PreviewMainPanel" Orientation="Horizontal" Margin="10" HorizontalAlignment="Center" VerticalAlignment="Center">
|
|
<StackPanel.Resources>
|
|
<ResourceDictionary Source="/PresentationFramework.Classic,Version=3.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35,processorArchitecture=MSIL;component/themes/Classic.xaml"/>
|
|
</StackPanel.Resources>
|
|
<Border Width="500" Style="{DynamicResource WindowBorderStyle}">
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="50" />
|
|
<RowDefinition/>
|
|
</Grid.RowDefinitions>
|
|
<TextBox Text="Hello Wox" IsReadOnly="True" Style="{DynamicResource QueryBoxStyle}" Grid.Row="0"/>
|
|
<wox:ResultPanel Grid.Row="1" x:Name="resultPanelPreview"/>
|
|
</Grid>
|
|
</Border>
|
|
</StackPanel>
|
|
</StackPanel>
|
|
|
|
<StackPanel Grid.Row="1" Margin="0 10 0 10" Orientation="Vertical">
|
|
<StackPanel Orientation="Horizontal" Margin="2">
|
|
<TextBlock Text="Query Box Font:" />
|
|
<ComboBox Margin="10 -2 5 0" x:Name="cbQueryBoxFont" ItemsSource="{x:Static Fonts.SystemFontFamilies}" SelectionChanged="CbQueryBoxFont_OnSelectionChanged" HorizontalAlignment="Left" VerticalAlignment="Top" Width="160"/>
|
|
<ComboBox Margin="0 -2 0 0"
|
|
x:Name="cbQueryBoxFontFaces"
|
|
ItemsSource="{Binding SelectedValue.FamilyTypefaces, ElementName=cbQueryBoxFont}" SelectionChanged="CbQueryBoxFontFaces_OnSelectionChanged" HorizontalAlignment="Left" VerticalAlignment="Top" Width="120">
|
|
<ComboBox.ItemTemplate>
|
|
<DataTemplate>
|
|
<ItemsControl ItemsSource="{Binding AdjustedFaceNames}">
|
|
<ItemsControl.ItemTemplate>
|
|
<DataTemplate>
|
|
<TextBlock Text="{Binding Value}" />
|
|
</DataTemplate>
|
|
</ItemsControl.ItemTemplate>
|
|
</ItemsControl>
|
|
</DataTemplate>
|
|
</ComboBox.ItemTemplate>
|
|
</ComboBox>
|
|
</StackPanel>
|
|
<StackPanel Orientation="Horizontal" Margin="2">
|
|
<TextBlock Text="Result Item Font:" />
|
|
<ComboBox Margin="5 -2 5 0" x:Name="cbResultItemFont" ItemsSource="{x:Static Fonts.SystemFontFamilies}" SelectionChanged="CbResultItemFont_OnSelectionChanged" HorizontalAlignment="Left" VerticalAlignment="Top" Width="160"/>
|
|
<ComboBox Margin="0 -2 0 0"
|
|
x:Name="cbResultItemFontFaces"
|
|
ItemsSource="{Binding SelectedValue.FamilyTypefaces, ElementName=cbResultItemFont}" SelectionChanged="CbResultItemFontFaces_OnSelectionChanged" HorizontalAlignment="Left" VerticalAlignment="Top" Width="120">
|
|
<ComboBox.ItemTemplate>
|
|
<DataTemplate>
|
|
<ItemsControl ItemsSource="{Binding AdjustedFaceNames}">
|
|
<ItemsControl.ItemTemplate>
|
|
<DataTemplate>
|
|
<TextBlock Text="{Binding Value}" />
|
|
</DataTemplate>
|
|
</ItemsControl.ItemTemplate>
|
|
</ItemsControl>
|
|
</DataTemplate>
|
|
</ComboBox.ItemTemplate>
|
|
</ComboBox>
|
|
</StackPanel>
|
|
<StackPanel Orientation="Horizontal" Margin="2">
|
|
<TextBlock Text="Window Mode:" />
|
|
<ComboBox Name="CbOpacityMode" Margin="14 0 0 0" SelectionChanged="CbOpacityMode_OnSelectionChanged" Width="160">
|
|
<UserSettings:OpacityMode>Normal</UserSettings:OpacityMode>
|
|
<UserSettings:OpacityMode>LayeredWindow</UserSettings:OpacityMode>
|
|
<UserSettings:OpacityMode>DWM</UserSettings:OpacityMode>
|
|
<ComboBox.ItemTemplate>
|
|
<DataTemplate>
|
|
<TextBlock Text="{Binding Converter={converters:OpacityModeConverter}}" />
|
|
</DataTemplate>
|
|
</ComboBox.ItemTemplate>
|
|
</ComboBox>
|
|
<StackPanel Orientation="Horizontal" Margin="5 0 0 0" x:Name="spOpacity">
|
|
<TextBlock Text="Opacity:" HorizontalAlignment="Center" />
|
|
<Slider x:Name="slOpacity" Maximum="1" Minimum="0" SmallChange="1" LargeChange="0.1" TickPlacement="BottomRight" TickFrequency="0.1" ValueChanged="slOpacity_ValueChanged" Width="100"/>
|
|
</StackPanel>
|
|
</StackPanel>
|
|
</StackPanel>
|
|
|
|
</Grid>
|
|
</Grid>
|
|
</TabItem>
|
|
<TabItem Header="Hotkey">
|
|
<Grid Margin="10">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="30"/>
|
|
<RowDefinition/>
|
|
<RowDefinition Height="50"/>
|
|
</Grid.RowDefinitions>
|
|
<StackPanel Grid.Row="0" Orientation="Horizontal" VerticalAlignment="Center">
|
|
<TextBlock VerticalAlignment="Center" Margin="0 0 10 0"><Run Text="Wox Hotkey:"/></TextBlock>
|
|
<wox:HotkeyControl x:Name="ctlHotkey"/>
|
|
</StackPanel>
|
|
<Grid Grid.Row="1">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="20"/>
|
|
<RowDefinition/>
|
|
</Grid.RowDefinitions>
|
|
<TextBlock VerticalAlignment="Center" Grid.Row="0" Margin="0 0 10 0"><Run Text="Custom Plugin Hotkey:"/></TextBlock>
|
|
<ListView x:Name="lvCustomHotkey" Margin="0 5 0 0" Grid.Row="1">
|
|
<ListView.View>
|
|
<GridView>
|
|
<GridViewColumn Header="Hotkey" Width="180">
|
|
<GridViewColumn.CellTemplate>
|
|
<DataTemplate>
|
|
<TextBlock Text="{Binding Hotkey}"/>
|
|
</DataTemplate>
|
|
</GridViewColumn.CellTemplate>
|
|
</GridViewColumn>
|
|
<GridViewColumn Header="Action Keyword" Width="500">
|
|
<GridViewColumn.CellTemplate>
|
|
<DataTemplate>
|
|
<TextBlock Text="{Binding ActionKeyword}"/>
|
|
</DataTemplate>
|
|
</GridViewColumn.CellTemplate>
|
|
</GridViewColumn>
|
|
</GridView>
|
|
</ListView.View>
|
|
</ListView>
|
|
|
|
</Grid>
|
|
<StackPanel Grid.Row="2" HorizontalAlignment="Right" Orientation="Horizontal">
|
|
<Button x:Name="btnDeleteCustomHotkey" Click="BtnDeleteCustomHotkey_OnClick" Width="100" Margin="10" Content="Delete"/>
|
|
<Button x:Name="btnEditCustomHotkey" Click="BtnEditCustomHotkey_OnClick" Width="100" Margin="10" Content="Edit"/>
|
|
<Button x:Name="btnAddCustomeHotkey" Click="BtnAddCustomeHotkey_OnClick" Width="100" Margin="10" Content="Add"/>
|
|
</StackPanel>
|
|
</Grid>
|
|
</TabItem>
|
|
<TabItem Header="Proxy">
|
|
<StackPanel>
|
|
<CheckBox x:Name="cbEnableProxy" Margin="10">Enable Proxy</CheckBox>
|
|
<Grid Margin="10">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition ></RowDefinition>
|
|
<RowDefinition ></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="80"></ColumnDefinition>
|
|
<ColumnDefinition Width="220"></ColumnDefinition>
|
|
<ColumnDefinition Width="80"></ColumnDefinition>
|
|
<ColumnDefinition></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<Border Grid.Row="0" Grid.Column="0" Padding="5">
|
|
<TextBlock >Server</TextBlock>
|
|
</Border>
|
|
<Border Grid.Row="0" Grid.Column="1" Padding="5">
|
|
<TextBox Width="200" HorizontalAlignment="Left" x:Name="tbProxyServer"></TextBox>
|
|
</Border>
|
|
<Border Grid.Row="0" Grid.Column="2" Padding="5">
|
|
<TextBlock>Port</TextBlock>
|
|
</Border>
|
|
<Border Grid.Row="0" Grid.Column="3" Padding="5">
|
|
<TextBox Width="50" HorizontalAlignment="Left" x:Name="tbProxyPort"></TextBox>
|
|
</Border>
|
|
<Border Grid.Row="1" Grid.Column="0" Padding="5">
|
|
<TextBlock >UserName</TextBlock>
|
|
</Border>
|
|
<Border Grid.Row="1" Grid.Column="1" Padding="5">
|
|
<TextBox Width="200" HorizontalAlignment="Left" x:Name="tbProxyUserName"></TextBox>
|
|
</Border>
|
|
<Border Grid.Row="1" Grid.Column="2" Padding="5">
|
|
<TextBlock>Password</TextBlock>
|
|
</Border>
|
|
<Border Grid.Row="1" Grid.Column="3" Padding="5">
|
|
<PasswordBox Width="200" HorizontalAlignment="Left" x:Name="tbProxyPassword" />
|
|
</Border>
|
|
</Grid>
|
|
<StackPanel Orientation="Horizontal">
|
|
<Button x:Name="btnTestProxy" Width="80" HorizontalAlignment="Left" Margin="10" Click="btnTestProxy_Click">Test Proxy</Button>
|
|
<Button x:Name="btnSaveProxy" Width="80" HorizontalAlignment="Left" Margin="10" Click="btnSaveProxy_Click">Save</Button>
|
|
</StackPanel>
|
|
</StackPanel>
|
|
</TabItem>
|
|
</TabControl>
|
|
</Window>
|