1212using System . Diagnostics ;
1313using System . IO ;
1414using System . Linq ;
15- using System . Runtime ;
1615using System . Runtime . CompilerServices ;
1716using System . Text . Json . Serialization ;
1817using System . Threading ;
@@ -451,22 +450,22 @@ private async Task AddStableDiffusionModel()
451450 var addModelDialog = _dialogService . GetDialog < AddModelDialog > ( ) ;
452451 if ( addModelDialog . ShowDialog ( ) )
453452 {
454- var modelTemplate = addModelDialog . ModelTemplate ;
455- if ( modelTemplate == null )
456- return ; // TODO: Error
457-
458- await InstallStableDiffusionModel ( modelTemplate , addModelDialog . ModelSetResult ) ;
453+ await InstallStableDiffusionModel ( addModelDialog . ModelTemplate , addModelDialog . ModelSetResult ) ;
459454 }
460455 }
461456
462457 private async Task RemoveStableDiffusionModel ( ModelTemplateViewModel modelTemplate )
463458 {
464459 if ( ! modelTemplate . IsUserTemplate )
465- return ; // TODO: Cant remove Templates
466- if ( modelTemplate . Category != ModelTemplateCategory . StableDiffusion )
467- return ; // TODO: Error
460+ return ; // Cant remove Templates
468461
469462 var modelSet = UISettings . StableDiffusionModelSets . FirstOrDefault ( x => x . Name == modelTemplate . Name ) ;
463+ if ( modelSet . IsLoaded )
464+ {
465+ MessageBox . Show ( "Please unload model before uninstalling" , "Model In Use" , MessageBoxButton . OK , MessageBoxImage . Warning ) ;
466+ return ;
467+ }
468+
470469 UISettings . StableDiffusionModelSets . Remove ( modelSet ) ;
471470 UISettings . Templates . Remove ( modelTemplate ) ;
472471 await SaveConfigurationFile ( ) ;
@@ -516,21 +515,27 @@ private async Task InstallStableDiffusionModel(ModelTemplateViewModel modelTempl
516515
517516 private async Task UninstallStableDiffusionModel ( ModelTemplateViewModel modelTemplate )
518517 {
519- if ( modelTemplate . Category != ModelTemplateCategory . StableDiffusion )
520- return ; // TODO: Error
521-
522518 var modelSet = UISettings . StableDiffusionModelSets . FirstOrDefault ( x => x . Name == modelTemplate . Name ) ;
523- UISettings . StableDiffusionModelSets . Remove ( modelSet ) ;
519+ if ( modelSet . IsLoaded )
520+ {
521+ MessageBox . Show ( "Please unload model before uninstalling" , "Model In Use" , MessageBoxButton . OK , MessageBoxImage . Warning ) ;
522+ return ;
523+ }
524524
525+ UISettings . StableDiffusionModelSets . Remove ( modelSet ) ;
525526 modelTemplate . IsInstalled = false ;
526527 await SaveConfigurationFile ( ) ;
527528 }
528529
529530 private async Task UpdateStableDiffusionModel ( ModelTemplateViewModel modelTemplate )
530531 {
531532 var stableDiffusionModel = UISettings . StableDiffusionModelSets . FirstOrDefault ( x => x . Name == modelTemplate . Name ) ;
532- if ( stableDiffusionModel == null )
533- return ; // TODO: Error
533+ if ( stableDiffusionModel . IsLoaded )
534+ {
535+ MessageBox . Show ( "Please unload model before updating" , "Model In Use" , MessageBoxButton . OK , MessageBoxImage . Warning ) ;
536+ return ;
537+ }
538+
534539
535540 var updateModelDialog = _dialogService . GetDialog < UpdateModelSettingsDialog > ( ) ;
536541 if ( updateModelDialog . ShowDialog ( stableDiffusionModel . ModelSet ) )
@@ -548,8 +553,11 @@ private async Task UpdateStableDiffusionModel(ModelTemplateViewModel modelTempla
548553 private async Task UpdateStableDiffusionModelAdvanced ( ModelTemplateViewModel modelTemplate )
549554 {
550555 var stableDiffusionModel = UISettings . StableDiffusionModelSets . FirstOrDefault ( x => x . Name == modelTemplate . Name ) ;
551- if ( stableDiffusionModel == null )
552- return ; // TODO: Error
556+ if ( stableDiffusionModel . IsLoaded )
557+ {
558+ MessageBox . Show ( "Please unload model before updating" , "Model In Use" , MessageBoxButton . OK , MessageBoxImage . Warning ) ;
559+ return ;
560+ }
553561
554562 var updateModelDialog = _dialogService . GetDialog < UpdateModelDialog > ( ) ;
555563 if ( updateModelDialog . ShowDialog ( stableDiffusionModel . ModelSet ) )
@@ -595,19 +603,19 @@ private async Task AddUpscaleModel()
595603 var addModelDialog = _dialogService . GetDialog < AddUpscaleModelDialog > ( ) ;
596604 if ( addModelDialog . ShowDialog ( ) )
597605 {
598- var modelTemplate = addModelDialog . ModelTemplate ;
599- if ( modelTemplate == null )
600- return ; // TODO: Error
601-
602- await InstallUpscaleModel ( modelTemplate , addModelDialog . ModelSetResult ) ;
606+ await InstallUpscaleModel ( addModelDialog . ModelTemplate , addModelDialog . ModelSetResult ) ;
603607 }
604608 }
605609
606610 private async Task UpdateUpscaleModel ( ModelTemplateViewModel modelTemplate )
607611 {
608612 var upscaleModel = UISettings . UpscaleModelSets . FirstOrDefault ( x => x . Name == modelTemplate . Name ) ;
609- if ( upscaleModel == null )
610- return ; // TODO: Error
613+ if ( upscaleModel . IsLoaded )
614+ {
615+ MessageBox . Show ( "Please unload model before updating" , "Model In Use" , MessageBoxButton . OK , MessageBoxImage . Warning ) ;
616+ return ;
617+ }
618+
611619
612620 var updateModelDialog = _dialogService . GetDialog < UpdateUpscaleModelSettingsDialog > ( ) ;
613621 if ( updateModelDialog . ShowDialog ( upscaleModel . ModelSet ) )
@@ -624,8 +632,11 @@ private async Task UpdateUpscaleModel(ModelTemplateViewModel modelTemplate)
624632 private async Task UpdateUpscaleModelAdvanced ( ModelTemplateViewModel modelTemplate )
625633 {
626634 var upscaleModel = UISettings . UpscaleModelSets . FirstOrDefault ( x => x . Name == modelTemplate . Name ) ;
627- if ( upscaleModel == null )
628- return ; // TODO: Error
635+ if ( upscaleModel . IsLoaded )
636+ {
637+ MessageBox . Show ( "Please unload model before updating" , "Model In Use" , MessageBoxButton . OK , MessageBoxImage . Warning ) ;
638+ return ;
639+ }
629640
630641 var updateModelDialog = _dialogService . GetDialog < UpdateUpscaleModelDialog > ( ) ;
631642 if ( updateModelDialog . ShowDialog ( upscaleModel . ModelSet ) )
@@ -642,11 +653,15 @@ private async Task UpdateUpscaleModelAdvanced(ModelTemplateViewModel modelTempla
642653 private async Task RemoveUpscaleModel ( ModelTemplateViewModel modelTemplate )
643654 {
644655 if ( ! modelTemplate . IsUserTemplate )
645- return ; // TODO: Cant remove Templates
646- if ( modelTemplate . Category != ModelTemplateCategory . Upscaler )
647- return ; // TODO: Error
648-
656+ return ; // Cant remove Templates
657+
649658 var modelSet = UISettings . UpscaleModelSets . FirstOrDefault ( x => x . Name == modelTemplate . Name ) ;
659+ if ( modelSet . IsLoaded )
660+ {
661+ MessageBox . Show ( "Please unload model before uninstalling" , "Model In Use" , MessageBoxButton . OK , MessageBoxImage . Warning ) ;
662+ return ;
663+ }
664+
650665 UISettings . UpscaleModelSets . Remove ( modelSet ) ;
651666 UISettings . Templates . Remove ( modelTemplate ) ;
652667 await SaveConfigurationFile ( ) ;
@@ -696,12 +711,14 @@ private async Task InstallUpscaleModel(ModelTemplateViewModel modelTemplate, Ups
696711
697712 private async Task UninstallUpscaleModel ( ModelTemplateViewModel modelTemplate )
698713 {
699- if ( modelTemplate . Category != ModelTemplateCategory . Upscaler )
700- return ; // TODO: Error
701-
702714 var modelSet = UISettings . UpscaleModelSets . FirstOrDefault ( x => x . Name == modelTemplate . Name ) ;
703- UISettings . UpscaleModelSets . Remove ( modelSet ) ;
715+ if ( modelSet . IsLoaded )
716+ {
717+ MessageBox . Show ( "Please unload model before uninstalling" , "Model In Use" , MessageBoxButton . OK , MessageBoxImage . Warning ) ;
718+ return ;
719+ }
704720
721+ UISettings . UpscaleModelSets . Remove ( modelSet ) ;
705722 modelTemplate . IsInstalled = false ;
706723 await SaveConfigurationFile ( ) ;
707724 }
0 commit comments