Index: cprs/branches/tmg-cprs/CPRS-Chart/Options/fOptions.dfm
===================================================================
--- cprs/branches/tmg-cprs/CPRS-Chart/Options/fOptions.dfm	(revision 735)
+++ cprs/branches/tmg-cprs/CPRS-Chart/Options/fOptions.dfm	(revision 738)
@@ -1,5 +1,5 @@
 object frmOptions: TfrmOptions
-  Left = 283
-  Top = 179
+  Left = 302
+  Top = 223
   Width = 435
   Height = 397
@@ -1796,4 +1796,5 @@
           Caption = 'Enable Images Tab'
           TabOrder = 0
+          OnClick = cbEnableImagesClick
         end
         object cboTransMethod: TComboBox
@@ -1806,4 +1807,5 @@
           TabOrder = 1
           Text = 'Dropbox Transfer'
+          OnChange = cboTransMethodChange
           Items.Strings = (
             'Dropbox Transfer'
@@ -1811,10 +1813,11 @@
             'Embedded in RPCs')
         end
-        object Edit1: TEdit
+        object editDropboxLocation: TEdit
           Left = 16
           Top = 120
           Width = 201
-          Height = 22
+          Height = 21
           TabOrder = 2
+          OnChange = editDropboxLocationChange
         end
         object BitBtn1: TBitBtn
@@ -1825,4 +1828,5 @@
           Caption = '...'
           TabOrder = 3
+          OnClick = BitBtn1Click
           Glyph.Data = {
             F6000000424DF600000000000000760000002800000010000000100000000100
@@ -1842,11 +1846,13 @@
           Caption = 'Enable auto-upload of scanned images'
           TabOrder = 4
-        end
-        object Edit2: TEdit
+          OnClick = cbEnableScanningClick
+        end
+        object editScannedLocation: TEdit
           Left = 15
           Top = 199
           Width = 201
-          Height = 22
+          Height = 21
           TabOrder = 5
+          OnChange = editScannedLocationChange
         end
         object BitBtn2: TBitBtn
@@ -1857,4 +1863,5 @@
           Caption = '...'
           TabOrder = 6
+          OnClick = BitBtn2Click
           Glyph.Data = {
             F6000000424DF600000000000000760000002800000010000000100000000100
@@ -1874,4 +1881,5 @@
           TabOrder = 7
           Text = '60'
+          OnChange = edtPolFreqChange
         end
       end
@@ -2065,12 +2073,13 @@
       00070043617074696F6E000E0063626F5472616E734D6574686F640102000000
       5A00000005004974656D73590000000400546578740006004C6162656C330101
-      0000005B000000070043617074696F6E0005004564697431000006004C616265
-      6C3401010000005C000000070043617074696F6E00070042697442746E310000
-      0A00646C675069636B446972000010006362456E61626C655363616E6E696E67
-      01010000005D000000070043617074696F6E0006004C6162656C350101000000
-      5E000000070043617074696F6E00050045646974320000070042697442746E32
-      000006004C6162656C3601010000005F000000070043617074696F6E000A0065
-      6474506F6C46726571000006004C6162656C3701010000006000000007004361
-      7074696F6E00}
+      0000005B000000070043617074696F6E0013006564697444726F70626F784C6F
+      636174696F6E000006004C6162656C3401010000005C00000007004361707469
+      6F6E00070042697442746E3100000A00646C675069636B446972000010006362
+      456E61626C655363616E6E696E6701010000005D000000070043617074696F6E
+      0006004C6162656C3501010000005E000000070043617074696F6E0013006564
+      69745363616E6E65644C6F636174696F6E0000070042697442746E3200000600
+      4C6162656C3601010000005F000000070043617074696F6E000A00656474506F
+      6C46726571000006004C6162656C37010100000060000000070043617074696F
+      6E00}
   end
   object dlgPickDir: TOpenDialog
Index: cprs/branches/tmg-cprs/CPRS-Chart/Options/fOptions.pas
===================================================================
--- cprs/branches/tmg-cprs/CPRS-Chart/Options/fOptions.pas	(revision 735)
+++ cprs/branches/tmg-cprs/CPRS-Chart/Options/fOptions.pas	(revision 738)
@@ -7,5 +7,5 @@
   Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls,
   Buttons, ComCtrls, ExtCtrls, ORCtrls, OrFn, Dialogs, ORDtTmRng, fBAOptionsDiagnoses,
-  uBAGlobals, TntStdCtrls, DKLang, jpeg, inifiles;
+  uBAGlobals, TntStdCtrls, DKLang, jpeg, inifiles, uConst, StrUtils;
 
 //kt added 6/29/07 ------------------
@@ -139,5 +139,5 @@
     cboTransMethod: TComboBox;
     Label3: TLabel;
-    Edit1: TEdit;
+    editDropboxLocation: TEdit;
     Label4: TLabel;
     BitBtn1: TBitBtn;
@@ -145,5 +145,5 @@
     cbEnableScanning: TCheckBox;
     Label5: TLabel;
-    Edit2: TEdit;
+    editScannedLocation: TEdit;
     BitBtn2: TBitBtn;
     Label6: TLabel;
@@ -188,8 +188,17 @@
     procedure lbSkinsKeyPress(Sender: TObject; var Key: Char);
     procedure btnDisableSkinClick(Sender: TObject);
-    procedure cbSkinAtStartupClick(Sender: TObject);  //kt added 6/29/07
+    procedure cbSkinAtStartupClick(Sender: TObject);
+    procedure cboTransMethodChange(Sender: TObject);
+    procedure cbEnableImagesClick(Sender: TObject);
+    procedure editDropboxLocationChange(Sender: TObject);
+    procedure cbEnableScanningClick(Sender: TObject);
+    procedure editScannedLocationChange(Sender: TObject);
+    procedure edtPolFreqChange(Sender: TObject);
+    procedure BitBtn1Click(Sender: TObject);
+    procedure BitBtn2Click(Sender: TObject);  //kt added 6/29/07
   private
     { Private declarations }
     FdirtyNotifications: boolean;  // used to determine edit changes to Notifications
+    FdirtyImageSettings: boolean;  // used to determine edit changes to Image Settings
     FdirtyOrderChecks: boolean;    // used to determine edit changes to Order Checks
     FdirtyOtherStuff: boolean;     // used to determine edit changes to misc settings
@@ -201,11 +210,14 @@
     procedure Offset(var topnum: integer; topoffset: integer; var leftnum: integer; leftoffset: integer);
     procedure LoadNotifications;
+    procedure LoadImageSettings;
     procedure LoadOrderChecks;
     procedure ApplyNotifications;
     procedure ApplyOrderChecks;
     procedure ApplyOtherStuff;
+    procedure ApplyImageSettings;
     procedure CheckApply;
     procedure LoadListView(aListView: TListView; aList: TStrings);
     procedure ChangeOnOff(aListView: TListView; aListItem: TListItem);
+    function BrowseDialog(const Title: string; const Flag: integer): string;
   public
     { Public declarations }
@@ -228,4 +240,6 @@
     ShellAPI, //kt 9/8/08
     uTMGOptions, //kt 2/10/10
+    UploadImages, fImages, //elh 04/15/10
+    ShlObj,  //elh 04/15/10
     ORNet, //allows access to RPCBrokerV
     TntForms, TntSystem, TntSysUtils;
@@ -346,4 +360,6 @@
     LoadNotifications;
     LoadOrderChecks;
+    LoadImageSettings;
+    FdirtyImageSettings := false;
     FdirtyNotifications := false;
     FdirtyOrderChecks := false;
@@ -469,4 +485,6 @@
     if FdirtyNotifications then
       ApplyNotifications;
+    if FdirtyImageSettings then
+      ApplyImageSettings;
     if FdirtyOrderChecks then
       ApplyOrderChecks;
@@ -493,4 +511,17 @@
     btnSurrogate.Hint := surrogateinfo;
     LabelSurrogate(surrogateinfo, lblNotificationsSurrogateText);
+  end;
+
+  procedure TfrmOptions.LoadImageSettings;
+  begin
+     cbEnableImages.Checked := uTMGOptions.ReadBool('EnableImages',false);
+     cboTransMethod.ItemIndex :=  uTMGOptions.ReadInteger('ImageTransferMethod',0);
+     editDropboxLocation.text := uTMGOptions.ReadString('Dropbox directory','');
+     cbEnableScanning.Checked := uTMGOptions.ReadBool('Scan Enabled',false);
+     editScannedLocation.text := uTMGOptions.ReadString('Pol Directory','');
+     edtPolFreq.text := IntToStr(uTMGOptions.ReadInteger('Pol Interval (milliseconds)',0));
+
+     cbEnableScanningClick(self);
+     cboTransMethodChange(self);
   end;
 
@@ -531,4 +562,30 @@
   end;
 
+  procedure TfrmOptions.ApplyImageSettings;
+  begin
+     uTMGOptions.WriteBool('EnableImages',cbEnableImages.Checked);
+     frmFrame.SetATabVisibility(CT_IMAGES, cbEnableImages.Checked, 'Images');
+
+     uTMGOptions.WriteInteger('ImageTransferMethod',cboTransMethod.itemindex);
+     if cboTransMethod.text = 'Dropbox Transfer' then begin
+        frmImages.UseDropBox := True;
+     end else begin
+        frmImages.UseDropBox := False;
+     end;
+
+     uTMGOptions.WriteString('Dropbox directory',editDropboxLocation.text);
+     frmImages.DropBoxDir := editDropboxLocation.text;
+
+     uTMGOptions.WriteBool('Scan Enabled',cbEnableScanning.Checked);
+
+     uTMGOptions.WriteString('Pol Directory',editScannedLocation.text);
+     UploadForm.FScanDir := editScannedLocation.text;
+
+     uTMGOptions.WriteInteger('Pol Interval (milliseconds)',StrToInt(edtPolFreq.text));
+     UploadForm.PolInterval := StrToInt(edtPolFreq.text);
+
+     FdirtyImageSettings := false;
+  end;
+
   procedure TfrmOptions.ApplyOrderChecks;
   // save Order Check changes
@@ -572,5 +629,5 @@
   // determine if Apply button is enabled
   begin
-    btnApply.Enabled :=  FdirtyOrderChecks or FdirtyNotifications or FdirtyOtherStuff;
+    btnApply.Enabled :=  FdirtyImageSettings or FdirtyOrderChecks or FdirtyNotifications or FdirtyOtherStuff;
   end;
 
@@ -961,4 +1018,102 @@
   end;
 
+procedure TfrmOptions.cboTransMethodChange(Sender: TObject);
+begin
+    if cboTransMethod.text = 'Dropbox Transfer' then begin
+       editDropboxLocation.enabled := true;
+       bitbtn1.enabled := true;
+    end else begin
+       editDropboxLocation.enabled := false;
+       bitbtn1.enabled := false;
+    end;
+    FdirtyImageSettings := true;
+    CheckApply;
+end;
+
+procedure TfrmOptions.cbEnableImagesClick(Sender: TObject);
+begin
+   FdirtyImageSettings := true;
+   CheckApply;
+end;
+
+procedure TfrmOptions.editDropboxLocationChange(Sender: TObject);
+begin
+   FdirtyImageSettings := true;
+   CheckApply;
+end;
+
+procedure TfrmOptions.cbEnableScanningClick(Sender: TObject);
+begin
+   editScannedLocation.enabled := cbEnableScanning.checked;
+   bitbtn2.enabled := cbEnableScanning.checked;
+   edtPolFreq.enabled := cbEnableScanning.checked;
+   FdirtyImageSettings := true;
+   CheckApply;
+end;
+
+procedure TfrmOptions.editScannedLocationChange(Sender: TObject);
+begin
+   FdirtyImageSettings := true;
+   CheckApply;
+end;
+
+procedure TfrmOptions.edtPolFreqChange(Sender: TObject);
+begin
+   FdirtyImageSettings := true;
+   CheckApply;
+end;
+
+procedure TfrmOptions.BitBtn1Click(Sender: TObject);
+var
+   sFolder: string;
+begin
+  sFolder := BrowseDialog('Choose a Dropbox folder', BIF_RETURNONLYFSDIRS);
+  if sFolder <> '' then begin
+    if rightstr(sFolder,1) = '\' then begin
+       editDropboxLocation.text := sFolder;
+    end else begin
+       editDropboxLocation.text := sFolder + '\';
+    end;
+  end;
+end;
+
+function TfrmOptions.BrowseDialog(const Title: string; const Flag: integer): string;
+var
+  lpItemID : PItemIDList;
+  BrowseInfo : TBrowseInfo;
+  DisplayName : array[0..MAX_PATH] of char;
+  TempPath : array[0..MAX_PATH] of char;
+begin
+  Result:='';
+  FillChar(BrowseInfo, sizeof(TBrowseInfo), #0);
+  with BrowseInfo do begin
+    hwndOwner := Application.Handle;
+    pszDisplayName := @DisplayName;
+    lpszTitle := PChar(Title);
+    ulFlags := Flag;
+  end;
+  lpItemID := SHBrowseForFolder(BrowseInfo);
+  if lpItemId <> nil then begin
+    SHGetPathFromIDList(lpItemID, TempPath);
+    Result := TempPath;
+    GlobalFreePtr(lpItemID);
+  end;
+end;
+
+
+procedure TfrmOptions.BitBtn2Click(Sender: TObject);
+var
+   sFolder: string;
+begin
+  sFolder := BrowseDialog('Choose a Scanned folder', BIF_RETURNONLYFSDIRS);
+  if sFolder <> '' then begin
+    if rightstr(sFolder,1) = '\' then begin
+       editScannedLocation.text := sFolder;
+    end else begin
+       editScannedLocation.text := sFolder + '\';
+    end;
+  end;
+end;
+
 end.
 
