亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mainform.cs

?? C#實現DHTML編輯器功能!
?? CS
?? 第 1 頁 / 共 4 頁
字號:
// DINAMIC XML Editor
//
// Copyright (c) 2002-2003 Dusan Hlavaty
// mailto: duddo@atlas.cz
//
// This software is licensed under the terms of
// GNU General Public license
//
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
//using System.Data;

using Crownwood.Magic.Menus;

using XML_editor.DockingPanels;
using XML_editor.Common;

namespace XML_editor.MyForms
{

	/// <summary>
	/// Tento delegat je pouzivany pre <see cref="MainForm.TextAreaControlClosed"/> event.
	/// </summary>
	/// <param name="tab"><see cref="XML_editor.TabPages.TextAreaTabPage"/>, ktory sa prave zatovril.
	/// <c>null</c> - ak sa zatvorili vsetky</param>
	public delegate void TextAreaControlClosedHandler(XML_editor.TabPages.TextAreaTabPage tab);

	/// <summary>
	/// Hlavny formular (okno) celej aplikacie
	/// </summary>
	public class MainForm : Form
	{
		/// <summary>
		/// Required designer variable.
		/// </summary>
		private System.ComponentModel.Container components = null;

		/// <summary>
		/// Status bar - zobrazuje stavove informacie
		/// </summary>
		private XML_editor.MyComponents.SdStatusBar statusBar = null;
		
		/// <summary>
		/// Tool bar
		/// </summary>
		private AxToolBar toolBar = null;

		/// <summary>
		/// <see cref="Crownwood.Magic.Controls.TabControl"/> ktory sa bude starat
		/// o jednotlive okna editora.
		/// </summary>
		private Crownwood.Magic.Controls.TabControl tabControl = null;

		/// <summary>
		/// Docking manazer, ktory sa bude starat o vsetky okna, ktore sa
		/// budu dat v aplikacii dokovat.
		/// </summary>
		private Crownwood.Magic.Docking.DockingManager dockingManager = null;

		/// <summary>
		/// V tejto 'hesovacej' tabulke su ulozene vsetky dokovatelne panely,
		/// ktore sa v aplikacii mozu vyskytovat.
		/// </summary>
		private Hashtable dockingPanels = new Hashtable();

		/// <summary>
		/// Hlavne menu aplikacie
		/// </summary>
		private Crownwood.Magic.Menus.MenuControl topMenu;

		/// <summary>
		/// Vizualny styl, ktory budu pouzivat vsetky komponenty aplikacie
		/// </summary>
		private Crownwood.Magic.Common.VisualStyle commonVisualStyle;

		/// <summary>
		/// Odkaz na aktualny <see cref="DLTextEditor.TextAreaControl"/>, ktory je prave 'navrchu'
		/// </summary>
		private DLTextEditor.TextAreaControl actualTextAreaControl = null;

		/// <summary>
		/// Odkaz na 'hladaci formular'
		/// </summary>
		private SearchForm searchForm = null;


		// -------------------------------------------------------------------------
		/// <summary>
		/// Aktualny <see cref="DLTextEditor.TextAreaControl"/>, ktory je prave 'navrchu'
		/// </summary>
		public DLTextEditor.TextAreaControl ActualTextAreaControl
		{
			get 
			{
				return this.actualTextAreaControl;
			}
			set 
			{
				if (Object.ReferenceEquals(this.actualTextAreaControl, value) != true)
				{
					this.actualTextAreaControl = value;
					this.OnActualTextAreaControlChanged();
				}
			}
		}

		// -------------------------------------------------------------------------
		/// <summary>
		/// Prave aktivny <see cref="XML_editor.TabPages.TextAreaTabPage"/> - teda
		/// ten ktory je 'navrchu'
		/// </summary>
		public XML_editor.TabPages.TextAreaTabPage SelectedTabPage
		{
			get 
			{
				if (this.tabControl.SelectedTab == null) 
				{
					return null;
				}
				return ((XML_editor.TabPages.TextAreaTabPage)this.tabControl.SelectedTab);
			}
		}

		// -------------------------------------------------------------------------
		/// <summary>
		/// Docking manazer, ktory sa bude starat o vsetky okna, ktore sa
		/// budu dat v aplikacii dokovat.
		/// </summary>
		public Crownwood.Magic.Docking.DockingManager DockingManager
		{
			get 
			{
				return this.dockingManager;
			}
		}

		// -------------------------------------------------------------------------
		/// <summary>
		/// Dokovaci panel, do ktoreho sa budu vypisovat vysledky operacii
		/// </summary>
		public OutputPanel OutputPanel
		{
			get 
			{
				OutputPanel panel = (this.dockingPanels["OutputPanel"] as OutputPanel);
				if (panel == null) 
				{
#if DEBUG
					System.Diagnostics.Debug.Write("Creating OutputPanel docking panel");
#endif
					panel = new OutputPanel(this, this.dockingManager);
					this.dockingPanels.Add("OutputPanel", panel);
#if DEBUG
					System.Diagnostics.Debug.WriteLine("- OK");
#endif
				} 
				else 
				{
#if DEBUG
					System.Diagnostics.Debug.WriteLine("Found OutputPanel docking panel - using it");
#endif
				}
				return panel;
			}
		}

		// -------------------------------------------------------------------------
		/// <summary>
		/// Dokovaci panel, do ktoreho ktory bude obsahovat TaskList
		/// </summary>
		public TaskListPanel TaskListPanel
		{
			get 
			{
				TaskListPanel panel = (this.dockingPanels["TaskListPanel"] as TaskListPanel);
				if (panel == null) 
				{
#if DEBUG
					System.Diagnostics.Debug.Write("Creating TaskListPanel docking panel");
#endif
					panel = new TaskListPanel(this, this.dockingManager);
					this.dockingPanels.Add("TaskListPanel", panel);
#if DEBUG
					System.Diagnostics.Debug.WriteLine("- OK");
#endif
				} 
				else 
				{
#if DEBUG
					System.Diagnostics.Debug.WriteLine("Found TaskListPanel docking panel - using it");
#endif
				}
				return panel;
			}
		}

		// -------------------------------------------------------------------------
		/// <summary>
		/// Kolekcia vsetkych TabPages v programe
		/// </summary>
		public Crownwood.Magic.Collections.TabPageCollection TabPages
		{
			get 
			{
				return this.tabControl.TabPages;
			}
		}

		#region Konstruktor a destruktor

		// -------------------------------------------------------------------------
		/// <summary>
		/// Inicializuje Hlavny formular aplikacie
		/// </summary>
		public MainForm()
		{
			//
			// Required for Windows Form Designer support
			//
			InitializeComponent();

			this.commonVisualStyle = Crownwood.Magic.Common.VisualStyle.IDE;

			//
			// Potrebne pre moj vlastny design support
			//
			MyInitializeComponent();

			this.OutputPanel.Clear();
			this.TaskListPanel.Clear();
			statusBar.SetMessage("Ready");
		}

		// -------------------------------------------------------------------------
		/// <summary>
		/// Clean up any resources being used.
		/// </summary>
		protected override void Dispose( bool disposing )
		{
			if( disposing )
			{
				if (components != null) 
				{
					components.Dispose();
				}
			}
			base.Dispose( disposing );
		}

		#endregion

		#region Windows Form Designer generated code
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{
			System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(MainForm));
			// 
			// MainForm
			// 
			this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
			this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
			this.ClientSize = new System.Drawing.Size(664, 437);
			this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
			this.Name = "MainForm";
			this.Text = "DINAMIC XML Editor";

		}
		#endregion

		#region Inicializacia komponentov a spol.
		// -------------------------------------------------------------------------
		/// <summary>
		/// Inicializuje komponenty - je to moj vlastny design support
		/// </summary>
		private void MyInitializeComponent()
		{
			// Temporarily suspends the layout logic for the control.
			this.SuspendLayout();
			
			this.Closing += new System.ComponentModel.CancelEventHandler(this.MainForm_Closing);

			// TabControl
			this.tabControl = new Crownwood.Magic.Controls.TabControl();
			this.tabControl.Appearance = Crownwood.Magic.Controls.TabControl.VisualAppearance.MultiDocument;
			this.tabControl.Dock = DockStyle.Fill;
			this.tabControl.Style = this.commonVisualStyle;
			this.tabControl.IDEPixelBorder = true;
			this.tabControl.HotTrack = true;
			this.tabControl.SelectionChanged += new EventHandler(OnSelectionChanged);
			this.tabControl.ClosePressed += new EventHandler(OnClosePressed);
			Controls.Add(this.tabControl);

			// Docking Manager
			this.dockingManager = new Crownwood.Magic.Docking.DockingManager(this, this.commonVisualStyle);
			this.dockingManager.InnerControl = this.tabControl;

			// Status bar
			this.statusBar = new XML_editor.MyComponents.SdStatusBar();
// HACK: ---			
			this.statusBar.SetInsertMode(true);
			this.Controls.Add( this.statusBar );

			this.dockingManager.OuterControl = this.statusBar;

			// Toolbar
			this.toolBar = new AxToolBar(this);
			this.Controls.Add(this.toolBar);

			// Hlavne menu
			this.topMenu = this.CreateMainMenu();
			this.Controls.Add( this.topMenu );

			// Resumes normal layout logic.
			this.ResumeLayout(true);

		}

		// -------------------------------------------------------------------------
		/// <summary>
		/// Vytvori <see cref="Crownwood.Magic.Menus.MenuControl"/>. Teda hlavne menu
		/// aplikacie.
		/// </summary>
		/// <returns><see cref="Crownwood.Magic.Menus.MenuControl"/> instanciu
		/// predstavujucu hlavne menu aplikacie</returns>
		private Crownwood.Magic.Menus.MenuControl CreateMainMenu()
		{
			Crownwood.Magic.Menus.MenuControl topMenu = new Crownwood.Magic.Menus.MenuControl();
			topMenu.Style = commonVisualStyle;
			topMenu.MultiLine = false;
			topMenu.Dock = DockStyle.Top;
				
			// Hlavny pruh
			MenuCommand topFile = new MenuCommand("&File");
			MenuCommand topEdit = new MenuCommand("&Edit");
			MenuCommand topView = new MenuCommand("&View");
			MenuCommand topFormat = new MenuCommand("&Format");
			MenuCommand topTools = new MenuCommand("&Tools");
			MenuCommand topAbout = new MenuCommand("&About");
			topMenu.MenuCommands.AddRange(new MenuCommand[]{topFile, topEdit, topView, topFormat, topTools, topAbout});

			// File
			MenuCommand fileNew  = new MenuCommand("&New", Shortcut.CtrlN, new EventHandler(this.Clicked_FileNew));
			fileNew.Image = IconProvider.LoadBitmap(this, "XML_editor.Icons.NewFile.png");
			MenuCommand fileOpen = new MenuCommand("&Open", Shortcut.CtrlO, new EventHandler(this.Clicked_FileOpen));
			fileOpen.Image = IconProvider.LoadBitmap(this, "XML_editor.Icons.OpenFile.png");
			MenuCommand fileClose = new MenuCommand("&Close", new EventHandler(this.Clicked_FileClose));
			MenuCommand fileCloseAll = new MenuCommand("&Close All", new EventHandler(this.Clicked_FileCloseAll));
			MenuCommand fileSep1 = new MenuCommand("-");
			MenuCommand fileSave = new MenuCommand("&Save", Shortcut.CtrlS, new EventHandler(this.Clicked_FileSave));
			fileSave.Image = IconProvider.LoadBitmap(this, "XML_editor.Icons.Save.png");
			MenuCommand fileSaveAs = new MenuCommand("Save &As...", new EventHandler(this.Clicked_FileSaveAs));
			MenuCommand fileSaveAll = new MenuCommand("Save A&ll Files", new EventHandler(this.Clicked_FileSaveAll));
			fileSaveAll.Image = IconProvider.LoadBitmap(this, "XML_editor.Icons.SaveAll.png");
			MenuCommand fileSep4 = new MenuCommand("-");
			MenuCommand fileExit  = new MenuCommand("E&xit", new EventHandler(this.Clicked_FileExit));
			fileExit.Image = IconProvider.LoadBitmap(this, "XML_editor.Icons.Exit.png");
			topFile.MenuCommands.AddRange(new MenuCommand[]{fileNew,fileOpen,fileClose,fileCloseAll,fileSep1,fileSave,fileSaveAs,fileSaveAll,fileSep4,fileExit});
			topFile.PopupStart += new CommandHandler(BeforeFilePopup);

			// Edit
			MenuCommand editUndo = new MenuCommand("&Undo", Shortcut.CtrlZ, new EventHandler(this.Clicked_EditUndo));
			editUndo.Image = IconProvider.LoadBitmap(this, "XML_editor.Icons.UndoIcon.png");
			MenuCommand editRedo = new MenuCommand("&Redo", Shortcut.CtrlShiftZ, new EventHandler(this.Clicked_EditRedo));
			editRedo.Image = IconProvider.LoadBitmap(this, "XML_editor.Icons.RedoIcon.png");
			MenuCommand fileSep2 = new MenuCommand("-");
			MenuCommand editCut = new MenuCommand("Cu&t", Shortcut.CtrlX, new EventHandler(this.Clicked_EditCut));
			editCut.Image = IconProvider.LoadBitmap(this, "XML_editor.Icons.Cut.png");
			MenuCommand editCopy = new MenuCommand("&Copy", Shortcut.CtrlC, new EventHandler(this.Clicked_EditCopy));
			editCopy.Image = IconProvider.LoadBitmap(this, "XML_editor.Icons.Copy.png");
			MenuCommand editPaste = new MenuCommand("&Paste", Shortcut.CtrlV, new EventHandler(this.Clicked_EditPaste));
			editPaste.Image = IconProvider.LoadBitmap(this, "XML_editor.Icons.Paste.png");
			MenuCommand fileSep3 = new MenuCommand("-");
			MenuCommand editSelectAll = new MenuCommand("Select &All", Shortcut.CtrlA, new EventHandler(this.Clicked_EditSelectAll));
			MenuCommand editFind = new MenuCommand("&Find...", Shortcut.AltF7, new EventHandler(this.Clicked_EditFind));
			editFind.Image = IconProvider.LoadBitmap(this, "XML_editor.Icons.find.png", true, new Point(0,0));
			MenuCommand editFindNext = new MenuCommand("Find &Next", Shortcut.F3, new EventHandler(this.Clicked_EditFindNext));
			topEdit.MenuCommands.AddRange(new MenuCommand[]{editUndo, editRedo, fileSep2, editCut, editCopy, editPaste, fileSep3, editSelectAll, fileSep3, editFind, editFindNext});
			topEdit.PopupStart += new CommandHandler(BeforeEditPopup);

			// View
			MenuCommand viewTaskList = new MenuCommand("Task &List", new EventHandler(this.Clicked_ViewTaskList));
			viewTaskList.Image = IconProvider.LoadBitmap(this, "XML_editor.Icons.TaskList.bmp", true, new Point(0,0));
			MenuCommand viewOutput = new MenuCommand("&Output", new EventHandler(this.Clicked_ViewOutput));

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区中文字幕| eeuss鲁一区二区三区| 东方aⅴ免费观看久久av| 色美美综合视频| 久久亚洲精品小早川怜子| 亚洲午夜在线观看视频在线| 国产成人午夜99999| 欧美日韩一级片网站| 国产欧美综合色| 老司机精品视频在线| 色激情天天射综合网| 国产日产欧产精品推荐色| 午夜亚洲国产au精品一区二区| 成人永久免费视频| 日韩欧美在线影院| 亚洲精品视频在线看| 国产成人精品午夜视频免费| 欧美一区二区私人影院日本| 亚洲另类色综合网站| 国产精品99久久久久久久女警| 欧美精品乱码久久久久久按摩| 综合婷婷亚洲小说| 成人国产视频在线观看| 精品久久一二三区| 日本aⅴ免费视频一区二区三区| 99麻豆久久久国产精品免费| 久久久久亚洲综合| 国产精品白丝av| 久久精品欧美日韩精品| 精品一区二区免费| 日韩久久精品一区| 久久国产乱子精品免费女| 欧美久久久久中文字幕| 亚洲最色的网站| 精品视频全国免费看| 亚洲麻豆国产自偷在线| 99久久精品国产观看| 最近中文字幕一区二区三区| 99久久精品国产一区二区三区| 中文字幕欧美日韩一区| 不卡的av电影在线观看| 国产精品久久国产精麻豆99网站| 成人一区二区三区视频在线观看 | 亚洲一区二区三区免费视频| 高清不卡在线观看| 中文字幕一区日韩精品欧美| jiyouzz国产精品久久| 成人免费在线播放视频| 91麻豆精东视频| 亚洲一区二区三区四区五区中文| 欧美主播一区二区三区| 日本视频在线一区| 欧美精品一区二区三区久久久| 韩国视频一区二区| 国产精品视频一区二区三区不卡| 99久久国产综合色|国产精品| 亚洲精品视频在线观看免费| 6080yy午夜一二三区久久| 麻豆成人综合网| 国产精品视频在线看| 欧美三级中文字幕| 久久国产精品72免费观看| 久久精品亚洲国产奇米99| 成人性生交大片免费看中文网站| 亚洲婷婷综合色高清在线| 欧美四级电影网| 寂寞少妇一区二区三区| 中文字幕亚洲一区二区av在线| 欧美性xxxxxxxx| 久久99国产精品麻豆| 国产精品理伦片| 欧美日韩精品一区二区三区蜜桃 | 99视频精品免费视频| 亚洲成av人片在线观看| 久久先锋资源网| 在线欧美日韩精品| 久久99在线观看| 亚洲欧美aⅴ...| 欧美大片拔萝卜| 色综合一个色综合| www.成人在线| 久久国产精品第一页| 国产精品国产三级国产普通话99| 欧美亚洲自拍偷拍| 国内精品免费**视频| 一区二区在线观看av| 久久色在线观看| 91激情在线视频| 国产一区二区剧情av在线| 亚洲一区二区三区美女| 国产目拍亚洲精品99久久精品| 欧美日韩极品在线观看一区| 成人v精品蜜桃久久一区| 日本欧美久久久久免费播放网| 国产精品第四页| 久久久久99精品国产片| 欧美一级欧美三级在线观看| av爱爱亚洲一区| 国产福利一区二区三区| 日本中文在线一区| 一区二区成人在线观看| 国产精品欧美一级免费| 久久久精品影视| 久久女同性恋中文字幕| 日韩欧美成人午夜| 欧美日韩一区久久| 色综合色狠狠综合色| 99精品视频一区二区三区| 国产激情精品久久久第一区二区| 久久精品国产99久久6| 秋霞国产午夜精品免费视频| 午夜精品福利视频网站| 亚洲一区在线电影| 亚洲永久免费视频| 亚洲男人的天堂在线aⅴ视频| 亚洲视频狠狠干| 亚洲欧美偷拍三级| 一区二区在线观看免费视频播放| 亚洲品质自拍视频| 亚洲在线中文字幕| 午夜精品成人在线| 日韩和的一区二区| 久久精品国产精品亚洲精品| 秋霞影院一区二区| 国内精品不卡在线| 国产成人自拍在线| 成人黄色电影在线| 99久久99久久免费精品蜜臀| 色国产精品一区在线观看| 色综合天天综合给合国产| 日本久久精品电影| 欧美日韩一区二区在线观看视频 | 精品国产三级a在线观看| 精品裸体舞一区二区三区| 国产亚洲精品7777| 中文字幕在线观看一区| 亚洲免费观看高清完整版在线 | 欧美三级乱人伦电影| 欧美日韩国产一级片| 欧美大片一区二区| 国产精品狼人久久影院观看方式| 1区2区3区精品视频| 亚洲国产精品精华液网站| 麻豆精品一二三| 成人精品免费网站| 欧美亚洲尤物久久| 2021久久国产精品不只是精品| 中文字幕乱码久久午夜不卡| 亚洲一区二区三区中文字幕| 免费久久99精品国产| 高清不卡一二三区| 欧美日韩国产天堂| 久久久亚洲午夜电影| 亚洲一区二区欧美日韩 | 亚洲午夜三级在线| 青青青爽久久午夜综合久久午夜| 国产成人综合自拍| 欧美体内she精视频| 337p粉嫩大胆噜噜噜噜噜91av| 亚洲欧洲成人自拍| 蜜桃av一区二区三区| 99精品视频一区| 欧美变态tickling挠脚心| 亚洲日本在线天堂| 久久不见久久见免费视频1| 91在线视频18| 久久免费电影网| 天天综合网 天天综合色| 成人免费毛片app| 日韩欧美激情一区| 亚洲资源中文字幕| 不卡大黄网站免费看| 精品国产在天天线2019| 亚洲一区二区三区自拍| 成熟亚洲日本毛茸茸凸凹| 日韩精品一区二区三区在线播放 | 91女神在线视频| 精品国产乱码久久久久久1区2区 | 91精品国产综合久久国产大片| 亚洲视频中文字幕| 国产一区二区三区四区五区入口 | 日本一区二区综合亚洲| 午夜精品一区在线观看| 99久精品国产| 国产欧美精品一区| 激情文学综合丁香| 日韩精品一区二区三区老鸭窝| 亚洲国产精品自拍| 91在线看国产| 中文字幕一区二区三区色视频| 久久成人麻豆午夜电影| 欧美一级免费观看| 日韩综合小视频| 欧美猛男超大videosgay| 亚洲综合色噜噜狠狠| 91福利国产精品| 亚洲激情一二三区| 色一情一乱一乱一91av| 亚洲精品中文字幕乱码三区| 91美女在线看|