/// <summary> /// Disposes the control. /// </summary> protected override void Dispose( bool disposing ) { if( mGraphicsDeviceService != null ) { mGraphicsDeviceService.Release( disposing ); mGraphicsDeviceService = null; } base.Dispose( disposing ); }
/// <summary> /// Initializes the control. /// </summary> protected override void OnCreateControl() { // Don't initialize the graphics device if we are running in the designer. if( !DesignMode ) { mGraphicsDeviceService = GraphicsDeviceService.AddRef( Handle, ClientSize.Width, ClientSize.Height ); // Register the service, so components like ContentManager can find it. mServices.AddService<IGraphicsDeviceService>( mGraphicsDeviceService ); // Give derived classes a chance to initialize themselves. Initialize(); } base.OnCreateControl(); }
/// <summary> /// Initializes the control. /// </summary> protected override void OnCreateControl() { // Don't initialize the graphics device if we are running in the designer. if (!DesignMode) { mGraphicsDeviceService = GraphicsDeviceService.AddRef(Handle, ClientSize.Width, ClientSize.Height); // Register the service, so components like ContentManager can find it. mServices.AddService <IGraphicsDeviceService>(mGraphicsDeviceService); // Give derived classes a chance to initialize themselves. Initialize(); } base.OnCreateControl(); }
/// <summary> /// Gets a reference to the singleton instance. /// </summary> public static GraphicsDeviceService AddRef( IntPtr windowHandle, int width, int height ) { if( Interlocked.Increment( ref referenceCount ) == 1 ) singletonInstance = new GraphicsDeviceService( windowHandle, width, height ); return singletonInstance; }