Hey there,
This is probably user error, but recently the Theme Editor is crashing randomly, and when I export a theme and load it into ATVO to test, it will often fail to load the first time, and then load properly if I just click the Load button again.
Some other strange behaviours are that sometimes when I load my current theme into the Theme Editor, some folders might be empty, for example, the Widgets folder, or Buttons folder .. and that seems to correspond with the error message I get (the editor will crash when I edit a button for example, and then that folder goes empty, and might even be empty when I reload the .atvotheme file)
Details:
- Latest Alpha version (as of March 21, 2021)
- Modifying my own theme based on the ATVO theme created by Nick
- I've modified lots of the scripts, and copied and renamed lots of the widgets, so maybe I've created issues by doing that?
- ATVO Telemetry Recorder is running while loading/reloading theme editor and theme into ATVO (this tool is awesome! thanks for this! should i close it every time i reload a theme though?)
Log file from the most recent Theme Editor Crash:
Error: 3/21/2021 8:34:53 PM (UTC)
ATVO version: 1.37.2.0
Themes SDK version: 1.33.0.0
Theme version: none
Unhandled exception
System.NullReferenceException: Object reference not set to an instance of an object.
at ATVO.ThemeEditor.Utils.TreeViewUtils.ExpandAndContinue(TreeViewItem root, Object item, Action`1 action) in D:\Users\Nick\Documents\Programming\ATVO\Appgineer.in-TV-Overlay-for-iRacing\ATVO.ThemeEditor\Utils\TreeViewUtils.cs:line 0
at System.Windows.Controls.ItemContainerGenerator.SetStatus(GeneratorStatus value)
at System.Windows.Controls.ItemContainerGenerator.System.Windows.Controls.Primitives.IItemContainerGenerator.StartAt(GeneratorPosition position, GeneratorDirection direction, Boolean allowStartAtRealizedItem)
at System.Windows.Controls.Panel.GenerateChildren()
at System.Windows.Controls.Panel.EnsureGenerator()
at System.Windows.Controls.Panel.get_InternalChildren()
at System.Windows.Controls.StackPanel.StackMeasureHelper(IStackMeasure measureElement, IStackMeasureScrollData scrollData, Size constraint)
at System.Windows.Controls.StackPanel.MeasureOverride(Size constraint)
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
at System.Windows.Controls.ItemsPresenter.MeasureOverride(Size constraint)
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at System.Windows.Controls.StackPanel.StackMeasureHelper(IStackMeasure measureElement, IStackMeasureScrollData scrollData, Size constraint)
at System.Windows.Controls.StackPanel.MeasureOverride(Size constraint)
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at System.Windows.Controls.Control.MeasureOverride(Size constraint)
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at System.Windows.ContextLayoutManager.UpdateLayout()
at System.Windows.ContextLayoutManager.UpdateLayoutCallback(Object arg)
at System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
at System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)
at System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget)
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)
Thanks!