/ src / settings-ui / Settings.UI / SettingsXAML / Views / ProfileEditorDialog.xaml
ProfileEditorDialog.xaml
  1  <ContentDialog
  2      x:Class="Microsoft.PowerToys.Settings.UI.Views.ProfileEditorDialog"
  3      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5      xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  7      xmlns:tkcontrols="using:CommunityToolkit.WinUI.Controls"
  8      xmlns:ui="using:CommunityToolkit.WinUI"
  9      xmlns:viewmodels="using:Microsoft.PowerToys.Settings.UI.ViewModels"
 10      Width="486"
 11      MinWidth="486"
 12      CloseButtonClick="ContentDialog_CloseButtonClick"
 13      DefaultButton="Primary"
 14      IsPrimaryButtonEnabled="{x:Bind ViewModel.CanSave, Mode=OneWay}"
 15      PrimaryButtonClick="ContentDialog_PrimaryButtonClick"
 16      Style="{StaticResource DefaultContentDialogStyle}"
 17      mc:Ignorable="d">
 18  
 19      <Grid MinWidth="486">
 20          <Grid.Resources>
 21              <x:Double x:Key="SettingsCardWrapThreshold">0</x:Double>
 22              <x:Double x:Key="SettingsCardWrapNoIconThreshold">0</x:Double>
 23              <Thickness x:Key="SettingsExpanderItemPadding">0,8,0,8</Thickness>
 24          </Grid.Resources>
 25          <Grid.RowDefinitions>
 26              <RowDefinition Height="Auto" />
 27              <RowDefinition Height="*" />
 28          </Grid.RowDefinitions>
 29          <TextBox
 30              x:Name="ProfileNameTextBox"
 31              x:Uid="PowerDisplay_ProfileEditor_ProfileName"
 32              Margin="0,0,0,24"
 33              MaxLength="50"
 34              Text="{x:Bind ViewModel.ProfileName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
 35  
 36          <!--  Monitors List  -->
 37          <ScrollViewer Grid.Row="1" VerticalScrollBarVisibility="Auto">
 38              <StackPanel Spacing="16">
 39                  <TextBlock x:Uid="PowerDisplay_ProfileEditor_Description" Style="{StaticResource BodyStrongTextBlockStyle}" />
 40                  <ItemsControl ItemsSource="{x:Bind ViewModel.Monitors, Mode=OneWay}">
 41                      <ItemsControl.ItemTemplate>
 42                          <DataTemplate x:DataType="viewmodels:MonitorSelectionItem">
 43                              <tkcontrols:SettingsExpander
 44                                  Margin="0,0,0,8"
 45                                  Description="{x:Bind Monitor.Id, Mode=OneWay}"
 46                                  Header="{x:Bind Monitor.DisplayName, Mode=OneWay}"
 47                                  IsExpanded="True">
 48                                  <tkcontrols:SettingsExpander.HeaderIcon>
 49                                      <FontIcon Glyph="{x:Bind Monitor.MonitorIconGlyph}" />
 50                                  </tkcontrols:SettingsExpander.HeaderIcon>
 51                                  <ToggleSwitch IsOn="{x:Bind IsSelected, Mode=TwoWay}" />
 52                                  <tkcontrols:SettingsExpander.Items>
 53                                      <tkcontrols:SettingsCard Padding="16,8,16,8" Visibility="{x:Bind Monitor.SupportsBrightness, Converter={StaticResource BoolToVisibilityConverter}}">
 54                                          <tkcontrols:SettingsCard.Header>
 55                                              <CheckBox IsChecked="{x:Bind IncludeBrightness, Mode=TwoWay}">
 56                                                  <StackPanel Orientation="Horizontal" Spacing="8">
 57                                                      <FontIcon FontSize="16" Glyph="&#xE706;" />
 58                                                      <TextBlock x:Uid="PowerDisplay_ProfileEditor_Brightness" VerticalAlignment="Center" />
 59                                                  </StackPanel>
 60                                              </CheckBox>
 61                                          </tkcontrols:SettingsCard.Header>
 62                                          <Slider
 63                                              MinWidth="{StaticResource SettingActionControlMinWidth}"
 64                                              VerticalAlignment="Center"
 65                                              Maximum="100"
 66                                              Minimum="0"
 67                                              Value="{x:Bind Brightness, Mode=TwoWay}" />
 68                                          <tkcontrols:SettingsCard.Resources>
 69                                              <x:Double x:Key="SettingsCardLeftIndention">0</x:Double>
 70                                          </tkcontrols:SettingsCard.Resources>
 71                                      </tkcontrols:SettingsCard>
 72  
 73                                      <tkcontrols:SettingsCard Padding="16,8,16,8" Visibility="{x:Bind Monitor.SupportsContrast, Converter={StaticResource BoolToVisibilityConverter}}">
 74                                          <tkcontrols:SettingsCard.Header>
 75                                              <CheckBox IsChecked="{x:Bind IncludeContrast, Mode=TwoWay}">
 76                                                  <StackPanel Orientation="Horizontal" Spacing="8">
 77                                                      <FontIcon FontSize="16" Glyph="&#xE793;" />
 78                                                      <TextBlock x:Uid="PowerDisplay_ProfileEditor_Contrast" VerticalAlignment="Center" />
 79                                                  </StackPanel>
 80                                              </CheckBox>
 81                                          </tkcontrols:SettingsCard.Header>
 82                                          <Slider
 83                                              MinWidth="{StaticResource SettingActionControlMinWidth}"
 84                                              VerticalAlignment="Center"
 85                                              Maximum="100"
 86                                              Minimum="0"
 87                                              Value="{x:Bind Contrast, Mode=TwoWay}" />
 88                                      </tkcontrols:SettingsCard>
 89                                      <tkcontrols:SettingsCard Padding="16,8,16,8" Visibility="{x:Bind Monitor.SupportsVolume, Converter={StaticResource BoolToVisibilityConverter}}">
 90                                          <tkcontrols:SettingsCard.Header>
 91                                              <CheckBox IsChecked="{x:Bind IncludeVolume, Mode=TwoWay}">
 92                                                  <StackPanel Orientation="Horizontal" Spacing="8">
 93                                                      <FontIcon FontSize="16" Glyph="&#xE767;" />
 94                                                      <TextBlock x:Uid="PowerDisplay_ProfileEditor_Volume" VerticalAlignment="Center" />
 95                                                  </StackPanel>
 96                                              </CheckBox>
 97                                          </tkcontrols:SettingsCard.Header>
 98                                          <Slider
 99                                              MinWidth="{StaticResource SettingActionControlMinWidth}"
100                                              VerticalAlignment="Center"
101                                              Maximum="100"
102                                              Minimum="0"
103                                              Value="{x:Bind Volume, Mode=TwoWay}" />
104                                      </tkcontrols:SettingsCard>
105                                      <tkcontrols:SettingsCard Padding="16,8,16,8" Visibility="{x:Bind Monitor.SupportsColorTemperature, Converter={StaticResource BoolToVisibilityConverter}}">
106                                          <tkcontrols:SettingsCard.Header>
107                                              <CheckBox IsChecked="{x:Bind IncludeColorTemperature, Mode=TwoWay}">
108                                                  <StackPanel Orientation="Horizontal" Spacing="8">
109                                                      <FontIcon FontSize="16" Glyph="&#xE790;" />
110                                                      <TextBlock x:Uid="PowerDisplay_ProfileEditor_ColorTemperature" VerticalAlignment="Center" />
111                                                  </StackPanel>
112                                              </CheckBox>
113                                          </tkcontrols:SettingsCard.Header>
114                                          <ComboBox
115                                              x:Uid="PowerDisplay_ProfileEditor_ColorTemperature_ComboBox"
116                                              MinWidth="{StaticResource SettingActionControlMinWidth}"
117                                              VerticalAlignment="Center"
118                                              DisplayMemberPath="DisplayName"
119                                              ItemsSource="{x:Bind Monitor.ColorPresetsForDisplay, Mode=OneWay}"
120                                              SelectedValue="{x:Bind ColorTemperature, Mode=TwoWay}"
121                                              SelectedValuePath="VcpValue" />
122                                      </tkcontrols:SettingsCard>
123                                  </tkcontrols:SettingsExpander.Items>
124                              </tkcontrols:SettingsExpander>
125                          </DataTemplate>
126                      </ItemsControl.ItemTemplate>
127  
128                  </ItemsControl>
129              </StackPanel>
130          </ScrollViewer>
131      </Grid>
132  </ContentDialog>