summaryrefslogtreecommitdiff
path: root/gtk2_ardour/region_editor.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2011-03-02 22:43:19 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2011-03-02 22:43:19 +0000
commitb3ddcbcee491a48091f9b4b927c953cbcd0e8963 (patch)
tree8b3298021871f58c3bb468792a5f8ef3cc678220 /gtk2_ardour/region_editor.cc
parent10b224790b5a371d70f99d84b38ff82b82680e97 (diff)
group clocks in location UI and region editor so that they all change modes together
git-svn-id: svn://localhost/ardour2/branches/3.0@9048 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/region_editor.cc')
-rwxr-xr-xgtk2_ardour/region_editor.cc47
1 files changed, 31 insertions, 16 deletions
diff --git a/gtk2_ardour/region_editor.cc b/gtk2_ardour/region_editor.cc
index c95d9bbd20..5e9f13db43 100755
--- a/gtk2_ardour/region_editor.cc
+++ b/gtk2_ardour/region_editor.cc
@@ -30,10 +30,11 @@
#include <gtkmm/listviewtext.h>
#include <cmath>
-#include "region_editor.h"
#include "ardour_ui.h"
-#include "utils.h"
+#include "clock_group.h"
#include "gui_thread.h"
+#include "region_editor.h"
+#include "utils.h"
#include "i18n.h"
@@ -43,22 +44,31 @@ using namespace std;
using namespace Gtkmm2ext;
RegionEditor::RegionEditor (Session* s, boost::shared_ptr<Region> r)
- : ArdourDialog (_("Region")),
- _table (9, 2),
- _table_row (0),
- _region (r),
- name_label (_("Name:")),
- audition_button (_("Play")),
- position_clock (X_("regionposition"), true, X_("RegionEditorClock"), true, false),
- end_clock (X_("regionend"), true, X_("RegionEditorClock"), true, false),
- length_clock (X_("regionlength"), true, X_("RegionEditorClock"), true, false, true),
- sync_offset_relative_clock (X_("regionsyncoffsetrelative"), true, X_("RegionEditorClock"), true, false),
- sync_offset_absolute_clock (X_("regionsyncoffsetabsolute"), true, X_("RegionEditorClock"), true, false),
- /* XXX cannot file start yet */
- start_clock (X_("regionstart"), true, X_("RegionEditorClock"), false, false),
- _sources (1)
+ : ArdourDialog (_("Region"))
+ , _table (9, 2)
+ , _table_row (0)
+ , _region (r)
+ , name_label (_("Name:"))
+ , audition_button (_("Play"))
+ , _clock_group (new ClockGroup)
+ , position_clock (X_("regionposition"), true, X_("RegionEditorClock"), true, false)
+ , end_clock (X_("regionend"), true, X_("RegionEditorClock"), true, false)
+ , length_clock (X_("regionlength"), true, X_("RegionEditorClock"), true, false, true)
+ , sync_offset_relative_clock (X_("regionsyncoffsetrelative"), true, X_("RegionEditorClock"), true, false)
+ , sync_offset_absolute_clock (X_("regionsyncoffsetabsolute"), true, X_("RegionEditorClock"), true, false)
+ /* XXX cannot file start yet */
+ , start_clock (X_("regionstart"), true, X_("RegionEditorClock"), false, false)
+ , _sources (1)
{
set_session (s);
+
+ _clock_group->set_clock_mode (AudioClock::Frames);
+ _clock_group->add (position_clock);
+ _clock_group->add (end_clock);
+ _clock_group->add (length_clock);
+ _clock_group->add (sync_offset_relative_clock);
+ _clock_group->add (sync_offset_absolute_clock);
+ _clock_group->add (start_clock);
position_clock.set_session (_session);
end_clock.set_session (_session);
@@ -186,6 +196,11 @@ RegionEditor::RegionEditor (Session* s, boost::shared_ptr<Region> r)
connect_editor_events ();
}
+RegionEditor::~RegionEditor ()
+{
+ delete _clock_group;
+}
+
void
RegionEditor::region_changed (const PBD::PropertyChange& what_changed)
{