1 //! Structs and enums that are used within the grid module 2 mod cell_occupancy; 3 mod coordinates; 4 mod grid_item; 5 mod grid_track; 6 mod grid_track_counts; 7 8 // Publish only locally in the grid module 9 pub(super) use cell_occupancy::{CellOccupancyMatrix, CellOccupancyState}; 10 pub(crate) use coordinates::{GridCoordinate, GridLine, OriginZeroLine}; 11 pub(super) use grid_item::GridItem; 12 pub(super) use grid_track::GridTrack; 13 pub(super) use grid_track_counts::TrackCounts; 14 15 #[allow(unused_imports)] 16 pub(super) use grid_track::GridTrackKind; 17 18 // pub(super) enum GridPosition { 19 // Auto, 20 // LineIndex(i16), 21 // LineName(u16), 22 // // GridAreaStart(u16), 23 // // GridAreaEnd(u16), 24 // } 25 26 // pub(super) struct NamedArea { 27 // name: u16, 28 // row_start: u16, 29 // row_end: u16, 30 // column_start: u16, 31 // column_end: u16, 32 // } 33 34 // pub(super) struct CssGrid { 35 // pub available_space: Size<AvailableSpace>, 36 // pub cell_occupancy_matrix: CellOccupancyMatrix, 37 // pub items: Vec<GridItem>, 38 // pub columns: GridAxisTracks, 39 // pub rows: GridAxisTracks, 40 // pub named_areas: Vec<NamedArea>, 41 // } 42