SolutionTemplate FromRecentItem(IEnumerable <TemplateCategory> categories, RecentItem item) { var templatePath = item.Uri.StartsWith(templateUriScheme, StringComparison.Ordinal) ? item.Uri.Substring(templateUriScheme.Length) : item.Uri; var parts = templatePath.Split('/'); var templateId = parts [parts.Length - 1]; SolutionTemplate recentTemplate = null; if (parts.Length > 1) { recentTemplate = TemplatingService.GetTemplate( categories, (template) => template.Id == templateId, (category) => parts.Length > 1 ? category.Id == parts[0] : true, (category) => parts.Length > 2 ? category.Id == parts[1] : true ); } // fallback to global template lookup if no category matched // in this case the category is not guaranteed if a template is listed in more than one category if (recentTemplate == null) { recentTemplate = TemplatingService.GetTemplate(categories, templateId); } return(recentTemplate); }
private void InvokeItemClicked(RecentItem recentItem) { var handler = this.ItemClicked; if (handler != null) { handler(this, new RecentItemClickedEventArgs(recentItem)); } }
/// <summary> /// Adds the given recent item as menu item /// </summary> private void RecentItemAdd(RecentItem item) { ToolStripMenuItem toolStripItem = new ToolStripMenuItem(item.Caption); toolStripItem.Click += this.RecentItemClicked; this.FileToolStripMenuItem.DropDownItems.Insert(this.RecentItemsMenuIndex, toolStripItem); item.MenuItem = toolStripItem; toolStripItem.Tag = item; this.RecentItemsToolStripSeparator.Visible = this.recentItems.Count > 0; }
public void Update(DXUser user, string fileName) { if (!Contains(user, fileName)) { return; } RecentItem item = collection .FindOne(r => r.FileName == fileName); item.LastedTime = DateTime.Now; collection.Update(item); }
void UpDateRecentsList(string FileToOpen) { RecentItem ri = new RecentItem() { FileName = FileToOpen }; foreach (RecentItem rl in Inventory) { if (rl.FileName == FileToOpen) { return; } } Inventory.Add(ri); RecentsGrid.ItemsSource = Inventory; }
private void OnNewQuotationEvent(QuotationEventArgs arg) { if (arg != null && arg.QuotationDataSet != null && arg.QuotationDataSet.Tables.Count == 5) { var recentItem = new RecentItem() { OwnerName = arg.OwnerName, NRIC = arg.NRICNumber, QuotationNo = arg.QuotationNumber, CreatedDateTime = DateTime.Now, IsAvailable = true }; RecentListUtility.AddRecentData(recentItem, recentFileName); if (this.RecentItems.Count == 0) { this.RecentItems.Add(new RecentItemViewModel(recentItem)); } else if (this.RecentItems.Count > 0) { this.RecentItems.Insert(0, new RecentItemViewModel(recentItem)); } } }
public static void AddRecentData(RecentItem recentItem, string recentFileName) { RecentListModel recentListModel = null; string filePath = GetRecentFilePath(recentFileName); if (!File.Exists(filePath)) { recentListModel = new RecentListModel(); } try { recentListModel = XmlParser.ConvertFromXml <RecentListModel>(filePath); } catch { recentListModel = new RecentListModel(); } recentListModel.Add(recentItem); XmlParser.ConvertToXml <RecentListModel>(recentListModel, filePath); }
public void AddRecent(string item) { RecentItem r = null; foreach (RecentItem recent in recents) { if (string.Compare(recent.Filename, item, StringComparison.OrdinalIgnoreCase) == 0) { r = recent; recents.Remove(r); break; } } if (r == null) { r = new RecentItem(item); } recents.Insert(0, r); }
public static RecentItemViewModel ToViewModel(this RecentItem result, DateTime today, bool showExtension) { var path = result.Value.LocalProperties.FullPath; var date = result.Value.LastAccessed.Date; var name = showExtension ? Path.GetFileName(path) : Path.GetFileNameWithoutExtension(path); var pinned = result.Value.IsFavorite; var folder = Path.GetDirectoryName(path); var period = CalculatePeriodType(pinned, today, date); var type = path.CalculateRecentItemType(); var moniker = type.ToImageMoniker(); return(new RecentItemViewModel { Name = name, Description = folder, Date = date, Path = path, Pinned = pinned, PeriodType = period, ItemType = type, Moniker = moniker }); }
public IEnumerable <RecentItem> Load([NotNull] string storageKey) { Assert.ArgumentNotNull(storageKey, nameof(storageKey)); var n = 0; var recentItems = new List <RecentItem>(); while (n < 99) { var uri = AppHost.Settings.Get(storageKey, "itemuri" + n, null) as string; if (string.IsNullOrEmpty(uri)) { break; } ItemUri itemUri; if (!ItemUri.TryParse(uri, out itemUri)) { n++; continue; } var name = AppHost.Settings.Get(storageKey, "name" + n, string.Empty) as string ?? string.Empty; var icon = new Icon(itemUri.Site, AppHost.Settings.Get(storageKey, "icon" + n, string.Empty) as string ?? string.Empty); var templateId = new ItemId(new Guid(AppHost.Settings.Get(storageKey, "templateid" + n, string.Empty) as string ?? string.Empty)); var templateName = AppHost.Settings.Get(storageKey, "templatename" + n, string.Empty) as string ?? string.Empty; var item = new RecentItem(itemUri, name, icon, templateId, templateName); recentItems.Insert(0, item); n++; } return(recentItems); }
/// <summary> /// Removes given item from recent list /// </summary> public void RemoveItem(RecentItem item) { this.recentItems.RemoveItem(item); }
/// <summary> /// Loads Preferences from disk. /// </summary> public static void Load() { RecentItem firstItem = App.Preferences.RecentlyOpenedProjects.Items.FirstOrDefault(); if (App.Preferences.OpenLastProjectOnStartup && firstItem is { })
private void HandleCommandLine(string[] arguments) { if(arguments.Length > 1) { _recentItem = new RecentItem(new FileInfo(arguments[0])); this.Password = arguments[1]; OpenDatabase(); this.OnRequestClose(); } }
public RecentItemClickedEventArgs(RecentItem recentItem) { this.RecentItem = recentItem; }
/// <summary> /// Add the RecentItem to the ObservableCollection for the UI to render. /// </summary> /// <param name="recentItem">The recent item to be added</param> private async Task AddItemToRecentListAsync(RecentItem recentItem, bool sortInsert = false) { await recentItem.LoadRecentItemIcon(); recentItemsCollection.Add(recentItem); }
/// <summary>Handles the CollectionChanged event of the Files list.</summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The [NotifyCollectionChangedEventArgs] instance containing the event data.</param> private void Files_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e) { void AddItems() { foreach (RecentItem recentItem in e.NewItems.OfType <RecentItem>()) { RecentItem listItem = _recentItems.FirstOrDefault(item => string.Equals(item.FilePath, recentItem.FilePath, StringComparison.OrdinalIgnoreCase)); if (listItem != null) { int index = _recentItems.IndexOf(listItem); if (index != -1) { _recentItems[index] = recentItem; } return; } _recentItems.Add(recentItem); } } void RemoveItems() { foreach (RecentItem recentItem in e.OldItems.OfType <RecentItem>()) { RecentItem listItem = _recentItems.FirstOrDefault(item => string.Equals(item.FilePath, recentItem.FilePath, StringComparison.OrdinalIgnoreCase)); if (listItem == null) { continue; } _recentItems.Remove(listItem); } } switch (e.Action) { case NotifyCollectionChangedAction.Add: AddItems(); break; case NotifyCollectionChangedAction.Remove: RemoveItems(); break; case NotifyCollectionChangedAction.Replace: RemoveItems(); AddItems(); break; case NotifyCollectionChangedAction.Reset: _recentItems.Clear(); foreach (RecentItem item in Files) { _recentItems.Add(item); } break; } }
private static int RecentItemsComparison(RecentItem item1, RecentItem item2) { return item2.lastUpdated.CompareTo(item1.lastUpdated); }
private void ReloadRecentItems() { recentMenuItem.Items.Clear(); RegistryKey outlinerKey = registryKey.OpenSubKey("Software\\UVOutliner\\Recent", false); if (outlinerKey == null) return; string[] files = outlinerKey.GetValueNames(); List<RecentItem> recentItems = new List<RecentItem>(); foreach (var file in files) { string recentData = outlinerKey.GetValue(file, "") as string; if (recentData != null && recentData != "") { string[] date = recentData.Split(new char[] { ';' }); if (date.Length < 6) continue; RecentItem r = new RecentItem(); r.fileName = file; try { r.lastUpdated = Int64.Parse(date[5]); } catch { continue; } recentItems.Add(r); } } recentItems.Sort(RecentItemsComparison); for (int i = 0; i < Math.Min(recentItems.Count, 10); i++) { if (recentItems[i].fileName == __Document.FileName) continue; if (recentItems[i].fileName == OutlinerDocument.DefaultFileName) continue; string fileName = recentItems[i].fileName; MenuItem mi = new MenuItem(); mi.Header = fileName; mi.Command = OutlinerCommands.OpenRecentFile; mi.CommandParameter = recentItems[i].fileName; recentMenuItem.Items.Add(mi); if (!System.IO.File.Exists(fileName)) mi.IsEnabled = false; } if (recentMenuItem.Items.Count > 0) recentMenuItem.IsEnabled = true; else recentMenuItem.IsEnabled = false; }
public void AddRecent(string item) { RecentItem r = null; foreach (RecentItem recent in recents) if (string.Compare(recent.Filename, item, StringComparison.OrdinalIgnoreCase) == 0) { r = recent; recents.Remove(r); break; } if (r == null) r = new RecentItem(item); recents.Insert(0, r); }
public SearchResultRecentVM(RecentItem item) : base(item.Text) { this.item = item; }
/// <summary> /// Pushes given item from recent list by adding it on top other others. /// </summary> public void PushItem(RecentItem item) { this.recentItems.PushItem(item); }
public RecentItemActionEventArgs(RecentItem item) { this.Item = item; }
public RecentItemViewModel(RecentItem model) { this.model = model; }
/// <summary>Initializes a new instance of the <see cref="RecentItemDeleteEventArgs"/> class.</summary> /// <param name="item">The item.</param> public RecentItemDeleteEventArgs(RecentItem item) => Item = item;
/// <summary>Initializes a new instance of the <see cref="T:Gorgon.Editor.UI.RecentItemClickEventArgs"/> class.</summary> /// <param name="item">The item.</param> public RecentItemClickEventArgs(RecentItem item) => Item = item;