1
1
using System ;
2
2
using System . Collections . Generic ;
3
+ using System . Collections . ObjectModel ;
3
4
using System . ComponentModel ;
4
5
using System . Linq ;
5
6
using System . Runtime . CompilerServices ;
@@ -53,20 +54,21 @@ public string SelectedName
53
54
private bool IsEdit { get ; set ; }
54
55
[ CanBeNull ] private AccessLink SelectedAccessLink { get ; set ; }
55
56
56
- private Settings Settings { get ; }
57
- public QuickAccessLinkSettings ( Settings settings )
57
+ public ObservableCollection < AccessLink > QuickAccessLinks { get ; set ; }
58
+
59
+ public QuickAccessLinkSettings ( ObservableCollection < AccessLink > quickAccessLinks )
58
60
{
59
- Settings = settings ;
61
+ QuickAccessLinks = quickAccessLinks ;
60
62
InitializeComponent ( ) ;
61
63
}
62
64
63
- public QuickAccessLinkSettings ( Settings settings , AccessLink selectedAccessLink )
65
+ public QuickAccessLinkSettings ( ObservableCollection < AccessLink > quickAccessLinks , AccessLink selectedAccessLink )
64
66
{
65
67
IsEdit = true ;
66
68
_selectedName = selectedAccessLink . Name ;
67
69
_selectedPath = selectedAccessLink . Path ;
68
70
SelectedAccessLink = selectedAccessLink ;
69
- Settings = settings ;
71
+ QuickAccessLinks = quickAccessLinks ;
70
72
InitializeComponent ( ) ;
71
73
}
72
74
@@ -88,7 +90,7 @@ private void OnDoneButtonClick(object sender, RoutedEventArgs e)
88
90
return ;
89
91
}
90
92
91
- if ( Settings . QuickAccessLinks . Any ( x => x . Path == SelectedPath && x . Name == SelectedName ) )
93
+ if ( QuickAccessLinks . Any ( x => x . Path == SelectedPath && x . Name == SelectedName ) )
92
94
{
93
95
var warning = Main . Context . API . GetTranslation ( "plugin_explorer_quick_access_link_select_different_folder" ) ;
94
96
Main . Context . API . ShowMsgBox ( warning ) ;
@@ -99,9 +101,8 @@ private void OnDoneButtonClick(object sender, RoutedEventArgs e)
99
101
EditAccessLink ( ) ;
100
102
return ;
101
103
}
102
- var container = Settings . QuickAccessLinks ;
103
104
var newAccessLink = new AccessLink { Name = SelectedName , Path = SelectedPath } ;
104
- container . Add ( newAccessLink ) ;
105
+ QuickAccessLinks . Add ( newAccessLink ) ;
105
106
DialogResult = false ;
106
107
Close ( ) ;
107
108
}
@@ -120,12 +121,12 @@ private void EditAccessLink()
120
121
{
121
122
if ( SelectedAccessLink == null ) throw new ArgumentException ( "Access Link object is null" ) ;
122
123
123
- var obj = Settings . QuickAccessLinks . FirstOrDefault ( x => x . GetHashCode ( ) == SelectedAccessLink . GetHashCode ( ) ) ;
124
- int index = Settings . QuickAccessLinks . IndexOf ( obj ) ;
124
+ var obj = QuickAccessLinks . FirstOrDefault ( x => x . GetHashCode ( ) == SelectedAccessLink . GetHashCode ( ) ) ;
125
+ int index = QuickAccessLinks . IndexOf ( obj ) ;
125
126
if ( index >= 0 )
126
127
{
127
128
SelectedAccessLink = new AccessLink { Name = SelectedName , Path = SelectedPath } ;
128
- Settings . QuickAccessLinks [ index ] = SelectedAccessLink ;
129
+ QuickAccessLinks [ index ] = SelectedAccessLink ;
129
130
}
130
131
DialogResult = false ;
131
132
IsEdit = false ;
0 commit comments