terminal/src/cascadia/TerminalSettingsEditor
Carlos Zamora 87fa526fb7
Represent font face as a combo box in SUI (#9275)
## Summary of the Pull Request

This replaces the Profiles > Font Face text box with a combo box.

## References
#6800 - Settings UI Epic

## Detailed Description of the Pull Request / Additional comments

- Enumerating the fonts
  - [This doc](https://docs.microsoft.com/en-us/windows/win32/directwrite/font-enumeration) was the main reference used to enumerate the fonts. It was mildly adapted to use WinRT instead of WRL.
- Updating the UI
  - Similar to other combo box settings, `Profiles` keeps a reference to the current value. We use that as a way to update the settings model. If an invalid value is used, we fallback to `Cascadia Mono`.
  - A checkbox was added to let the user select from all of the installed fonts, or just the monospace ones.

## Demo
![Font Face Combo Box Demo](https://user-images.githubusercontent.com/11050425/109342917-6cd3b600-7821-11eb-8df9-fb988b037e02.gif)
2021-03-08 16:45:12 +00:00
..
Resources/en-US Represent font face as a combo box in SUI (#9275) 2021-03-08 16:45:12 +00:00
Actions.cpp Add a simple page for keybindings (#9253) 2021-02-23 23:37:23 +00:00
Actions.h Replace some of our macros to reduce confusion, increase success (#9376) 2021-03-04 11:27:03 -08:00
Actions.idl Add a simple page for keybindings (#9253) 2021-02-23 23:37:23 +00:00
Actions.xaml Add a simple page for keybindings (#9253) 2021-02-23 23:37:23 +00:00
ColorLightenConverter.cpp Persist selected color scheme on navigation; Don't gray-out color swatches (#8799) 2021-01-19 19:18:07 +00:00
ColorLightenConverter.h Persist selected color scheme on navigation; Don't gray-out color swatches (#8799) 2021-01-19 19:18:07 +00:00
ColorSchemes.cpp Redesign color schemes page (#9196) 2021-02-19 18:20:04 +00:00
ColorSchemes.h Replace some of our macros to reduce confusion, increase success (#9376) 2021-03-04 11:27:03 -08:00
ColorSchemes.idl Redesign color schemes page (#9196) 2021-02-19 18:20:04 +00:00
ColorSchemes.xaml Redesign color schemes page (#9196) 2021-02-19 18:20:04 +00:00
ColorToBrushConverter.cpp Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
ColorToBrushConverter.h Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
ColorToHexConverter.cpp Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
ColorToHexConverter.h Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
CommonResources.xaml Perform polish of miscellaneous Settings UI bugs (#9126) 2021-02-17 17:43:47 +00:00
Converters.idl Polish settings UI localized text (#9124) 2021-02-19 14:27:30 -08:00
EnumEntry.h Replace some of our macros to reduce confusion, increase success (#9376) 2021-03-04 11:27:03 -08:00
EnumEntry.idl Enable text search on combo boxes (#9206) 2021-02-19 18:11:07 +00:00
FontWeightConverter.cpp Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
FontWeightConverter.h Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
GlobalAppearance.cpp Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
GlobalAppearance.h Replace some of our macros to reduce confusion, increase success (#9376) 2021-03-04 11:27:03 -08:00
GlobalAppearance.idl Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
GlobalAppearance.xaml Polish settings UI localized text (#9124) 2021-02-19 14:27:30 -08:00
Interaction.cpp Add missing settings to the settings UI (#8774) 2021-01-14 23:57:59 +00:00
Interaction.h Replace some of our macros to reduce confusion, increase success (#9376) 2021-03-04 11:27:03 -08:00
Interaction.idl Add missing settings to the settings UI (#8774) 2021-01-14 23:57:59 +00:00
Interaction.xaml Add support for "focus follows mouse" mode (#8965) 2021-02-09 22:18:20 +00:00
InvertedBooleanConverter.cpp Polish settings UI localized text (#9124) 2021-02-19 14:27:30 -08:00
InvertedBooleanConverter.h Polish settings UI localized text (#9124) 2021-02-19 14:27:30 -08:00
InvertedBooleanToVisibilityConverter.cpp Add UI for adding, renaming, and deleting a color scheme (#8403) 2020-12-17 23:14:07 +00:00
InvertedBooleanToVisibilityConverter.h Polish settings UI localized text (#9124) 2021-02-19 14:27:30 -08:00
Launch.cpp Add support for the windowingBehavior setting (#9118) 2021-02-19 21:09:17 +00:00
Launch.h Replace some of our macros to reduce confusion, increase success (#9376) 2021-03-04 11:27:03 -08:00
Launch.idl Add support for the windowingBehavior setting (#9118) 2021-02-19 21:09:17 +00:00
Launch.xaml Add support for the windowingBehavior setting (#9118) 2021-02-19 21:09:17 +00:00
MainPage.cpp Add a simple page for keybindings (#9253) 2021-02-23 23:37:23 +00:00
MainPage.h Fix the Profiles pivot selection, again (#8844) 2021-01-25 15:06:33 -08:00
MainPage.idl Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
MainPage.xaml Add a simple page for keybindings (#9253) 2021-02-23 23:37:23 +00:00
Microsoft.Terminal.Settings.Editor.def Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
Microsoft.Terminal.Settings.Editor.vcxproj Add a simple page for keybindings (#9253) 2021-02-23 23:37:23 +00:00
Microsoft.Terminal.Settings.Editor.vcxproj.filters Polish the Background Image settings (#8778) 2021-01-18 22:34:07 +00:00
packages.config Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
PaddingConverter.cpp Add a slider for the padding setting in the SUI (#8851) 2021-01-26 02:22:24 +00:00
PaddingConverter.h Add a slider for the padding setting in the SUI (#8851) 2021-01-26 02:22:24 +00:00
pch.cpp Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
pch.h Represent font face as a combo box in SUI (#9275) 2021-03-08 16:45:12 +00:00
PercentageConverter.cpp Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
PercentageConverter.h Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
Profiles.cpp Represent font face as a combo box in SUI (#9275) 2021-03-08 16:45:12 +00:00
Profiles.h Represent font face as a combo box in SUI (#9275) 2021-03-08 16:45:12 +00:00
Profiles.idl Represent font face as a combo box in SUI (#9275) 2021-03-08 16:45:12 +00:00
Profiles.xaml Represent font face as a combo box in SUI (#9275) 2021-03-08 16:45:12 +00:00
Rendering.cpp Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
Rendering.h Replace some of our macros to reduce confusion, increase success (#9376) 2021-03-04 11:27:03 -08:00
Rendering.idl Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
Rendering.xaml Represent inheritance in Settings UI (#8919) 2021-02-08 18:04:43 +00:00
SettingContainer.cpp Introduce setting override tracking and update SettingContainer (#9079) 2021-02-19 23:50:52 +00:00
SettingContainer.h Introduce setting override tracking and update SettingContainer (#9079) 2021-02-19 23:50:52 +00:00
SettingContainer.idl Introduce setting override tracking and update SettingContainer (#9079) 2021-02-19 23:50:52 +00:00
SettingContainerStyle.xaml Introduce setting override tracking and update SettingContainer (#9079) 2021-02-19 23:50:52 +00:00
StringIsEmptyConverter.cpp Polish the Background Image settings (#8778) 2021-01-18 22:34:07 +00:00
StringIsEmptyConverter.h Polish the Background Image settings (#8778) 2021-01-18 22:34:07 +00:00
StringIsNotDesktopConverter.cpp Polish the Background Image settings (#8778) 2021-01-18 22:34:07 +00:00
StringIsNotDesktopConverter.h Polish the Background Image settings (#8778) 2021-01-18 22:34:07 +00:00
Utils.cpp Introduce the Terminal Settings Editor (#8048) 2020-12-11 13:47:10 -08:00
Utils.h Order enum settings according to enum values (#8784) 2021-01-14 11:47:33 +00:00
ViewModelHelpers.h Introduce setting override tracking and update SettingContainer (#9079) 2021-02-19 23:50:52 +00:00
ViewModelHelpers.idl.h Introduce setting override tracking and update SettingContainer (#9079) 2021-02-19 23:50:52 +00:00