// // Copyright (c) PlaceholderCompany. All rights reserved. // namespace SystemTrayMenu.DataClasses { using System.Collections.Generic; internal enum MenuDataDirectoryState { /// /// State not defined or data still loading /// Undefined, /// /// Data is available /// Valid, /// /// Loading finished but no data available /// Empty, /// /// Loading failed, so no data available /// NoAccess, } internal struct MenuData { public MenuData(RowData? rowDataParent) { RowDataParent = rowDataParent; if (rowDataParent != null) { Level = rowDataParent.Level + 1; } else { Level = 0; } } internal int Level { get; } internal RowData? RowDataParent { get; } internal List RowDatas { get; set; } = new (); internal MenuDataDirectoryState DirectoryState { get; set; } = MenuDataDirectoryState.Undefined; } }