namespace CursorLang.Core.Models;
///
/// How the place for the popup is chosen.
///
public enum PopupPlacementMode
{
/// Next to the mouse cursor.
AtCursor,
///
/// Next to the caret in the active input field. When the application does not
/// report its position, the popup is shown at the mouse cursor.
///
AtCaret,
/// At a fixed point of the monitor holding the active window.
FixedPoint,
}
///
/// Which side of the cursor to show the popup on.
///
public enum AnchorSide
{
TopLeft,
TopRight,
Left,
Right,
BottomLeft,
BottomRight,
}
///
/// Which side of the caret to show the popup on.
///
///
/// Only the two sides, unlike . The caret stands in a line of
/// text being written, and above or below it is exactly where the next line is: the
/// popup would cover what is being read. To the side it covers nothing, and the line
/// it lines up with is the one the caret is in.
///
public enum CaretSide
{
Left,
Right,
}
///
/// The place on the monitor for the mode.
///
public enum ScreenPosition
{
TopLeft,
Top,
TopRight,
Center,
BottomLeft,
Bottom,
BottomRight,
}