@@ -50,6 +50,7 @@ public MainWindow()
5050
5151 private IntPtr _hwnd ;
5252 private HwndSource _hsource ;
53+
5354 private void Window_Loaded ( object sender , RoutedEventArgs e )
5455 {
5556 var args = Env . GetCommandLineArgs ( ) ;
@@ -118,7 +119,7 @@ private void ExtendFrameIntoClientArea(int left, int right, int top, int bottom)
118119
119120 private void FallbackPaint ( )
120121 {
121- Background = ContentRectangle . Fill ; // Brushes.White;
122+ Background = ContentRectangle . Fill ; // Brushes.White;
122123 }
123124
124125 private bool IsOnExtendedFrame ( int lParam )
@@ -177,7 +178,7 @@ private IntPtr WndProc(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref b
177178 Filter = Properties . Resources . MainWindow__fileBrowser_Filter ,
178179 Multiselect = true ,
179180 InitialDirectory = Env . GetFolderPath ( Env . SpecialFolder . MyPictures )
180-
181+
181182 } ;
182183
183184 private readonly FolderBrowserDialog _folderBrowser = new FolderBrowserDialog
@@ -273,7 +274,7 @@ private void CheckInvBtn_Click(object sender, RoutedEventArgs e)
273274 private void Grid_MouseRightButtonUp ( object sender , MouseButtonEventArgs e )
274275 {
275276 var files = new List < FileInfo > ( ) ;
276- FileWrapper wrapper ;
277+ FileWrapper wrapper = null ;
277278 if ( sender is Grid )
278279 {
279280 files . AddRange ( from File file in ThumbnailView . SelectedItems select new FileInfo ( file . Path ) ) ;
@@ -282,9 +283,14 @@ private void Grid_MouseRightButtonUp(object sender, MouseButtonEventArgs e)
282283 else
283284 {
284285 var frameworkElement = e . Source as FrameworkElement ;
285- var f = frameworkElement ? . DataContext as File ;
286- if ( f != null ) files . Add ( new FileInfo ( f . Path ) ) ;
287- wrapper = TreeView . SelectedItem as FileWrapper ;
286+ var f = frameworkElement ? . DataContext as FileWrapper ;
287+ if ( f != null )
288+ {
289+ files . Add ( new FileInfo ( f . Path ) ) ;
290+ wrapper = f ;
291+ }
292+ else if ( TreeView . SelectedValue is FileWrapper )
293+ wrapper = TreeView . SelectedValue as FileWrapper ;
288294 }
289295
290296 if ( ( Control . ModifierKeys & Keys . Shift ) == Keys . Shift )
@@ -414,7 +420,7 @@ private void importFolderBtn_Click(object sender, RoutedEventArgs e)
414420 f . Name = string . Format ( s , i ) ;
415421 }
416422
417- parent ? . Files . Add ( f ) ;
423+ parent ? . Files . Insert ( 0 , f ) ;
418424 }
419425
420426 private void RemoveFolderMenuItem_Click ( object sender , RoutedEventArgs e )
@@ -470,7 +476,7 @@ private void addFolderBtn_Click(object sender, RoutedEventArgs e)
470476 f . Name = string . Format ( s , i ) ;
471477 }
472478
473- parent ? . Files . Add ( f ) ;
479+ parent ? . Files . Insert ( 0 , f ) ;
474480 }
475481
476482 private void importImageBtn_Click ( object sender , RoutedEventArgs e )
@@ -551,7 +557,7 @@ private void ListBox_SelectionChanged(object sender, SelectionChangedEventArgs e
551557 RotateSettings . Visibility =
552558 ResizeSettings . Visibility =
553559 CropSettings . Visibility =
554- WatermarkSettings . Visibility =
560+ WatermarkSettings . Visibility =
555561 ColorSettings . Visibility =
556562 OutputSettings . Visibility = Visibility . Collapsed ;
557563 if ( SettingsPresenter == null ) return ;
@@ -691,6 +697,19 @@ private void StopBtn_Click(object sender, RoutedEventArgs e)
691697 Engine . Cancel = true ;
692698 }
693699
700+ private void RemoveItemBtn_Click ( object sender , RoutedEventArgs e )
701+ {
702+ // ReSharper disable once CanBeReplacedWithTryCastAndCheckForNull
703+ if ( TreeView . SelectedValue is FileWrapper )
704+ VModel . RemoveFile ( ( FileWrapper ) TreeView . SelectedValue ) ;
705+ else
706+ VModel . RemoveFolder ( ( Folder ) TreeView . SelectedValue ) ;
707+ }
694708
709+ private void MenuItem_Click ( object sender , RoutedEventArgs e )
710+ {
711+ var m = ( ContextMenu ) Resources [ "ImageCtxMenu" ] ;
712+ VModel . RemoveFile ( ( FileWrapper ) m . DataContext ) ;
713+ }
695714 }
696715}
0 commit comments