Index: src/Deltares.DSoilModel.Forms/DSoilModelMapEditor.cs =================================================================== diff -u -r84 -r85 --- src/Deltares.DSoilModel.Forms/DSoilModelMapEditor.cs (.../DSoilModelMapEditor.cs) (revision 84) +++ src/Deltares.DSoilModel.Forms/DSoilModelMapEditor.cs (.../DSoilModelMapEditor.cs) (revision 85) @@ -67,27 +67,16 @@ // split segment button & popup menu splitSegmentButton = CreateButton(Resources.SplitSegment); BindSupport.Bind(panel, splitSegmentButton, me => me.SplitSegmentLocation()); - - InitializeContextMenu(); + ConfigureContextMenu(); + BindSupport.Assign(panel, this); DataEventPublisher.OnSelectionChanged += DataEventPublisher_OnSelectionChanged; DataEventPublisher.OnDataListModified += DataEventPublisher_OnDataLisModified; DataEventPublisher.OnAfterChange += DataEventPublisher_OnAfterChange; } - private void InitializeContextMenu() - { - var splitSegmentMenuItem = new ToolStripMenuItem("Split segment"); - mapEditor.ContextMenuStrip.Items.Add(splitSegmentMenuItem); - BindSupport.Bind(panel, splitSegmentMenuItem, ge => ge.SplitSegment()); - - var assignToSegmentMenuItem = new ToolStripMenuItem("Link to nearest segment"); - mapEditor.ContextMenuStrip.Items.Add(assignToSegmentMenuItem); - BindSupport.Bind(panel, assignToSegmentMenuItem, ge => ge.LinkToNearestSegment()); - } - /// /// Gets or sets the project (setting: Adding Layers from Project to MapEditor). /// @@ -267,6 +256,28 @@ return returnPoint; } + public void ConfigureMainMenu(MainForm mainForm) + { + var linkButtonItem = new BarButtonItem(); + mainForm.EditMenu.ItemLinks.Add(linkButtonItem); + BindSupport.Bind(panel, linkButtonItem, ge => ge.LinkToNearestSegment()); + + var splitButtonItem = new BarButtonItem(); + mainForm.EditMenu.ItemLinks.Add(splitButtonItem); + BindSupport.Bind(panel, splitButtonItem, ge => ge.SplitSegment()); + } + + private void ConfigureContextMenu() + { + var splitSegmentMenuItem = new ToolStripMenuItem("Split segment"); + mapEditor.ContextMenuStrip.Items.Add(splitSegmentMenuItem); + BindSupport.Bind(panel, splitSegmentMenuItem, ge => ge.SplitSegment()); + + var assignToSegmentMenuItem = new ToolStripMenuItem("Link to nearest segment"); + mapEditor.ContextMenuStrip.Items.Add(assignToSegmentMenuItem); + BindSupport.Bind(panel, assignToSegmentMenuItem, ge => ge.LinkToNearestSegment()); + } + /// /// Complete split segment operation (after setting a split location) ///