Esempio n. 1
0
        public void Store(TabsCollectionView tabs, ActionBarView actionBar)
        {
            var userFolder = new UserFolderPath();

            var contents = new List <IPath>();
            var queries  = new List <IQuery>();

            foreach (var tab in tabs.OpenedCustomTabs)
            {
                if (tab.Data is IQuery query)
                {
                    queries.Add(query);
                }

                if (tab.Data is IContent content)
                {
                    var path = new PartsPath(content.Source.Parts.SkipWhile(x => x.PlainText != userFolder.Name.PlainText).Skip(1));

                    contents.Add(path);
                }
            }

            var file = new SessionFile(queries.Select(x => x.PlainText), contents, new UserInterfaceSettings()
            {
                IsSideBarHidden = actionBar.IsPanelHidden
            }, new UserFolderPath());

            file.Save();
        }
Esempio n. 2
0
        public void Initialize(IContent[] articles)
        {
            var path = new UserFolderPath();

            var fileSystemNode = new FileSystemNode(path.FullPath);

            _collectionView.Add(new CollectionItem(new TabView(fileSystemNode)
            {
                IsDeletable = false, OnSelected = OnTabSelected
            }, new HorizontalSeparatorView()), animated: false);

            var collectionItems = new List <CollectionItem>();

            for (int i = 0; i < articles.Length; i++)
            {
                var article = articles[i];

                collectionItems.Add(new CollectionItem(new TabView(article, i)
                {
                    OnSelected = OnTabSelected, IsDefaultTab = false
                }, new HorizontalSeparatorView()));
            }

            _collectionView.AddRangeWithoutAnimation(collectionItems.ToArray());
        }
Esempio n. 3
0
        public SessionContext Restore()
        {
            var ufp = new UserFolderPath();

            OpenedContentTabs = _file.Contents.Select(x => new PartsPath(ufp.Parts, x.Parts));
            OpenedQueriesTabs = _file.Queries.Select(x => new SearchQuery(_library, x)).ToArray();
            InterfaceSettings = _file.Settings;

            return(this);
        }