Index: src/sas/sasgui/perspectives/file_converter/converter_panel.py
===================================================================
--- src/sas/sasgui/perspectives/file_converter/converter_panel.py	(revision 9c500abe9246096e5ca8d5ad02f5ed747efb0570)
+++ src/sas/sasgui/perspectives/file_converter/converter_panel.py	(revision 0e11ec7528fae0e8cd8f2e311b10e73c4b19c77b)
@@ -10,5 +10,5 @@
 from sas.sasgui.guiframe.panel_base import PanelBase
 from sas.sasgui.perspectives.calculator import calculator_widgets as widget
-from sas.sasgui.perspectives.file_converter.converter_widgets import VectorInput
+from sas.sasgui.perspectives.file_converter.converter_widgets import FileInput
 from sas.sasgui.perspectives.file_converter.meta_panels import MetadataWindow
 from sas.sasgui.perspectives.file_converter.meta_panels import DetectorPanel
@@ -486,8 +486,10 @@
             self.on_collapsible_pane(None)
             self.metadata_section.Disable()
+            self.output.SetWildcard("Red2D (*.dat)|*.dat")
         else:
             self.q_input.Enable()
             self.radiation_input.Enable()
             self.metadata_section.Enable()
+            self.output.SetWildcard("CanSAS 1D (*.xml)|*.xml")
 
     def radiationtype_changed(self, event):
@@ -575,10 +577,7 @@
         input_grid.Add(output_label, (y,0), (1,1), wx.ALIGN_CENTER_VERTICAL, 5)
 
-        self.output = wx.FilePickerCtrl(self, -1,
-            size=(_STATICBOX_WIDTH-80, -1),
-            message="Chose where to save the output file.",
-            style=wx.FLP_SAVE | wx.FLP_OVERWRITE_PROMPT | wx.FLP_USE_TEXTCTRL,
-            wildcard="CanSAS 1D (*.xml)|*.xml|Red2D (*.dat)|*.dat")
-        input_grid.Add(self.output, (y,1), (1,1), wx.ALL, 5)
+        self.output = FileInput(self,
+            wildcard="CanSAS 1D (*.xml)|*.xml")
+        input_grid.Add(self.output.GetCtrl(), (y,1), (1,1), wx.EXPAND | wx.ALL, 5)
         y += 1
 
Index: src/sas/sasgui/perspectives/file_converter/converter_widgets.py
===================================================================
--- src/sas/sasgui/perspectives/file_converter/converter_widgets.py	(revision ba65aff97e4c9511e2e199a78137312a6adc403d)
+++ src/sas/sasgui/perspectives/file_converter/converter_widgets.py	(revision 0e11ec7528fae0e8cd8f2e311b10e73c4b19c77b)
@@ -3,4 +3,5 @@
 """
 import wx
+import os
 from sas.sascalc.dataloader.data_info import Vector
 from sas.sasgui.guiframe.utils import check_float
@@ -128,2 +129,60 @@
             self._inputs['z'] = z_input
             z_input.Bind(wx.EVT_TEXT, self._callback)
+
+class FileInput(object):
+
+    def __init__(self, parent, wildcard=''):
+        self.parent = parent
+        self._sizer = None
+        self._text_ctrl = None
+        self._button_ctrl = None
+        self._filepath = ''
+        self._wildcard = wildcard
+
+        self._do_layout()
+
+    def GetCtrl(self):
+        return self._sizer
+
+    def GetPath(self):
+        return self._filepath
+
+    def SetWildcard(self, wildcard):
+        self._wildcard = wildcard
+
+
+    def _on_text_change(self, event):
+        event.Skip()
+        self._filepath = self._text_ctrl.GetValue()
+
+    def _on_browse(self, event):
+        event.Skip()
+        initial_path = self._filepath
+        initial_dir = os.getcwd()
+        if not os.path.isfile(initial_path):
+            initial_path = ''
+        else:
+            initial_dir = os.path.split(initial_path)[0]
+
+        file_dlg = wx.FileDialog(self.parent, defaultDir=initial_dir,
+            defaultFile=initial_path, wildcard=self._wildcard,
+            style=wx.FD_SAVE | wx.FD_OVERWRITE_PROMPT)
+        if file_dlg.ShowModal() == wx.ID_CANCEL:
+            file_dlg.Destroy()
+            return
+        self._filepath = file_dlg.GetPath()
+        file_dlg.Destroy()
+        self._text_ctrl.SetValue(self._filepath)
+
+    def _do_layout(self):
+        self._sizer = wx.BoxSizer(wx.HORIZONTAL)
+
+        self._text_ctrl = wx.TextCtrl(self.parent, -1)
+        self._sizer.Add(self._text_ctrl, wx.EXPAND)
+        self._text_ctrl.Bind(wx.EVT_TEXT, self._on_text_change)
+
+        self._sizer.AddSpacer(5)
+
+        self._button_ctrl = wx.Button(self.parent, -1, "Browse")
+        self._sizer.Add(self._button_ctrl)
+        self._button_ctrl.Bind(wx.EVT_BUTTON, self._on_browse)
