leftwm_core/models/
gutter.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, PartialOrd, Eq, Ord)]
4pub enum Side {
5    Top,
6    Bottom,
7    Left,
8    Right,
9}
10
11#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, PartialOrd, Eq, Ord)]
12pub struct Gutter {
13    pub side: Side,
14    pub value: i32,
15    pub id: Option<usize>,
16}
17
18impl Gutter {
19    #[must_use]
20    pub const fn new(side: Side, value: i32, id: Option<usize>) -> Self {
21        Self { side, value, id }
22    }
23}
24
25impl Default for Gutter {
26    fn default() -> Self {
27        Self {
28            side: Side::Top,
29            value: 0,
30            id: None,
31        }
32    }
33}