⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 breadcrumbsmanager.cs

📁 YetAnotherForum.Net+ScrewTurnWiki中文完美汉化增强版
💻 CS
字号:

using System;
using System.Collections.Generic;
using System.Text;
using ScrewTurn.Wiki.PluginFramework;

namespace ScrewTurn.Wiki {

	/// <summary>
	/// Manages navigation Breadcrumbs.
	/// </summary>
	[Serializable]
	public class BreadcrumbsManager {

		private static int maxPages = 10;

		private List<PageInfo> pages;

		/// <summary>
		/// Initializes a new instance of the <b>BreadcrumbsManager</b> class.
		/// </summary>
		public BreadcrumbsManager() {
			pages = new List<PageInfo>();
		}

		/// <summary>
		/// Adds a Page to the Breadcrumbs trail.
		/// </summary>
		/// <param name="page">The Page to add.</param>
		public void AddPage(PageInfo page) {
			lock(pages) {
				if(pages.Count == 0 || (pages.Count > 0 && !pages.Contains(page))) pages.Add(page);
				if(pages.Count > maxPages) pages.RemoveRange(0, pages.Count - maxPages);
			}
		}

		/// <summary>
		/// Removes a Page from the Breadcrumbs trail.
		/// </summary>
		/// <param name="page">The Page to remove.</param>
		public void RemovePage(PageInfo page) {
			lock(pages) {
				pages.Remove(page);
			}
		}

		/// <summary>
		/// Clears the Breadcrumbs trail.
		/// </summary>
		public void Clear() {
			lock(pages) {
				pages.Clear();
			}
		}

		/// <summary>
		/// Gets all the Pages.
		/// </summary>
		public PageInfo[] AllPages {
			get {
				PageInfo[] array;
				lock(pages) {
					array = pages.ToArray();
				}
				return array;
			}
		}

	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -