X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fregion_layering_order_editor.h;h=58ef4f8e0e9d9d75d7f277b495182cd7eb02867b;hb=197f5460dff915846cc2a1ce0d5a2118de4a78a4;hp=783d05804cfb9b6a8c5b1108abda5dfa68dfb799;hpb=ed626628b54e67dd9621c08d82a42afaed00c7ac;p=ardour.git diff --git a/gtk2_ardour/region_layering_order_editor.h b/gtk2_ardour/region_layering_order_editor.h index 783d05804c..58ef4f8e0e 100644 --- a/gtk2_ardour/region_layering_order_editor.h +++ b/gtk2_ardour/region_layering_order_editor.h @@ -1,3 +1,22 @@ +/* + Copyright (C) 2011-2012 Paul Davis + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +*/ + #ifndef __gtk2_ardour_region_layering_order_editor_h__ #define __gtk2_ardour_region_layering_order_editor_h__ @@ -9,7 +28,7 @@ #include "ardour/region.h" #include "ardour/playlist.h" -#include "ardour_dialog.h" +#include "ardour_window.h" #include "audio_clock.h" class PublicEditor; @@ -18,33 +37,32 @@ namespace ARDOUR { class Session; } -class RegionLayeringOrderEditor : public ArdourDialog +class RegionLayeringOrderEditor : public ArdourWindow { - public: +public: RegionLayeringOrderEditor (PublicEditor&); virtual ~RegionLayeringOrderEditor (); - void set_context(const std::string& name, ARDOUR::Session* s, const boost::shared_ptr & pl, ARDOUR::framepos_t position); + void set_context (const std::string &, ARDOUR::Session *, TimeAxisView *, boost::shared_ptr, ARDOUR::samplepos_t); void maybe_present (); - protected: +protected: virtual bool on_key_press_event (GdkEventKey* event); - private: - boost::shared_ptr playlist; - framepos_t position; +private: + samplepos_t position; bool in_row_change; uint32_t regions_at_position; - PBD::ScopedConnection playlist_modified_connection; + PBD::ScopedConnection playlist_modified_connection; struct LayeringOrderColumns : public Gtk::TreeModel::ColumnRecord { LayeringOrderColumns () { add (name); - add (region); + add (region_view); } Gtk::TreeModelColumn name; - Gtk::TreeModelColumn > region; + Gtk::TreeModelColumn region_view; }; LayeringOrderColumns layering_order_columns; Glib::RefPtr layering_order_model; @@ -55,8 +73,9 @@ class RegionLayeringOrderEditor : public ArdourDialog Gtk::Label clock_label; Gtk::ScrolledWindow scroller; // Available layers PublicEditor& editor; + TimeAxisView* _time_axis_view; - void row_activated (const Gtk::TreeModel::Path& path, Gtk::TreeViewColumn* column); + void row_selected (); void refill (); void playlist_modified (); };