public ModulesHandler() { ModuleTableObj = new Hashtable(); MediaPlayerObj = null; WeatherForecastObj = null; GalleryObj = null; }
public void OpenModule(Modules module) { if (IsRunning(module)) { GideonBase.SynObj.SpeakAsync("This application is already running !"); return; } switch (module) { case Modules.MediaPlayer: MediaPlayerObj = new MediaPlayerUI(); ModuleTableObj.Add(module, MediaPlayerObj); MediaPlayerObj.Show(); //MediaPlayerObj.Visibility = System.Windows.Visibility.Hidden; break; case Modules.WeatherForecast: WeatherForecastObj = new WeatherForecastUI(); ModuleTableObj.Add(module, WeatherForecastObj); WeatherForecastObj.Show(); break; case Modules.News: NewsObj = new NewsUI(); ModuleTableObj.Add(module, NewsObj); NewsObj.Show(); break; case Modules.Gallery: GalleryObj = new GalleryUserInterface(); ModuleTableObj.Add(module, GalleryObj); GalleryObj.Show(); break; } }
public void CloseModule(Modules module) { if (!IsRunning(module)) { GideonBase.SynObj.SpeakAsync("This application is already close or not in running state !"); return; } switch (module) { case Modules.MediaPlayer: MediaPlayerObj.Close(); MediaPlayerObj = null; break; case Modules.WeatherForecast: WeatherForecastObj.Close(); WeatherForecastObj = null; break; case Modules.News: NewsObj.Close(); NewsObj = null; break; case Modules.Gallery: GalleryObj.Close(); GalleryObj = null; break; } GC.SuppressFinalize(ModuleTableObj[module]); GC.Collect(); ModuleTableObj[module] = null; ModuleTableObj.Remove(module); }