From 41c5a84dacfd036b8d8f01f72226ac5a519995e3 Mon Sep 17 00:00:00 2001 From: Rory& Date: Tue, 14 May 2024 17:49:09 +0200 Subject: Organise tools somewhat, set proper icons for nav menu --- .../MainTabComponents/MainTabSpaceItem.razor | 56 ++++++++++++++++++++++ .../MainTabComponents/MainTabSpaceItem.razor.css | 29 +++++++++++ 2 files changed, 85 insertions(+) create mode 100644 MatrixUtils.Web/Pages/Labs/Rooms2/Index2Components/MainTabComponents/MainTabSpaceItem.razor create mode 100644 MatrixUtils.Web/Pages/Labs/Rooms2/Index2Components/MainTabComponents/MainTabSpaceItem.razor.css (limited to 'MatrixUtils.Web/Pages/Labs/Rooms2/Index2Components/MainTabComponents') diff --git a/MatrixUtils.Web/Pages/Labs/Rooms2/Index2Components/MainTabComponents/MainTabSpaceItem.razor b/MatrixUtils.Web/Pages/Labs/Rooms2/Index2Components/MainTabComponents/MainTabSpaceItem.razor new file mode 100644 index 0000000..6483f01 --- /dev/null +++ b/MatrixUtils.Web/Pages/Labs/Rooms2/Index2Components/MainTabComponents/MainTabSpaceItem.razor @@ -0,0 +1,56 @@ +@using MatrixUtils.Abstractions +
+
+ @if (IsSpaceOpened()) { + + } + else { + + } + + + @Space.RoomName +
+ @if (IsSpaceOpened()) { + meow + } +
+ +@code { + + [Parameter] + public RoomInfo Space { get; set; } + + [Parameter] + public RoomInfo SelectedSpace { get; set; } + + [Parameter] + public EventCallback SelectedSpaceChanged { get; set; } + + [Parameter] + public List OpenedSpaces { get; set; } + + protected override Task OnInitializedAsync() { + Space.PropertyChanged += (sender, args) => { StateHasChanged(); }; + return base.OnInitializedAsync(); + } + + public void ToggleSpace() { + if (OpenedSpaces.Contains(Space)) { + OpenedSpaces.Remove(Space); + } + else { + OpenedSpaces.Add(Space); + } + } + + public void SelectSpace() { + SelectedSpace = Space; + SelectedSpaceChanged.InvokeAsync(Space); + } + + public bool IsSpaceOpened() { + return OpenedSpaces.Contains(Space); + } + +} \ No newline at end of file diff --git a/MatrixUtils.Web/Pages/Labs/Rooms2/Index2Components/MainTabComponents/MainTabSpaceItem.razor.css b/MatrixUtils.Web/Pages/Labs/Rooms2/Index2Components/MainTabComponents/MainTabSpaceItem.razor.css new file mode 100644 index 0000000..d6e413f --- /dev/null +++ b/MatrixUtils.Web/Pages/Labs/Rooms2/Index2Components/MainTabComponents/MainTabSpaceItem.razor.css @@ -0,0 +1,29 @@ +.spaceNameEllipsis { + padding-left: 8px; + display: inline-block; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + vertical-align: middle; + width: calc(100% - 64px); +} + +.spaceListItem { + display: block; + width: 100%; + height: 3em; +} + +.spaceListItemContainer { + display: flex; + align-items: center; + vertical-align: center; + justify-content: space-between; + padding: 0 16px; + width: 100%; + height: 100%; +} + +.spaceListItem > img { + display: inline-block; +} \ No newline at end of file -- cgit 1.5.1