public UniverseOutputManager(Universe universe, IUniverseOutputUIElement universeOutputUIElement, double pixelsWidth, double pixelsHeight)
 {
     this.universe = universe;
     this.universeOutputUIElement = universeOutputUIElement;
     renderManagerMainField       = new RenderManagerMainField(UniverseProperty.Width, UniverseProperty.Height, pixelsWidth, pixelsHeight);
     renderManagerInfoText        = new RenderManagerInfoText();
     universeOutputUIElement.ResolutionToReset      = new Size(pixelsWidth, pixelsHeight);
     universeOutputUIElement.WorkDelay              = PauseBetweenRender;
     universeOutputUIElement.CountOfCellsToGenerate = 10;
     StartWork();
     InitializeEvents();
 }
 public void Dispose()
 {
     if (!IsDisposed())
     {
         universeOutputUIElement.ImageUniverseField.MouseDown -= mouseDownOnFieldImage;
         StopWork();
         universe = null;
         renderManagerMainField  = null;
         renderManagerInfoText   = null;
         universeOutputUIElement = null;
         disposed = true;
     }
 }