X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Ftrunk%2Fsrc%2Fgtkmm%2Fwidget_time.cpp;h=2467c70bd5cb6c5618ba20547e8d2625922a8351;hb=9459638ad6797b8139f1e9f0715c96076dbf0890;hp=04b898bb30afba1f9a5958d7b0befdd410bf473a;hpb=837b63e9fb829d66d43f4f169861f8979f76820d;p=synfig.git diff --git a/synfig-studio/trunk/src/gtkmm/widget_time.cpp b/synfig-studio/trunk/src/gtkmm/widget_time.cpp index 04b898b..2467c70 100644 --- a/synfig-studio/trunk/src/gtkmm/widget_time.cpp +++ b/synfig-studio/trunk/src/gtkmm/widget_time.cpp @@ -6,6 +6,8 @@ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley +** Copyright (c) 2008 Chris Moore +** Copyright (c) 2008 Paul Wise ** ** This package is free software; you can redistribute it and/or ** modify it under the terms of the GNU General Public License as @@ -34,6 +36,8 @@ #include "widget_time.h" #include "app.h" +#include "general.h" + #endif /* === U S I N G =========================================================== */ @@ -45,10 +49,6 @@ using namespace studio; /* === M A C R O S ========================================================= */ -#if ! defined(_) -#define _(x) (x) -#endif - /* === G L O B A L S ======================================================= */ /* === P R O C E D U R E S ================================================= */ @@ -121,13 +121,13 @@ Widget_Time::on_event(GdkEvent* event) switch(event->type) { case GDK_SCROLL: - if(event->scroll.direction==GDK_SCROLL_DOWN) + if(event->scroll.direction==GDK_SCROLL_DOWN || event->scroll.direction==GDK_SCROLL_LEFT) { time_-=scroll_amount; refresh_text(); signal_value_changed()(); } - else if(event->scroll.direction==GDK_SCROLL_UP) + else if(event->scroll.direction==GDK_SCROLL_UP || event->scroll.direction==GDK_SCROLL_RIGHT) { time_+=scroll_amount; refresh_text(); @@ -135,6 +135,12 @@ Widget_Time::on_event(GdkEvent* event) } return true; break; + case GDK_BUTTON_PRESS: + case GDK_2BUTTON_PRESS: + case GDK_3BUTTON_PRESS: + if (!has_focus()) + grab_focus(); + break; default: break; } @@ -153,6 +159,9 @@ Widget_Time::on_focus_out_event(GdkEventFocus* event) bool Widget_Time::on_focus_in_event(GdkEventFocus* event) { - set_text(time_.get_string(fps_,App::get_time_format()|Time::FORMAT_FULL)); + // if defined, show the full time format "0h 0m 5s 0f" when the time widget gets focus + if (getenv("SYNFIG_SHOW_FULL_TIME_ON_FOCUS")) + set_text(time_.get_string(fps_,App::get_time_format()|Time::FORMAT_FULL)); + return Gtk::Entry::on_focus_in_event(event); }