00001 /* === S Y N F I G ========================================================= */ 00022 /* ========================================================================= */ 00023 00024 /* === S T A R T =========================================================== */ 00025 00026 #ifndef __SYNFIG_DIALOG_SOUNDSELECT_H 00027 #define __SYNFIG_DIALOG_SOUNDSELECT_H 00028 00029 /* === H E A D E R S ======================================================= */ 00030 #include "dockdialog.h" 00031 #include "widget_filename.h" 00032 #include "widget_time.h" 00033 00034 #include <synfigapp/canvasinterface.h> 00035 00036 /* === M A C R O S ========================================================= */ 00037 00038 /* === T Y P E D E F S ===================================================== */ 00039 00040 /* === C L A S S E S & S T R U C T S ======================================= */ 00041 00042 namespace studio { 00043 00044 struct AudioBaseInfo 00045 { 00046 std::string file; 00047 synfig::Time offset; 00048 }; 00049 00050 class Dialog_SoundSelect : public Gtk::Dialog 00051 { 00052 Widget_Filename soundfile; 00053 Widget_Time offset; 00054 Gtk::Button *okbutton; 00055 00056 etl::handle<synfigapp::CanvasInterface> canvas_interface; 00057 00058 sigc::signal<void,const std::string &> signal_file_changed_; 00059 sigc::signal<void,const synfig::Time &> signal_offset_changed_; 00060 00061 void on_file(); 00062 void on_offset(); 00063 void on_ok(); 00064 00065 public: 00066 Dialog_SoundSelect(Gtk::Window &parent,etl::handle<synfigapp::CanvasInterface> ci ); 00067 ~Dialog_SoundSelect(); 00068 00069 //float get_global_fps() const { return globalfps; } 00070 void set_global_fps(float f); 00071 00072 synfig::Time get_offset() const { return offset.get_value(); } 00073 void set_offset(const synfig::Time &t) {offset.set_value(t); } 00074 00075 std::string get_file() const { return soundfile.get_value(); } 00076 void set_file(const std::string &f) {soundfile.set_value(f); } 00077 00078 sigc::signal<void,const std::string &> &signal_file_changed() { return signal_file_changed_; } 00079 sigc::signal<void,const synfig::Time &> &signal_offset_changed() { return signal_offset_changed_; } 00080 }; 00081 00082 }; // END of namespace studio 00083 00084 /* === E N D =============================================================== */ 00085 00086 #endif