public override void AddToRecent(TemplateHeader templateHeader) { Assert.ArgumentNotNull(templateHeader, nameof(templateHeader)); RecentTemplateManager.AddToRecent(templateHeader); }
private void CreateItem([NotNull] object sender, [NotNull] RoutedEventArgs e) { Debug.ArgumentNotNull(sender, nameof(sender)); Debug.ArgumentNotNull(e, nameof(e)); var context = Context; if (context == null) { return; } var parent = context.SelectedItems.FirstOrDefault() as ItemTreeViewItem; if (parent == null) { return; } var menuItem = e.Source as MenuItem; if (menuItem == null) { return; } var templateHeader = menuItem.Tag as TemplateHeader; if (templateHeader == null) { return; } var d = new AddInsertOptionDialog(); d.NewItemName.Text = templateHeader.Name; if (AppHost.Shell.ShowDialog(d) != true) { return; } RecentTemplateManager.AddToRecent(templateHeader); var newName = d.ItemName; var templateId = templateHeader.TemplateUri.ItemId; var templateUri = new ItemUri(parent.ItemUri.DatabaseUri, templateId); ItemUri itemUri; var isBranch = IdManager.GetTemplateType(templateId) != "template"; if (isBranch) { itemUri = parent.ItemUri.Site.DataService.AddFromMaster(parent.ItemUri, templateUri, newName); } else { itemUri = parent.ItemUri.Site.DataService.AddFromTemplate(parent.ItemUri, templateUri, newName); } if (itemUri == ItemUri.Empty) { return; } parent.RefreshAndExpand(false); parent.SelectChildItems(new[] { itemUri }); var itemVersionUri = new ItemVersionUri(itemUri, LanguageManager.CurrentLanguage, Version.Latest); AppHost.OpenContentEditor(itemVersionUri); Notifications.RaiseItemAdded(this, itemVersionUri, parent.ItemUri); }