X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=gtk2_ardour%2Feditor_group_tabs.h;h=c927ab2c42e42c4a24f4bdda48663a3f303fff48;hb=c833b560296084f5887e3c37607cd5a14580be05;hp=5bf4a714398f4aefafe78eccaad9db7bb7c16869;hpb=3cdc0d104a407ad29de68bbed624fdd80bb1b1f1;p=ardour.git diff --git a/gtk2_ardour/editor_group_tabs.h b/gtk2_ardour/editor_group_tabs.h index 5bf4a71439..c927ab2c42 100644 --- a/gtk2_ardour/editor_group_tabs.h +++ b/gtk2_ardour/editor_group_tabs.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2009 Paul Davis + Copyright (C) 2009 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 @@ -17,22 +17,29 @@ */ -#include "cairo_widget.h" +#ifndef __gtk_ardour_editor_group_tabs_h__ +#define __gtk_ardour_editor_group_tabs_h__ + +#include +#include "group_tabs.h" class Editor; -class EditorGroupTabs : public CairoWidget +class EditorGroupTabs : public GroupTabs, public EditorComponent { public: EditorGroupTabs (Editor *); - void set_session (ARDOUR::Session *); - private: - void on_size_request (Gtk::Requisition *); - bool on_button_press_event (GdkEventButton *); - void render (cairo_t *); - void draw_group (cairo_t *, int32_t, int32_t, ARDOUR::RouteGroup* , Gdk::Color const &); - - Editor* _editor; + std::list compute_tabs () const; + void draw_tab (cairo_t *, Tab const &); + double primary_coordinate (double, double) const; + ARDOUR::RouteList routes_for_tab (Tab const *) const; + double extent () const { + return get_height(); + } + void add_menu_items (Gtk::Menu *, ARDOUR::RouteGroup *); + ARDOUR::RouteList selected_routes () const; }; + +#endif // __gtk_ardour_editor_group_tabs_h__