another TLSF vs realloc-pool shootout
[ardour.git] / gtk2_ardour / location_ui.h
index b24865b6cc9936b2e34f62f29d406776f16db903..cdbc952e6c11821cbf6bacb727d0a112b3367363 100644 (file)
@@ -26,7 +26,6 @@
 #include <gtkmm/table.h>
 #include <gtkmm/entry.h>
 #include <gtkmm/label.h>
-#include <gtkmm/paned.h>
 #include <gtkmm/scrolledwindow.h>
 
 #include "pbd/signals.h"
 #include "ardour/location.h"
 #include "ardour/session_handle.h"
 
+#include <gtkmm2ext/pane.h>
+
+#include "ardour_button.h"
 #include "ardour_window.h"
 #include "audio_clock.h"
 
 namespace ARDOUR {
-       class LocationStack;
        class Location;
 }
 
@@ -81,11 +82,13 @@ class LocationEditRow  : public Gtk::HBox, public ARDOUR::SessionHandlePtr
 
        Gtk::HBox     start_hbox;
        AudioClock    start_clock;
-       Gtk::Button   start_to_playhead_button;
+       ArdourButton  start_to_playhead_button;
+       ArdourButton  locate_to_start_button;
 
        Gtk::HBox     end_hbox;
        AudioClock    end_clock;
-       Gtk::Button   end_to_playhead_button;
+       ArdourButton  end_to_playhead_button;
+       ArdourButton  locate_to_end_button;
 
        AudioClock    length_clock;
        Gtk::CheckButton cd_check_button;
@@ -93,7 +96,7 @@ class LocationEditRow  : public Gtk::HBox, public ARDOUR::SessionHandlePtr
        Gtk::CheckButton lock_check_button;
        Gtk::CheckButton glue_check_button;
 
-       Gtk::Button   remove_button;
+       ArdourButton   remove_button;
 
        Gtk::HBox     cd_track_details_hbox;
        Gtk::Entry    isrc_entry;
@@ -119,6 +122,7 @@ class LocationEditRow  : public Gtk::HBox, public ARDOUR::SessionHandlePtr
        void composer_entry_changed ();
 
        void to_playhead_button_pressed (LocationPart part);
+       void locate_button_pressed (LocationPart part);
 
        void clock_changed (LocationPart part);
        bool locate_to_clock (GdkEventButton*, AudioClock*);
@@ -163,7 +167,6 @@ class LocationUI : public Gtk::HBox, public ARDOUR::SessionHandlePtr
        XMLNode & get_state () const;
 
   private:
-       ARDOUR::LocationStack* locations;
        /** set to the location that has just been created with the LocationUI `add' button
            (if Config->get_name_new_markers() is true); if it is non-0, the name entry of
            the location is given the focus by location_added().
@@ -176,7 +179,7 @@ class LocationUI : public Gtk::HBox, public ARDOUR::SessionHandlePtr
        LocationEditRow      punch_edit_row;
        Gtk::VBox loop_punch_box;
 
-       Gtk::VPaned loc_range_panes;
+       Gtkmm2ext::VPane loc_range_panes;
 
        Gtk::VBox  loc_frame_box;
        Gtk::Button add_location_button;