From 1237c59cfe864cbc9b64c884896e01f6248c9d2f Mon Sep 17 00:00:00 2001 From: Maarten ter Huurne Date: Mon, 26 Jul 2010 04:43:03 +0200 Subject: [PATCH] FileDialog must only pick regular files. Thanks to Ayla for finding and fixing. --- src/filedialog.cpp | 9 +++++++++ src/filedialog.h | 1 + 2 files changed, 10 insertions(+) diff --git a/src/filedialog.cpp b/src/filedialog.cpp index 18b55f1..28dc79c 100644 --- a/src/filedialog.cpp +++ b/src/filedialog.cpp @@ -42,3 +42,12 @@ FileDialog::~FileDialog() { delete fl; } + +bool FileDialog::exec() { + bool ret = BrowseDialog::exec(); + if (ret && fl->isDirectory(selected)) { + // FileDialog must only pick regular files. + ret = false; + } + return ret; +} diff --git a/src/filedialog.h b/src/filedialog.h index 5c086d2..ffdd87e 100644 --- a/src/filedialog.h +++ b/src/filedialog.h @@ -33,6 +33,7 @@ public: FileDialog(GMenu2X *gmenu2x, const string &text, const string &filter="", const string &file="", const string &title = "File Dialog"); virtual ~FileDialog(); + bool exec(); }; #endif /*INPUTDIALOG_H_*/