Exemplo n.º 1
0
        /// <summary>
        /// Create local resources then call <see cref="OnLoadContent()"/> for inheriting objects.
        /// </summary>
        private void LoadContent()
        {
            AddLayer(new DebugLayer(this), 9999);

            _logLayer = new ScreenLogLayer(this);
            AddLayer(_logLayer, 9998);

            _brushes = new BrushContainer(this);
            _fonts   = new TextFormatContainer(this);
            OnLoadContent();

            lock (Layers)
            {
                foreach (var layer in Layers)
                {
                    layer.LoadContent();
                }
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Unloads local content then calls <see cref="OnUnloadContent()"/> for inheriting controls.
        /// </summary>
        protected void UnloadContent()
        {
            _brushes.Cleanup();
            _brushes = null;
            _fonts.Cleanup();
            _fonts = null;

            foreach (var layer in Layers)
            {
                layer.UnloadContent();

                var disposableLayer = layer as IDisposable;
                if (disposableLayer != null)
                {
                    disposableLayer.Dispose();
                }
            }
            Layers.Clear();

            OnUnloadContent();
        }
Exemplo n.º 3
0
        /// <summary>
        /// Unload content and cleanup unmanaged resources.
        /// </summary>
        public override void UnloadContent()
        {
            base.UnloadContent();
            brushes.Cleanup();
            brushes = null;

            var regionProxies = regions.Values.ToList();

            regions.Clear();

            foreach (var r in regionProxies)
            {
                if (!r.IsDisposed)
                {
                    r.Dispose();
                }
            }

            if (state != null && !state.IsDisposed)
            {
                state.Dispose();
                state = null;
            }
        }
Exemplo n.º 4
0
 /// <summary>
 /// Load Content and initialize unmanaged resources.
 /// </summary>
 public override void LoadContent()
 {
     base.LoadContent();
     brushes = new BrushContainer(Surface);
 }