Stetic.WidgetDesigner.OnProjectBackendChanged C# (CSharp) Method

OnProjectBackendChanged() private method

private OnProjectBackendChanged ( ApplicationBackend oldBackend ) : void
oldBackend ApplicationBackend
return void
        void OnProjectBackendChanged(ApplicationBackend oldBackend)
        {
            if (++reloadCount == 2) {
                object sessionData = null;

                if (oldBackend != null && !autoCommitChanges) {
                    sessionData = session.SaveState ();
                    session.DestroyWrapperWidgetPlug ();
                }

                // Don't dispose the session here, since it will dispose
                // the underlying project, and we can't do it because
                // it may need to process the OnBackendChanging event
                // as well.

                CreateSession ();

                if (sessionData != null && session != null)
                    session.RestoreState (sessionData);

                base.OnBackendChanged (oldBackend);
                NotifyRootWidgetChanged ();
            }
        }