data transfer: select download folder

Add setting to select folder for incoming images.

Change-Id: I2ee21e0b9195e8ebfcaf11e101160b8058d39792
Reviewed-by: Andreas Traczyk <andreas.traczyk@savoirfairelinux.com>
diff --git a/src/PreferencesWC.mm b/src/PreferencesWC.mm
index 6bb635a..424745e 100644
--- a/src/PreferencesWC.mm
+++ b/src/PreferencesWC.mm
@@ -25,6 +25,7 @@
 #import <codecmodel.h>
 #import <profilemodel.h>
 #import <profile.h>
+#import <api/datatransfermodel.h>
 
 //Ring
 #import "AccountsVC.h"
@@ -36,9 +37,10 @@
 
     __unsafe_unretained IBOutlet NSView *prefsContainer;
     NSViewController *currentVC;
-
 }
 
+@synthesize dataTransferModel;
+
 // Identifiers used in PreferencesWindow.xib for tabs
 static auto const kProfilePrefsIdentifier = @"AccountsPrefsIdentifier";
 static auto const kGeneralPrefsIdentifier = @"GeneralPrefsIdentifier";
@@ -53,6 +55,15 @@
     [self displayGeneral:nil];
 }
 
+-(id) initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil model:(lrc::api::DataTransferModel*) dataTransferModel
+{
+    if (self = [self initWithWindowNibName:nibNameOrNil])
+    {
+        self.dataTransferModel = dataTransferModel;
+    }
+    return self;
+}
+
 - (void)windowWillClose:(NSNotification *)notification
 {
     AccountModel::instance().save();
@@ -63,7 +74,7 @@
 {
     [[prefsContainer subviews]
      makeObjectsPerformSelector:@selector(removeFromSuperview)];
-    currentVC = [[GeneralPrefsVC alloc] initWithNibName:@"GeneralPrefs" bundle:nil];
+     currentVC = [[GeneralPrefsVC alloc] initWithNibName:@"GeneralPrefs" bundle:nil model: self.dataTransferModel];
 
     [self resizeWindowWithFrame:currentVC.view.frame];
     [prefsContainer addSubview:currentVC.view];
@@ -90,7 +101,7 @@
 - (IBAction)displayAccounts:(NSToolbarItem *)sender
 {
     [[prefsContainer subviews]
-     makeObjectsPerformSelector:@selector(removeFromSuperview)];
+    makeObjectsPerformSelector:@selector(removeFromSuperview)];
     currentVC = [[AccountsVC alloc] initWithNibName:@"Accounts" bundle:nil];
     [self resizeWindowWithFrame:currentVC.view.frame];
     [prefsContainer addSubview:currentVC.view];