Skip to content

Commit

Permalink
Fix file chooser bug - show() was calling deselect() when it shouldn't
Browse files Browse the repository at this point in the history
have been.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2153 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
  • Loading branch information
michaelrsweet committed May 1, 2002
1 parent e5ceaa4 commit 43b4048
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 17 deletions.
7 changes: 2 additions & 5 deletions src/Fl_File_Chooser.cxx
Expand Up @@ -3,8 +3,7 @@
#include "../FL/Fl_File_Chooser.H"

inline void Fl_File_Chooser::cb_window_i(Fl_Window*, void*) {
fileList->deselect();
fileName->value("");
fileName->value(directory_);
window->hide();
}
void Fl_File_Chooser::cb_window(Fl_Window* o, void* v) {
Expand Down Expand Up @@ -92,8 +91,7 @@ void Fl_File_Chooser::cb_okButton(Fl_Return_Button* o, void* v) {
}

inline void Fl_File_Chooser::cb_Cancel_i(Fl_Button*, void*) {
fileList->deselect();
fileName->value("");
fileName->value(directory_);
window->hide();
}
void Fl_File_Chooser::cb_Cancel(Fl_Button* o, void* v) {
Expand Down Expand Up @@ -213,7 +211,6 @@ const char * Fl_File_Chooser::label() {
void Fl_File_Chooser::show() {
window->hotspot(fileList);
window->show();
fileList->deselect();
}

int Fl_File_Chooser::shown() {
Expand Down
12 changes: 5 additions & 7 deletions src/Fl_File_Chooser.fl
Expand Up @@ -10,8 +10,7 @@ class Fl_File_Chooser {open
} {
Fl_Window window {
label {Pick a File}
callback {fileList->deselect();
fileName->value("");
callback {fileName->value(directory_);
window->hide();} open
private xywh {99 225 375 325} resizable
code0 {if (title) window->label(title);}
Expand Down Expand Up @@ -78,8 +77,7 @@ window->hide();}
}
Fl_Button {} {
label Cancel
callback {fileList->deselect();
fileName->value("");
callback {fileName->value(directory_);
window->hide();}
private xywh {285 290 80 25}
code0 {o->label(fl_cancel);}
Expand Down Expand Up @@ -154,8 +152,8 @@ rescan();} {}
Function {show()} {open return_type void
} {
code {window->hotspot(fileList);
window->show();
fileList->deselect();} {}
window->show();} {selected
}
}
Function {shown()} {return_type int
} {
Expand Down Expand Up @@ -217,7 +215,7 @@ else
}
decl {static const char *filename_label;} {public
}
decl {static const char *filter_label;} {selected public
decl {static const char *filter_label;} {public
}
}

Expand Down
13 changes: 8 additions & 5 deletions src/Fl_File_Chooser2.cxx
@@ -1,5 +1,5 @@
//
// "$Id: Fl_File_Chooser2.cxx,v 1.1.2.8 2002/04/30 21:50:16 easysw Exp $"
// "$Id: Fl_File_Chooser2.cxx,v 1.1.2.9 2002/05/01 08:28:59 easysw Exp $"
//
// More Fl_File_Chooser routines.
//
Expand Down Expand Up @@ -656,14 +656,13 @@ Fl_File_Chooser::fileNameCB()
}
}

fileList->deselect(0);
fileList->redraw();

// If we have any matches, add them to the input field...
if (first_line > 0 && min_match == max_match &&
max_match == (int)strlen(fileList->text(first_line))) {
// This is the only possible match...
fileList->deselect(0);
fileList->select(first_line);
fileList->redraw();
}
else if (max_match > min_match && max_match != 100000)
{
Expand All @@ -683,6 +682,10 @@ Fl_File_Chooser::fileNameCB()
fileName->position(filename - pathname + max_match,
filename - pathname + min_match);
}
else if (max_match == 0) {
fileList->deselect(0);
fileList->redraw();
}

// See if we need to enable the OK button...
if ((type_ & CREATE || access(fileName->value(), 0) == 0) &&
Expand All @@ -695,5 +698,5 @@ Fl_File_Chooser::fileNameCB()


//
// End of "$Id: Fl_File_Chooser2.cxx,v 1.1.2.8 2002/04/30 21:50:16 easysw Exp $".
// End of "$Id: Fl_File_Chooser2.cxx,v 1.1.2.9 2002/05/01 08:28:59 easysw Exp $".
//

0 comments on commit 43b4048

Please sign in to comment.