00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef FILESELECT_H
00021 #define FILESELECT_H
00022
00023 #include <string>
00024
00025 #include "font.h"
00026 #include "directory.h"
00027 #include "SDL.h"
00028
00030 class FileSelect
00031 {
00032 public:
00033 FileSelect(SDL_Surface* scrn, const string & dir, const string & last, const string & prefix="File: ");
00034 ~FileSelect();
00035
00036 void openDir(const string & dir);
00037 void closeDir();
00038
00039 const string & filename();
00040
00041 bool loop();
00042
00043 private:
00044 Directory* mDir;
00045 Directory::iterator mDirIt;
00046 SDL_Surface* mScrn;
00047
00048 SDL_Rect rect;
00049
00050 Font mFont;
00051
00052 string mDirname;
00053 string mPrefix;
00054 FileName mFilename;
00055 FileName mLast;
00056
00057 bool running;
00058 bool abort;
00059
00060 void clear();
00061 void display();
00062 void events();
00063
00064 };
00065
00066 #endif