string m_filename = string.Empty; //文件名 /// <summary> /// 文件初始化 /// </summary> /// <param name="filename"></param> public DocumentForm(string filename) { InitializeComponent(); Text = "<New Document>"; m_data = new DataModel(); if (filename.Length > 0 && File.Exists(filename) && m_data.Load(filename)) { Text = filename; m_filename = filename; } m_canvas = new CanvasCtrl(this, m_data); m_canvas.Dock = DockStyle.Fill; Controls.Add(m_canvas); m_canvas.SetCenter(new UnitPoint(0, 0)); m_canvas.RunningSnaps = new Type[] { typeof(VertextSnapPoint), typeof(MidpointSnapPoint), typeof(IntersectSnapPoint), typeof(QuadrantSnapPoint), typeof(CenterSnapPoint), typeof(DivisionSnapPoint), }; m_canvas.AddQuickSnapType(Keys.N, typeof(NearestSnapPoint)); m_canvas.AddQuickSnapType(Keys.M, typeof(MidpointSnapPoint)); m_canvas.AddQuickSnapType(Keys.I, typeof(IntersectSnapPoint)); m_canvas.AddQuickSnapType(Keys.V, typeof(VertextSnapPoint)); m_canvas.AddQuickSnapType(Keys.P, typeof(PerpendicularSnapPoint)); m_canvas.AddQuickSnapType(Keys.Q, typeof(QuadrantSnapPoint)); m_canvas.AddQuickSnapType(Keys.C, typeof(CenterSnapPoint)); m_canvas.AddQuickSnapType(Keys.T, typeof(TangentSnapPoint)); m_canvas.AddQuickSnapType(Keys.D, typeof(DivisionSnapPoint)); m_canvas.KeyDown += new KeyEventHandler(OnCanvasKeyDown); SetupMenuItems(); SetupDrawTools(); SetupLayerToolstrip(); SetupEditTools(); UpdateLayerUI(); MenuStrip menuitem = new MenuStrip(); menuitem.Items.Add(m_menuItems.GetMenuStrip("edit")); menuitem.Items.Add(m_menuItems.GetMenuStrip("draw")); menuitem.Visible = false; Controls.Add(menuitem); this.MainMenuStrip = menuitem; }
void SetupToolbars() { MenuItem mmitem = m_menuItems.GetItem("New"); mmitem.Text = "&New"; mmitem.Image = MenuImages16x16.Image(MenuImages16x16.eIndexes.NewDocument); mmitem.Click += new EventHandler(OnFileNew); mmitem.ToolTipText = "New document"; mmitem = m_menuItems.GetItem("Open"); mmitem.Text = "&Open"; mmitem.Image = MenuImages16x16.Image(MenuImages16x16.eIndexes.OpenDocument); mmitem.Click += new EventHandler(OnFileOpen); mmitem.ToolTipText = "Open document"; mmitem = m_menuItems.GetItem("Save"); mmitem.Text = "&Save"; mmitem.Image = MenuImages16x16.Image(MenuImages16x16.eIndexes.SaveDocument); mmitem.Click += new EventHandler(OnFileSave); mmitem.ToolTipText = "Save document"; mmitem = m_menuItems.GetItem("SaveAs"); mmitem.Text = "Save &As"; mmitem.Click += new EventHandler(OnFileSaveAs); mmitem = m_menuItems.GetItem("Exit"); mmitem.Text = "E&xit"; mmitem.Click += new EventHandler(OnFileExit); ToolStrip strip = m_menuItems.GetStrip("file"); strip.Items.Add(m_menuItems.GetItem("New").CreateButton()); strip.Items.Add(m_menuItems.GetItem("Open").CreateButton()); strip.Items.Add(m_menuItems.GetItem("Save").CreateButton()); ToolStripMenuItem menuitem = m_menuItems.GetMenuStrip("file"); menuitem.Text = "&File"; menuitem.DropDownItems.Add(m_menuItems.GetItem("New").CreateMenuItem()); menuitem.DropDownItems.Add(m_menuItems.GetItem("Open").CreateMenuItem()); menuitem.DropDownItems.Add(m_menuItems.GetItem("Save").CreateMenuItem()); menuitem.DropDownItems.Add(m_menuItems.GetItem("SaveAs").CreateMenuItem()); menuitem.DropDownItems.Add(new ToolStripSeparator()); menuitem.DropDownItems.Add(m_menuItems.GetItem("Exit").CreateMenuItem()); m_mainMenu.Items.Insert(0, menuitem); ToolStripPanel panel = m_menuItems.GetStripPanel(DockStyle.Top); panel.Join(m_menuItems.GetStrip("layer")); panel.Join(m_menuItems.GetStrip("draw")); panel.Join(m_menuItems.GetStrip("edit")); panel.Join(m_menuItems.GetStrip("file")); panel.Join(m_mainMenu); panel = m_menuItems.GetStripPanel(DockStyle.Left); panel.Join(m_menuItems.GetStrip("modify")); panel = m_menuItems.GetStripPanel(DockStyle.Bottom); panel.Join(m_menuItems.GetStatusStrip("status")); }
/// <summary> /// 安装工具栏(上/左/下) /// </summary> void SetupToolbars() { #region "文件"下拉菜单项通过MenuItemManager初始化 MenuItem mmitem = m_menuItems.GetItem("New"); //mmitem.Text = "&New"; mmitem.Text = "&新建"; mmitem.Image = MenuImages16x16.Image(MenuImages16x16.eIndexes.NewDocument); mmitem.Click += new EventHandler(OnFileNew); mmitem.ToolTipText = "New document"; mmitem = m_menuItems.GetItem("Open"); //mmitem.Text = "&Open"; mmitem.Text = "&打开"; mmitem.Image = MenuImages16x16.Image(MenuImages16x16.eIndexes.OpenDocument); mmitem.Click += new EventHandler(OnFileOpen); mmitem.ToolTipText = "Open document"; mmitem = m_menuItems.GetItem("Save"); //mmitem.Text = "&Save"; mmitem.Text = "&保存"; mmitem.Image = MenuImages16x16.Image(MenuImages16x16.eIndexes.SaveDocument); mmitem.Click += new EventHandler(OnFileSave); mmitem.ToolTipText = "Save document"; mmitem = m_menuItems.GetItem("SaveAs"); //mmitem.Text = "Save &As"; mmitem.Text = "另存为"; mmitem.Click += new EventHandler(OnFileSaveAs); mmitem = m_menuItems.GetItem("Exit"); //mmitem.Text = "E&xit"; mmitem.Text = "退出"; mmitem.Click += new EventHandler(OnFileExit); #endregion #region "文件"图片列工具栏构造 ToolStrip strip = m_menuItems.GetStrip("file"); strip.Items.Add(m_menuItems.GetItem("New").CreateButton()); strip.Items.Add(m_menuItems.GetItem("Open").CreateButton()); strip.Items.Add(m_menuItems.GetItem("Save").CreateButton()); #endregion #region "文件"下拉菜单栏添加控件 ToolStripMenuItem menuitem = m_menuItems.GetMenuStrip("file"); menuitem.Text = "&File"; menuitem.Text = "文件"; menuitem.DropDownItems.Add(m_menuItems.GetItem("New").CreateMenuItem()); menuitem.DropDownItems.Add(m_menuItems.GetItem("Open").CreateMenuItem()); menuitem.DropDownItems.Add(m_menuItems.GetItem("Save").CreateMenuItem()); menuitem.DropDownItems.Add(m_menuItems.GetItem("SaveAs").CreateMenuItem()); menuitem.DropDownItems.Add(new ToolStripSeparator()); menuitem.DropDownItems.Add(m_menuItems.GetItem("Exit").CreateMenuItem()); m_mainMenu.Items.Insert(0, menuitem); #endregion #region 左下菜单栏/状态栏设置控件 ToolStripPanel panel = m_menuItems.GetStripPanel(DockStyle.Top); panel.Join(m_menuItems.GetStrip("layer")); panel.Join(m_menuItems.GetStrip("draw")); panel.Join(m_menuItems.GetStrip("edit")); panel.Join(m_menuItems.GetStrip("file")); panel.Join(m_mainMenu); //主菜单加入面板 panel = m_menuItems.GetStripPanel(DockStyle.Left); panel.Join(m_menuItems.GetStrip("modify")); //左侧修改栏 panel = m_menuItems.GetStripPanel(DockStyle.Bottom); panel.Join(m_menuItems.GetStatusStrip("status")); //底部状态栏 #endregion }