synfig-studio  1.0.3
widget_time.h
Go to the documentation of this file.
1 /* === S Y N F I G ========================================================= */
21 /* ========================================================================= */
22 
23 /* === S T A R T =========================================================== */
24 
25 #ifndef __SYNFIG_STUDIO_WIDGET_TIME_H
26 #define __SYNFIG_STUDIO_WIDGET_TIME_H
27 
28 /* === H E A D E R S ======================================================= */
29 
30 #include <sigc++/signal.h>
31 #include <sigc++/slot.h>
32 #include <gtkmm/entry.h>
33 #include <synfig/time.h>
34 
35 /* === M A C R O S ========================================================= */
36 
37 /* === T Y P E D E F S ===================================================== */
38 
39 /* === C L A S S E S & S T R U C T S ======================================= */
40 
41 namespace Gtk { class Entry; class Button; };
42 
43 namespace studio {
44 
45 class Widget_Time : public Gtk::Entry
46 {
47 
48 
49  sigc::signal<void> signal_value_changed_;
50 
51  float fps_;
52 
53  synfig::Time time_;
54 
55 protected:
56  bool on_focus_out_event(GdkEventFocus* event);
57 
58  bool on_focus_in_event(GdkEventFocus* event);
59 
60  //void on_activate();
61 
62  void refresh_text();
63 
64  void refresh_value();
65 
66  bool on_event(GdkEvent* event);
67 
68 public:
69  sigc::signal<void> &signal_value_changed() { return signal_value_changed_; }
70 
71 
72 
73  void set_value(const synfig::Time &data);
74  synfig::Time get_value()const;
75  void set_fps(float x);
76  Widget_Time();
77  ~Widget_Time();
78 }; // END of class Widget_Time
79 
80 }; // END of namespace studio
81 
82 /* === E N D =============================================================== */
83 
84 #endif