[ardour-dev] new feature: export all ranges

Andre Raue dawng at raue.info
Thu Jan 5 03:13:21 PST 2006


Andre Raue wrote:
> 
> Paul Davis wrote:
>>
>>could we get you to checkout ardour2 via the CVS snapshot and try to
>>integrate what you've done into that version?
>>
>>--p
> 
> Yes, I'll try that using the current tarball. I'll keep you informed 
> about the progress. Work will proceed in two steps:
> a) Introduce the flag IsRange.

You'll find the concerning diff below. It is based on the cvs-tarball 
that I downloaded yesterday. Possible changes at the method 
Editor::add_location_from_selection(), that I mentioned in my former 
posting, are not included.

I decided to insert another step: Next will be refactoring of the export 
dialog. I hope to get this done during the next week.

Greetings

Andre



cvs -Q diff -u -r ardour_1_9_beta1 -r export_all_ranges_0_1 -kk
---------------------------------------------------------------

Index: gtk2_ardour/editor_mouse.cc
===================================================================
RCS file: /home/andre/cvs_repository/ardour2/gtk2_ardour/editor_mouse.cc,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -r1.1.1.1 -r1.2
--- gtk2_ardour/editor_mouse.cc	5 Jan 2006 09:42:45 -0000	1.1.1.1
+++ gtk2_ardour/editor_mouse.cc	5 Jan 2006 10:57:08 -0000	1.2
@@ -4215,7 +4215,8 @@
  		case CreateRangeMarker:
  			begin_reversible_command (_("new range marker"));
  			session->add_undo (session->locations()->get_memento());
-			newloc = new Location(temp_location->start(), temp_location->end(), 
"unnamed");
+			newloc = new Location(temp_location->start(), temp_location->end(),
+									"unnamed", Location::IsRange);
  			session->locations()->add (newloc, true);
  			session->add_redo_no_execute (session->locations()->get_memento());
  			commit_reversible_command ();
Index: gtk2_ardour/location_ui.cc
===================================================================
RCS file: /home/andre/cvs_repository/ardour2/gtk2_ardour/location_ui.cc,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -r1.1.1.1 -r1.2
--- gtk2_ardour/location_ui.cc	5 Jan 2006 09:42:45 -0000	1.1.1.1
+++ gtk2_ardour/location_ui.cc	5 Jan 2006 10:57:08 -0000	1.2
@@ -784,7 +784,8 @@
  {
  	if (session) {
  		jack_nframes_t where = session->audible_frame();
-		Location *location = new Location (where, where, "unnamed");
+		Location *location = new Location (where, where, "unnamed",
+											Location::IsRange);
  		session->begin_reversible_command (_("add range marker"));
  		session->add_undo (session->locations()->get_memento());
  		session->locations()->add (location, true);
Index: libs/ardour/ardour/location.h
===================================================================
RCS file: /home/andre/cvs_repository/ardour2/libs/ardour/ardour/location.h,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -r1.1.1.1 -r1.2
--- libs/ardour/ardour/location.h	5 Jan 2006 09:42:44 -0000	1.1.1.1
+++ libs/ardour/ardour/location.h	5 Jan 2006 10:57:08 -0000	1.2
@@ -50,7 +50,8 @@
  		IsAutoLoop = 0x4,
  		IsHidden = 0x8,
  		IsCDMarker = 0x10,
-		IsEnd = 0x20
+		IsEnd = 0x20,
+		IsRange = 0x40
  	};

  	Location (jack_nframes_t sample_start,
@@ -95,6 +96,7 @@
  	bool is_hidden () { return _flags & IsHidden; }
  	bool is_cd_marker () { return _flags & IsCDMarker; }
  	bool is_end() { return _flags & IsEnd; }
+	bool is_range() { return _flags & IsRange; }

  	sigc::signal<void,Location*> name_changed;
  	sigc::signal<void,Location*> end_changed;



More information about the Ardour-Dev mailing list