2024-09-04 21:37:35 +02:00
|
|
|
//! ### Cursor
|
2024-09-05 01:45:48 +02:00
|
|
|
//! Represents the position of a remote user's cursor.
|
2024-08-05 19:15:30 +02:00
|
|
|
|
2024-08-09 00:00:21 +02:00
|
|
|
#[cfg(feature = "python")]
|
|
|
|
use pyo3::prelude::*;
|
|
|
|
|
2024-09-04 21:37:35 +02:00
|
|
|
/// User cursor position in a buffer
|
2024-08-05 19:15:30 +02:00
|
|
|
#[derive(Clone, Debug, Default)]
|
2024-08-09 00:00:21 +02:00
|
|
|
#[cfg_attr(feature = "python", pyclass)]
|
|
|
|
// #[cfg_attr(feature = "python", pyo3(crate = "reexported::pyo3"))]
|
2024-08-05 19:15:30 +02:00
|
|
|
pub struct Cursor {
|
2024-09-05 01:45:48 +02:00
|
|
|
/// Cursor start position in buffer, as 0-indexed row-column tuple.
|
2024-08-05 19:15:30 +02:00
|
|
|
pub start: (i32, i32),
|
2024-09-05 01:45:48 +02:00
|
|
|
/// Cursor end position in buffer, as 0-indexed row-column tuple.
|
2024-08-05 19:15:30 +02:00
|
|
|
pub end: (i32, i32),
|
2024-09-05 01:45:48 +02:00
|
|
|
/// Path of buffer this cursor is on.
|
2024-08-05 19:15:30 +02:00
|
|
|
pub buffer: String,
|
2024-09-05 01:45:48 +02:00
|
|
|
/// User display name, if provided.
|
2024-09-05 23:59:05 +02:00
|
|
|
pub user: Option<String>,
|
2024-08-05 19:15:30 +02:00
|
|
|
}
|