SelectionMode --> TripleClickSelectionMode
Terminal: save winrt version of enum Added doc comments
This commit is contained in:
parent
9db18ab1e0
commit
23ae33cb8f
|
@ -60,9 +60,9 @@ static constexpr std::string_view ImageStretchModeUniform{ "uniform" };
|
|||
static constexpr std::string_view ImageStretchModeUniformTofill{ "uniformToFill" };
|
||||
|
||||
// Possible values for Triple Click Selection Mode
|
||||
static constexpr std::wstring_view SelectionModeDisabled{ L"disabled" };
|
||||
static constexpr std::wstring_view SelectionModeLine{ L"line" };
|
||||
static constexpr std::wstring_view SelectionModeViewport{ L"viewport" };
|
||||
static constexpr std::wstring_view TripleClickSelectionModeDisabled{ L"disabled" };
|
||||
static constexpr std::wstring_view TripleClickSelectionModeLine{ L"line" };
|
||||
static constexpr std::wstring_view TripleClickSelectionModeViewport{ L"viewport" };
|
||||
|
||||
Profile::Profile() :
|
||||
Profile(Utils::CreateGuid())
|
||||
|
@ -82,7 +82,7 @@ Profile::Profile(const winrt::guid& guid) :
|
|||
_cursorColor{ DEFAULT_CURSOR_COLOR },
|
||||
_cursorShape{ CursorStyle::Bar },
|
||||
_cursorHeight{ DEFAULT_CURSOR_HEIGHT },
|
||||
_tripleClickSelectionMode{ SelectionMode::Line },
|
||||
_tripleClickSelectionMode{ TripleClickSelectionMode::Line },
|
||||
|
||||
_commandline{ L"cmd.exe" },
|
||||
_startingDirectory{},
|
||||
|
@ -257,7 +257,7 @@ Json::Value Profile::ToJson() const
|
|||
root[JsonKey(CursorHeightKey)] = _cursorHeight;
|
||||
}
|
||||
root[JsonKey(CursorShapeKey)] = winrt::to_string(_SerializeCursorStyle(_cursorShape));
|
||||
root[JsonKey(TripleClickSelectionModeKey)] = winrt::to_string(_SerializeSelectionMode(_tripleClickSelectionMode));
|
||||
root[JsonKey(TripleClickSelectionModeKey)] = winrt::to_string(_SerializeTripleClickSelectionMode(_tripleClickSelectionMode));
|
||||
|
||||
///// Control Settings /////
|
||||
root[JsonKey(CommandlineKey)] = winrt::to_string(_commandline);
|
||||
|
@ -380,7 +380,7 @@ Profile Profile::FromJson(const Json::Value& json)
|
|||
}
|
||||
if (auto tripleClickSelectionMode{ json[JsonKey(TripleClickSelectionModeKey)] })
|
||||
{
|
||||
result._tripleClickSelectionMode = _ParseSelectionMode(GetWstringFromJson(tripleClickSelectionMode));
|
||||
result._tripleClickSelectionMode = _ParseTripleClickSelectionMode(GetWstringFromJson(tripleClickSelectionMode));
|
||||
}
|
||||
|
||||
// Control Settings
|
||||
|
@ -687,29 +687,43 @@ std::wstring_view Profile::_SerializeCursorStyle(const CursorStyle cursorShape)
|
|||
}
|
||||
}
|
||||
|
||||
winrt::Microsoft::Terminal::Settings::SelectionMode Profile::_ParseSelectionMode(const std::wstring& selectionModeString)
|
||||
// Method Description:
|
||||
// - Helper function for converting a user-specified triple click selection mode to the corresponding
|
||||
// TripleClickSelectionMode enum value
|
||||
// Arguments:
|
||||
// - selectionModeString: The string value from the settings file to parse
|
||||
// Return Value:
|
||||
// - The corresponding enum value which maps to the string provided by the user
|
||||
winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode Profile::_ParseTripleClickSelectionMode(const std::wstring& selectionModeString)
|
||||
{
|
||||
if (selectionModeString == SelectionModeDisabled)
|
||||
if (selectionModeString == TripleClickSelectionModeDisabled)
|
||||
{
|
||||
return SelectionMode::Disabled;
|
||||
return winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode::Disabled;
|
||||
}
|
||||
else if (selectionModeString == SelectionModeViewport)
|
||||
else if (selectionModeString == TripleClickSelectionModeViewport)
|
||||
{
|
||||
return SelectionMode::VisibleViewport;
|
||||
return winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode::VisibleViewport;
|
||||
}
|
||||
return SelectionMode::Line;
|
||||
return winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode::Line;
|
||||
}
|
||||
|
||||
std::wstring_view Profile::_SerializeSelectionMode(const winrt::Microsoft::Terminal::Settings::SelectionMode selectionMode)
|
||||
// Method Description:
|
||||
// - Helper function for converting a TripleClickSelectionMode to its corresponding string
|
||||
// value.
|
||||
// Arguments:
|
||||
// - selectionMode: The enum value to convert to a string.
|
||||
// Return Value:
|
||||
// - The string value for the given TripleClickSelectionMode
|
||||
std::wstring_view Profile::_SerializeTripleClickSelectionMode(const winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode selectionMode)
|
||||
{
|
||||
switch (selectionMode)
|
||||
{
|
||||
case SelectionMode::Disabled:
|
||||
return SelectionModeDisabled;
|
||||
case SelectionMode::VisibleViewport:
|
||||
return SelectionModeViewport;
|
||||
case SelectionMode::Line:
|
||||
case winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode::Disabled:
|
||||
return TripleClickSelectionModeDisabled;
|
||||
case winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode::VisibleViewport:
|
||||
return TripleClickSelectionModeViewport;
|
||||
case winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode::Line:
|
||||
default:
|
||||
return SelectionModeLine;
|
||||
return TripleClickSelectionModeLine;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -61,8 +61,8 @@ private:
|
|||
static std::string_view SerializeImageStretchMode(const winrt::Windows::UI::Xaml::Media::Stretch imageStretchMode);
|
||||
static winrt::Microsoft::Terminal::Settings::CursorStyle _ParseCursorShape(const std::wstring& cursorShapeString);
|
||||
static std::wstring_view _SerializeCursorStyle(const winrt::Microsoft::Terminal::Settings::CursorStyle cursorShape);
|
||||
static winrt::Microsoft::Terminal::Settings::SelectionMode _ParseSelectionMode(const std::wstring& selectionModeString);
|
||||
static std::wstring_view _SerializeSelectionMode(const winrt::Microsoft::Terminal::Settings::SelectionMode selectionMode);
|
||||
static winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode _ParseTripleClickSelectionMode(const std::wstring& selectionModeString);
|
||||
static std::wstring_view _SerializeTripleClickSelectionMode(const winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode selectionMode);
|
||||
|
||||
GUID _guid;
|
||||
std::wstring _name;
|
||||
|
@ -78,7 +78,7 @@ private:
|
|||
uint32_t _cursorColor;
|
||||
uint32_t _cursorHeight;
|
||||
winrt::Microsoft::Terminal::Settings::CursorStyle _cursorShape;
|
||||
winrt::Microsoft::Terminal::Settings::SelectionMode _tripleClickSelectionMode;
|
||||
winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode _tripleClickSelectionMode;
|
||||
|
||||
std::wstring _commandline;
|
||||
std::wstring _fontFace;
|
||||
|
|
|
@ -133,19 +133,7 @@ void Terminal::UpdateSettings(winrt::Microsoft::Terminal::Settings::ICoreSetting
|
|||
|
||||
_snapOnInput = settings.SnapOnInput();
|
||||
|
||||
switch (settings.TripleClickSelectionMode())
|
||||
{
|
||||
case winrt::Microsoft::Terminal::Settings::SelectionMode::Disabled:
|
||||
_tripleClickMode = TripleClickSelectionMode::Disabled;
|
||||
break;
|
||||
case winrt::Microsoft::Terminal::Settings::SelectionMode::VisibleViewport:
|
||||
_tripleClickMode = TripleClickSelectionMode::VisibleViewport;
|
||||
break;
|
||||
case winrt::Microsoft::Terminal::Settings::SelectionMode::Line:
|
||||
default:
|
||||
_tripleClickMode = TripleClickSelectionMode::Line;
|
||||
break;
|
||||
}
|
||||
_tripleClickMode = settings.TripleClickSelectionMode();
|
||||
|
||||
// TODO:MSFT:21327402 - if HistorySize has changed, resize the buffer so we
|
||||
// have a smaller scrollback. We should do this carefully - if the new buffer
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
namespace winrt::Microsoft::Terminal::Settings
|
||||
{
|
||||
struct ICoreSettings;
|
||||
enum class TripleClickSelectionMode;
|
||||
}
|
||||
|
||||
namespace Microsoft::Terminal::Core
|
||||
|
@ -145,19 +146,13 @@ private:
|
|||
bool _snapOnInput;
|
||||
|
||||
// Text Selection
|
||||
enum TripleClickSelectionMode
|
||||
{
|
||||
Disabled = 0,
|
||||
Line,
|
||||
VisibleViewport
|
||||
};
|
||||
COORD _selectionAnchor;
|
||||
COORD _endSelectionPosition;
|
||||
bool _boxSelection;
|
||||
bool _selectionActive;
|
||||
SHORT _selectionAnchor_YOffset;
|
||||
SHORT _endSelectionPosition_YOffset;
|
||||
TripleClickSelectionMode _tripleClickMode;
|
||||
winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode _tripleClickMode;
|
||||
void _ExpandDoubleClickSelectionLeft(const COORD position);
|
||||
void _ExpandDoubleClickSelectionRight(const COORD position);
|
||||
const bool _DoubleClickDelimiterCheck(std::wstring_view cellChar) const;
|
||||
|
|
|
@ -12,7 +12,7 @@ namespace Microsoft.Terminal.Settings
|
|||
EmptyBox
|
||||
};
|
||||
|
||||
enum SelectionMode
|
||||
enum TripleClickSelectionMode
|
||||
{
|
||||
Disabled,
|
||||
Line,
|
||||
|
@ -34,7 +34,7 @@ namespace Microsoft.Terminal.Settings
|
|||
UInt32 CursorColor;
|
||||
CursorStyle CursorShape;
|
||||
UInt32 CursorHeight;
|
||||
SelectionMode TripleClickSelectionMode;
|
||||
TripleClickSelectionMode TripleClickSelectionMode;
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@ namespace winrt::Microsoft::Terminal::Settings::implementation
|
|||
_cursorColor{ DEFAULT_CURSOR_COLOR },
|
||||
_cursorShape{ CursorStyle::Vintage },
|
||||
_cursorHeight{ DEFAULT_CURSOR_HEIGHT },
|
||||
_tripleClickSelectionMode{ Settings::SelectionMode::Line },
|
||||
_tripleClickSelectionMode{ Settings::TripleClickSelectionMode::Line },
|
||||
_useAcrylic{ false },
|
||||
_closeOnExit{ true },
|
||||
_tintOpacity{ 0.5 },
|
||||
|
@ -136,12 +136,12 @@ namespace winrt::Microsoft::Terminal::Settings::implementation
|
|||
_cursorHeight = value;
|
||||
}
|
||||
|
||||
Settings::SelectionMode TerminalSettings::TripleClickSelectionMode() const noexcept
|
||||
Settings::TripleClickSelectionMode TerminalSettings::TripleClickSelectionMode() const noexcept
|
||||
{
|
||||
return _tripleClickSelectionMode;
|
||||
}
|
||||
|
||||
void TerminalSettings::TripleClickSelectionMode(winrt::Microsoft::Terminal::Settings::SelectionMode const& value) noexcept
|
||||
void TerminalSettings::TripleClickSelectionMode(winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode const& value) noexcept
|
||||
{
|
||||
_tripleClickSelectionMode = value;
|
||||
}
|
||||
|
|
|
@ -45,8 +45,8 @@ namespace winrt::Microsoft::Terminal::Settings::implementation
|
|||
void CursorShape(winrt::Microsoft::Terminal::Settings::CursorStyle const& value) noexcept;
|
||||
uint32_t CursorHeight();
|
||||
void CursorHeight(uint32_t value);
|
||||
Settings::SelectionMode TripleClickSelectionMode() const noexcept;
|
||||
void TripleClickSelectionMode(winrt::Microsoft::Terminal::Settings::SelectionMode const& value) noexcept;
|
||||
Settings::TripleClickSelectionMode TripleClickSelectionMode() const noexcept;
|
||||
void TripleClickSelectionMode(winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode const& value) noexcept;
|
||||
// ------------------------ End of Core Settings -----------------------
|
||||
|
||||
bool UseAcrylic();
|
||||
|
@ -96,7 +96,7 @@ namespace winrt::Microsoft::Terminal::Settings::implementation
|
|||
uint32_t _cursorColor;
|
||||
Settings::CursorStyle _cursorShape;
|
||||
uint32_t _cursorHeight;
|
||||
Settings::SelectionMode _tripleClickSelectionMode;
|
||||
Settings::TripleClickSelectionMode _tripleClickSelectionMode;
|
||||
|
||||
bool _useAcrylic;
|
||||
bool _closeOnExit;
|
||||
|
|
|
@ -36,7 +36,7 @@ namespace TerminalCoreUnitTests
|
|||
uint32_t CursorColor() { return COLOR_WHITE; }
|
||||
CursorStyle CursorShape() const noexcept { return CursorStyle::Vintage; }
|
||||
uint32_t CursorHeight() { return 42UL; }
|
||||
SelectionMode TripleClickSelectionMode() { return SelectionMode::Line; }
|
||||
TripleClickSelectionMode TripleClickSelectionMode() { return TripleClickSelectionMode::Line; }
|
||||
|
||||
// other implemented methods
|
||||
uint32_t GetColorTableEntry(int32_t) const { return 123; }
|
||||
|
@ -51,7 +51,7 @@ namespace TerminalCoreUnitTests
|
|||
void CursorColor(uint32_t) {}
|
||||
void CursorShape(CursorStyle const&) noexcept {}
|
||||
void CursorHeight(uint32_t) {}
|
||||
void TripleClickSelectionMode(SelectionMode) {}
|
||||
void TripleClickSelectionMode(winrt::Microsoft::Terminal::Settings::TripleClickSelectionMode) {}
|
||||
|
||||
// other unimplemented methods
|
||||
void SetColorTableEntry(int32_t /* index */, uint32_t /* value */) {}
|
||||
|
|
Loading…
Reference in a new issue