diff --git a/Code/Wrappers/QtWidget/otbWrapperQtWidgetFilenameParameter.cxx b/Code/Wrappers/QtWidget/otbWrapperQtWidgetFilenameParameter.cxx
index 067130bef7215ab215809c1f1afdad9ec18f6ced..830d806f40567a632f51f3649a9fa29cc7b9bec5 100644
--- a/Code/Wrappers/QtWidget/otbWrapperQtWidgetFilenameParameter.cxx
+++ b/Code/Wrappers/QtWidget/otbWrapperQtWidgetFilenameParameter.cxx
@@ -65,7 +65,20 @@ void QtWidgetFilenameParameter::SelectFile()
 {
   QFileDialog fileDialog;
   fileDialog.setConfirmOverwrite(true);
-  fileDialog.setFileMode(QFileDialog::ExistingFile);
+  switch(m_FilenameParam->GetRole())
+    {
+    case Role_Input:
+    {
+    fileDialog.setFileMode(QFileDialog::ExistingFile);
+    }
+    break;
+    case Role_Output:
+    {
+    fileDialog.setFileMode(QFileDialog::AnyFile);
+    }
+    break;
+    }
+
   fileDialog.setNameFilter("File (*)");
 
   if (fileDialog.exec())