#include <string>
#include <list>
+#include <gtkmm/separator.h>
#include "pbd/error.h"
#include "pbd/convert.h"
#include "pbd/stacktrace.h"
#include "pbd/unwind.h"
-#include <gtkmm2ext/doi.h>
-#include <gtkmm2ext/utils.h>
-#include <gtkmm2ext/selector.h>
+#include "ardour/profile.h"
+
+#include "gtkmm2ext/colors.h"
+#include "gtkmm2ext/doi.h"
+#include "gtkmm2ext/utils.h"
#include "canvas/canvas.h"
#include "canvas/rectangle.h"
#include "canvas/debug.h"
#include "canvas/utils.h"
-#include "canvas/colors.h"
-#include "ardour/profile.h"
+#include "widgets/tooltips.h"
#include "ardour_dialog.h"
#include "floating_text_entry.h"
#include "streamview.h"
#include "editor_drag.h"
#include "editor.h"
-#include "tooltips.h"
#include "ui_config.h"
#include "pbd/i18n.h"
using namespace Gtk;
using namespace Gdk;
using namespace ARDOUR;
-using namespace ARDOUR_UI_UTILS;
using namespace PBD;
using namespace Editing;
using namespace ArdourCanvas;
+using namespace ArdourWidgets;
using Gtkmm2ext::Keyboard;
#define TOP_LEVEL_WIDGET controls_ebox
_canvas_separator = new ArdourCanvas::Line(_canvas_display);
CANVAS_DEBUG_NAME (_canvas_separator, "separator for TAV");
_canvas_separator->set (ArdourCanvas::Duple(0.0, 0.0), ArdourCanvas::Duple(ArdourCanvas::COORD_MAX, 0.0));
- _canvas_separator->set_outline_color(ArdourCanvas::rgba_to_color (0, 0, 0, 1.0));
+ _canvas_separator->set_outline_color(Gtkmm2ext::rgba_to_color (0, 0, 0, 1.0));
_canvas_separator->set_outline_width(1.0);
_canvas_separator->hide();
set_tooltip (name_label, _("Track/Bus name (double click to edit)"));
{
- std::auto_ptr<Gtk::Entry> an_entry (new Gtkmm2ext::FocusEntry);
+ std::auto_ptr<Gtk::Entry> an_entry (new FocusEntry);
an_entry->set_name (X_("TrackNameEditor"));
Gtk::Requisition req;
an_entry->size_request (req);
}
Gtk::Window* toplevel = (Gtk::Window*) control_parent->get_toplevel();
- FloatingTextEntry* fte = new FloatingTextEntry (toplevel, name_label.get_text ());
+ FloatingTextEntry* fte = new FloatingTextEntry (toplevel, name ());
fte->set_name ("TrackNameEditor");
fte->use_text.connect (sigc::mem_fun (*this, &TimeAxisView::end_name_edit));
*/
int x, y;
- int wx, wy;
+ int wx, wy;
- name_label.translate_coordinates (*toplevel, 0, 0, x, y);
- toplevel->get_window()->get_origin (wx, wy);
+ name_label.translate_coordinates (*toplevel, 0, 0, x, y);
+ toplevel->get_window()->get_origin (wx, wy);
- fte->move (wx + x, wy + y);
+ fte->move (wx + x, wy + y);
fte->present ();
}
for (Children::iterator i = children.begin(); i != children.end(); ++i) {
+ if (!(*i)->selected () && !(*i)->propagate_time_selection ()) {
+ continue;
+ }
(*i)->show_selection (ts);
}
show_selection (ts);
for (Children::iterator i = children.begin(); i != children.end(); ++i) {
+ if (!(*i)->selected () && !(*i)->propagate_time_selection ()) {
+ continue;
+ }
(*i)->show_selection (ts);
}
}
* @param result Filled in with selectable things.
*/
void
-TimeAxisView::get_selectables (framepos_t /*start*/, framepos_t /*end*/, double /*top*/, double /*bot*/, list<Selectable*>& /*result*/, bool /*within*/)
+TimeAxisView::get_selectables (framepos_t start, framepos_t end, double top, double bot, list<Selectable*>& results, bool within)
{
- return;
+ for (Children::iterator i = children.begin(); i != children.end(); ++i) {
+ if (!(*i)->hidden()) {
+ (*i)->get_selectables (start, end, top, bot, results, within);
+ }
+ }
}
void
-TimeAxisView::get_inverted_selectables (Selection& /*sel*/, list<Selectable*>& /*result*/)
+TimeAxisView::set_selected_points (PointSelection& points)
{
- return;
+ for (Children::iterator i = children.begin(); i != children.end(); ++i) {
+ (*i)->set_selected_points (points);
+ }
+}
+
+void
+TimeAxisView::get_inverted_selectables (Selection& sel, list<Selectable*>& results)
+{
+ for (Children::iterator i = children.begin(); i != children.end(); ++i) {
+ if (!(*i)->hidden()) {
+ (*i)->get_inverted_selectables (sel, results);
+ }
+ }
}
void
/** @return Child time axis views that are not hidden */
TimeAxisView::Children
-TimeAxisView::get_child_list ()
+TimeAxisView::get_child_list () const
{
Children c;
- for (Children::iterator i = children.begin(); i != children.end(); ++i) {
+ for (Children::const_iterator i = children.begin(); i != children.end(); ++i) {
if (!(*i)->hidden()) {
c.push_back(*i);
}