Programmable real-time audio signal processing application
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Fl_File_Btn.h 994B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. //| Copyright: (C) 2019-2020 Kevin Larke <contact AT larke DOT org>
  2. //| License: GNU GPL version 3.0 or above. See the accompanying LICENSE file.
  3. #ifndef Fl_File_Btn_h
  4. #define Fl_File_Btn_h
  5. class Fl_Button;
  6. class Fl_Output;
  7. class Fl_File_Btn : public Fl_Group
  8. {
  9. public:
  10. enum
  11. {
  12. kFile_Type_Id,
  13. kDir_Type_Id
  14. };
  15. Fl_File_Btn( int x, int y, int w, int h, const char* l = 0 );
  16. Fl_File_Btn( unsigned typeId, const char* patStr, int x, int y, int w, int h, const char* l = 0 );
  17. virtual ~Fl_File_Btn();
  18. unsigned type();
  19. void type( unsigned typeId );
  20. const char* pattern_string();
  21. void pattern_string( const char* pat);
  22. void btn_width( int w );
  23. int btn_width();
  24. void filename( const char* fn );
  25. const char* filename() const;
  26. private:
  27. char* _patStr;
  28. unsigned _typeId;
  29. Fl_Button* _btn;
  30. Fl_Output* _out;
  31. static void _s_btn_cb(Fl_Widget* w, void* data);
  32. void _btn_cb();
  33. void _init();
  34. };
  35. #endif