コード例 #1
0
        public BookViewModel(BookToken token)
        {
            Requires.NotNull(token, nameof(token));
            Token   = token;
            Sheets  = new ObservableCollection <SheetViewModel>();
            Windows = new BookWindowsViewModel();

            Activate = new RelayCommand(obj => SessionCommands.ActivateBook(Token.Id));
        }
コード例 #2
0
        public static BookWindowsViewModel GetBookWindows(BookToken token)
        {
            Requires.NotNull(token, nameof(token));

            var result = new BookWindowsViewModel();

            foreach (var windowToken in token.Windows)
            {
                result.Windows.Add(ConvertWindow(windowToken));
            }
            return(result);
        }
コード例 #3
0
        public static BookViewModel ConvertBook(BookToken token)
        {
            Requires.NotNull(token, nameof(token));

            var result = new BookViewModel(token)
            {
                Windows = GetBookWindows(token)
            };

            var activeSheets = token.Windows
                               .Select(w => new ActiveSheet(w.Id.WindowIndex, w.ActiveSheetId?.SheetName))
                               .ToArray();

            foreach (var sheetToken in token.Sheets)
            {
                result.Sheets.Add(GetSheet(sheetToken, activeSheets));
            }

            return(result);
        }