in case it is useful, been trying to make a menu for my plugin, and I get the double menu in v8 as well:
bella_rhino.rui (21.7 KB)
the .rui is being auto-loaded from the plugin directory and does not even show up here at all:
running the Menus command and trying to choose my .rui from the dropdown, I get this exception:
System.ArgumentException: An item with the same key has already been added.
Command: Menus
Exception caught during RunCommand
System.ArgumentException: An item with the same key has already been added. Key: c7b8a775-7e8d-4da4-9ed7-6100fae16180
at System.Collections.Generic.Dictionary`2.TryInsert(TKey key, TValue value, InsertionBehavior behavior)
at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
at Rhino.UI.Internal.TabPanels.MenuEditor.MenuEditorViewModel.LoadFile(ToolBarFileController file)
at Rhino.UI.Internal.TabPanels.MenuEditor.RhinoMenuEditorPanel.<CreateFileDropDown>b__3_0(Object s, EventArgs e)
at Eto.Forms.ListControl.OnSelectedValueChanged(EventArgs e) in D:\BuildAgent\work\dujour\src4\DotNetSDK\Eto\src\Eto\Forms\Controls\ListControl.cs:line 213
at Eto.Forms.ListControl.OnSelectedIndexChanged(EventArgs e) in D:\BuildAgent\work\dujour\src4\DotNetSDK\Eto\src\Eto\Forms\Controls\ListControl.cs:line 179
at Eto.Forms.ListControl.Callback.OnSelectedIndexChanged(ListControl widget, EventArgs e) in D:\BuildAgent\work\dujour\src4\DotNetSDK\Eto\src\Eto\Forms\Controls\ListControl.cs:line 449
at Eto.Wpf.Forms.Controls.DropDownHandler`3.<.ctor>b__1_0(Object sender, SelectionChangedEventArgs e) in D:\BuildAgent\work\dujour\src4\DotNetSDK\Eto\src\Eto.Wpf\Forms\Controls\DropDownHandler.cs:line 95
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.Controls.ComboBox.OnSelectionChanged(SelectionChangedEventArgs e)
at System.Windows.Controls.Primitives.Selector.SelectionChanger.SelectJustThisItem(ItemInfo info, Boolean assumeInItemsCollection)
at System.Windows.Controls.ComboBox.NotifyComboBoxItemMouseUp(ComboBoxItem comboBoxItem)
at System.Windows.Controls.ComboBoxItem.OnMouseLeftButtonUp(MouseButtonEventArgs e)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
at System.Windows.Window.ShowHelper(Object booleanBox)
at System.Windows.Window.Show()
at System.Windows.Window.ShowDialog()
at Eto.Wpf.Forms.DialogHandler.ShowModal() in D:\BuildAgent\work\dujour\src4\DotNetSDK\Eto\src\Eto.Wpf\Forms\DialogHandler.cs:line 68
at Eto.Forms.Dialog.ShowModal() in D:\BuildAgent\work\dujour\src4\DotNetSDK\Eto\src\Eto\Forms\Dialog.cs:line 221
at Eto.Forms.Dialog.ShowModal(Control owner) in D:\BuildAgent\work\dujour\src4\DotNetSDK\Eto\src\Eto\Forms\Dialog.cs:line 203
at Eto.Forms.Dialog`1.ShowModal(Control owner) in D:\BuildAgent\work\dujour\src4\DotNetSDK\Eto\src\Eto\Forms\Dialog.cs:line 83
at Rhino.UI.Internal.TabPanels.MenuEditor.RhinoMenuEditorPanel.Show(Guid toolBarFileId, Window owner)
at Commands.Commands.TabPanels.MenusCommand.RunCommand(RhinoDoc doc, RunMode mode)
at Rhino.Commands.Command.OnRunCommand(Int32 commandSerialNumber, UInt32 docSerialNumber, Int32 mode)
this is all on windows 8.1.23325.13001; on macos 8.2.23346.13002 it actually seems to behave properly, from what I can tell so far