|
- //
- // "$Id: Fl_File_Chooser.H 8786 2011-06-07 11:41:36Z manolo $"
- //
- // Fl_File_Chooser dialog for the Fast Light Tool Kit (FLTK).
- //
- // Copyright 1998-2011 by Bill Spitzak and others.
- //
- // This library is free software; you can redistribute it and/or
- // modify it under the terms of the GNU Library General Public
- // License as published by the Free Software Foundation; either
- // version 2 of the License, or (at your option) any later version.
- //
- // This library is distributed in the hope that it will be useful,
- // but WITHOUT ANY WARRANTY; without even the implied warranty of
- // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- // Library General Public License for more details.
- //
- // You should have received a copy of the GNU Library General Public
- // License along with this library; if not, write to the Free Software
- // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- // USA.
- //
- // Please report all bugs and problems on the following page:
- //
- // http://www.fltk.org/str.php
- //
-
- // generated by Fast Light User Interface Designer (fluid) version 1.0300
-
- #ifndef Fl_File_Chooser_H
- #define Fl_File_Chooser_H
- #include <FL/Fl.H>
- #include <FL/Fl_Double_Window.H>
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #include <FL/Fl_Group.H>
- #include <FL/Fl_Choice.H>
- #include <FL/Fl_Menu_Button.H>
- #include <FL/Fl_Button.H>
- #include <FL/Fl_Preferences.H>
- #include <FL/Fl_Tile.H>
- #include <FL/Fl_File_Browser.H>
- #include <FL/Fl_Box.H>
- #include <FL/Fl_Check_Button.H>
- #include <FL/Fl_File_Input.H>
- #include <FL/Fl_Return_Button.H>
- #include <FL/fl_ask.H>
-
- class FL_EXPORT Fl_File_Chooser {
- public:
- enum { SINGLE = 0, MULTI = 1, CREATE = 2, DIRECTORY = 4 };
- private:
- static Fl_Preferences prefs_;
- void (*callback_)(Fl_File_Chooser*, void *);
- void *data_;
- char directory_[FL_PATH_MAX];
- char pattern_[FL_PATH_MAX];
- char preview_text_[2048];
- int type_;
- void favoritesButtonCB();
- void favoritesCB(Fl_Widget *w);
- void fileListCB();
- void fileNameCB();
- void newdir();
- static void previewCB(Fl_File_Chooser *fc);
- void showChoiceCB();
- void update_favorites();
- void update_preview();
- public:
- Fl_File_Chooser(const char *d, const char *p, int t, const char *title);
- private:
- Fl_Double_Window *window;
- void cb_window_i(Fl_Double_Window*, void*);
- static void cb_window(Fl_Double_Window*, void*);
- Fl_Choice *showChoice;
- void cb_showChoice_i(Fl_Choice*, void*);
- static void cb_showChoice(Fl_Choice*, void*);
- Fl_Menu_Button *favoritesButton;
- void cb_favoritesButton_i(Fl_Menu_Button*, void*);
- static void cb_favoritesButton(Fl_Menu_Button*, void*);
- public:
- Fl_Button *newButton;
- private:
- void cb_newButton_i(Fl_Button*, void*);
- static void cb_newButton(Fl_Button*, void*);
- void cb__i(Fl_Tile*, void*);
- static void cb_(Fl_Tile*, void*);
- Fl_File_Browser *fileList;
- void cb_fileList_i(Fl_File_Browser*, void*);
- static void cb_fileList(Fl_File_Browser*, void*);
- Fl_Box *previewBox;
- public:
- Fl_Check_Button *previewButton;
- private:
- void cb_previewButton_i(Fl_Check_Button*, void*);
- static void cb_previewButton(Fl_Check_Button*, void*);
- public:
- Fl_Check_Button *showHiddenButton;
- private:
- void cb_showHiddenButton_i(Fl_Check_Button*, void*);
- static void cb_showHiddenButton(Fl_Check_Button*, void*);
- Fl_File_Input *fileName;
- void cb_fileName_i(Fl_File_Input*, void*);
- static void cb_fileName(Fl_File_Input*, void*);
- Fl_Return_Button *okButton;
- void cb_okButton_i(Fl_Return_Button*, void*);
- static void cb_okButton(Fl_Return_Button*, void*);
- Fl_Button *cancelButton;
- void cb_cancelButton_i(Fl_Button*, void*);
- static void cb_cancelButton(Fl_Button*, void*);
- Fl_Double_Window *favWindow;
- Fl_File_Browser *favList;
- void cb_favList_i(Fl_File_Browser*, void*);
- static void cb_favList(Fl_File_Browser*, void*);
- Fl_Button *favUpButton;
- void cb_favUpButton_i(Fl_Button*, void*);
- static void cb_favUpButton(Fl_Button*, void*);
- Fl_Button *favDeleteButton;
- void cb_favDeleteButton_i(Fl_Button*, void*);
- static void cb_favDeleteButton(Fl_Button*, void*);
- Fl_Button *favDownButton;
- void cb_favDownButton_i(Fl_Button*, void*);
- static void cb_favDownButton(Fl_Button*, void*);
- Fl_Button *favCancelButton;
- void cb_favCancelButton_i(Fl_Button*, void*);
- static void cb_favCancelButton(Fl_Button*, void*);
- Fl_Return_Button *favOkButton;
- void cb_favOkButton_i(Fl_Return_Button*, void*);
- static void cb_favOkButton(Fl_Return_Button*, void*);
- public:
- ~Fl_File_Chooser();
- void callback(void (*cb)(Fl_File_Chooser *, void *), void *d = 0);
- void color(Fl_Color c);
- Fl_Color color();
- int count();
- void directory(const char *d);
- char * directory();
- void filter(const char *p);
- const char * filter();
- int filter_value();
- void filter_value(int f);
- void hide();
- void iconsize(uchar s);
- uchar iconsize();
- void label(const char *l);
- const char * label();
- void ok_label(const char *l);
- const char * ok_label();
- void preview(int e);
- int preview() const { return previewButton->value(); };
- private:
- void showHidden(int e);
- void remove_hidden_files();
- public:
- void rescan();
- void rescan_keep_filename();
- void show();
- int shown();
- void textcolor(Fl_Color c);
- Fl_Color textcolor();
- void textfont(Fl_Font f);
- Fl_Font textfont();
- void textsize(Fl_Fontsize s);
- Fl_Fontsize textsize();
- void type(int t);
- int type();
- void * user_data() const;
- void user_data(void *d);
- const char *value(int f = 1);
- void value(const char *filename);
- int visible();
- /**
- [standard text may be customized at run-time]
- */
- static const char *add_favorites_label;
- /**
- [standard text may be customized at run-time]
- */
- static const char *all_files_label;
- /**
- [standard text may be customized at run-time]
- */
- static const char *custom_filter_label;
- /**
- [standard text may be customized at run-time]
- */
- static const char *existing_file_label;
- /**
- [standard text may be customized at run-time]
- */
- static const char *favorites_label;
- /**
- [standard text may be customized at run-time]
- */
- static const char *filename_label;
- /**
- [standard text may be customized at run-time]
- */
- static const char *filesystems_label;
- /**
- [standard text may be customized at run-time]
- */
- static const char *manage_favorites_label;
- /**
- [standard text may be customized at run-time]
- */
- static const char *new_directory_label;
- /**
- [standard text may be customized at run-time]
- */
- static const char *new_directory_tooltip;
- /**
- [standard text may be customized at run-time]
- */
- static const char *preview_label;
- /**
- [standard text may be customized at run-time]
- */
- static const char *save_label;
- /**
- [standard text may be customized at run-time]
- */
- static const char *show_label;
- /**
- [standard text may be customized at run-time]
- */
- static const char *hidden_label;
- /**
- the sort function that is used when loading
- the contents of a directory.
- */
- static Fl_File_Sort_F *sort;
- private:
- Fl_Widget* ext_group;
- public:
- Fl_Widget* add_extra(Fl_Widget* gr);
- };
- FL_EXPORT char *fl_dir_chooser(const char *message,const char *fname,int relative=0);
- FL_EXPORT char *fl_file_chooser(const char *message,const char *pat,const char *fname,int relative=0);
- FL_EXPORT void fl_file_chooser_callback(void (*cb)(const char*));
- FL_EXPORT void fl_file_chooser_ok_label(const char*l);
- #endif
-
- //
- // End of "$Id: Fl_File_Chooser.H 8786 2011-06-07 11:41:36Z manolo $".
- //
|