summaryrefslogtreecommitdiff
path: root/src/Fl_File_Browser.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'src/Fl_File_Browser.cxx')
-rw-r--r--src/Fl_File_Browser.cxx38
1 files changed, 16 insertions, 22 deletions
diff --git a/src/Fl_File_Browser.cxx b/src/Fl_File_Browser.cxx
index 7fec67192..acf35b64d 100644
--- a/src/Fl_File_Browser.cxx
+++ b/src/Fl_File_Browser.cxx
@@ -1,5 +1,5 @@
//
-// "$Id: Fl_File_Browser.cxx,v 1.1.2.28 2004/04/11 04:38:57 easysw Exp $"
+// "$Id$"
//
// Fl_File_Browser routines.
//
@@ -584,34 +584,31 @@ Fl_File_Browser::load(const char *directory,// I - Directory to load
if (num_files <= 0)
return (0);
- for (i = 0, num_dirs = 0; i < num_files; i ++)
- {
+ for (i = 0, num_dirs = 0; i < num_files; i ++) {
if (strcmp(files[i]->d_name, ".") &&
- strcmp(files[i]->d_name, "./"))
- {
+ strcmp(files[i]->d_name, "./")) {
snprintf(filename, sizeof(filename), "%s/%s", directory_,
files[i]->d_name);
-#if defined(WIN32) && !defined(__CYGWIN__)
- if (files[i]->d_name[strlen(files[i]->d_name) - 1] == '/')
- {
+ icon = Fl_File_Icon::find(filename);
+ if (icon->type() == Fl_File_Icon::DIRECTORY) {
num_dirs ++;
- insert(num_dirs, files[i]->d_name, Fl_File_Icon::find(filename));
- }
+
+#if defined(WIN32) && !defined(__CYGWIN__)
+ // WIN32 already has the trailing slash... :)
+ insert(num_dirs, files[i]->d_name, icon);
#else
- if (fl_filename_isdir(filename))
- {
+ // Add a trailing slash to directory names...
char name[1024]; // Temporary directory name
snprintf(name, sizeof(name), "%s/", files[i]->d_name);
- num_dirs ++;
- insert(num_dirs, name, Fl_File_Icon::find(filename));
- }
+ insert(num_dirs, name, icon);
#endif // WIN32 && !__CYGWIN__
- else if (filetype_ == FILES &&
- fl_filename_match(files[i]->d_name, pattern_))
- add(files[i]->d_name, Fl_File_Icon::find(filename));
+ } else if (filetype_ == FILES &&
+ fl_filename_match(files[i]->d_name, pattern_)) {
+ add(files[i]->d_name, icon);
+ }
}
free(files[i]);
@@ -636,12 +633,9 @@ Fl_File_Browser::filter(const char *pattern) // I - Pattern string
pattern_ = pattern;
else
pattern_ = "*";
-
- // Reload the current directory...
- load(directory_);
}
//
-// End of "$Id: Fl_File_Browser.cxx,v 1.1.2.28 2004/04/11 04:38:57 easysw Exp $".
+// End of "$Id$".
//