55using SmartImage . Lib . Utilities ;
66using System ;
77using System . Collections . Generic ;
8+ using System . ComponentModel ;
89using System . Diagnostics ;
910using System . Linq ;
11+ using System . Runtime . CompilerServices ;
1012using System . Threading . Tasks ;
1113using SimpleCore . Net ;
14+ using SimpleCore . Utilities ;
1215using SmartImage . Lib . Upload ;
1316using static SimpleCore . Diagnostics . LogCategories ;
1417
@@ -24,16 +27,28 @@ public SearchClient(SearchConfig config)
2427
2528 Results = new List < SearchResult > ( ) ;
2629
30+ Update ( ) ;
31+ }
32+
33+ public void Update ( )
34+ {
35+ if ( Config . SearchEngines == SearchEngineOptions . None ) {
36+ Config . SearchEngines = SearchEngineOptions . All ;
37+ }
38+
2739 Engines = GetAllSearchEngines ( )
2840 . Where ( e => Config . SearchEngines . HasFlag ( e . Engine ) )
2941 . ToArray ( ) ;
42+
43+ Trace . WriteLine ( $ "Engines: { Config . SearchEngines } | { Engines . QuickJoin ( ) } ") ;
3044 }
3145
46+
3247 public SearchConfig Config { get ; init ; }
3348
3449 public bool IsComplete { get ; private set ; }
3550
36- public BaseSearchEngine [ ] Engines { get ; init ; }
51+ public BaseSearchEngine [ ] Engines { get ; private set ; }
3752
3853 public List < SearchResult > Results { get ; }
3954
@@ -170,7 +185,8 @@ public static BaseSearchEngine[] GetAllSearchEngines()
170185
171186 public event EventHandler < SearchResultEventArgs > ResultCompleted ;
172187
173- public event EventHandler SearchCompleted ;
188+ public event EventHandler SearchCompleted ;
189+ public event PropertyChangedEventHandler PropertyChanged ;
174190 }
175191
176192 public sealed class SearchResultEventArgs : EventArgs
0 commit comments