remove long-lived bug that tried to make a non-existent action insensitive
[ardour.git] / gtk2_ardour / port_matrix_body.h
index 341957a38a66e80a6e950a558aa0882cc7e975c3..23d07c6ff3f9c083e0f73f333278df9f0260a4e1 100644 (file)
@@ -28,6 +28,7 @@ class PortMatrix;
 class PortMatrixColumnLabels;
 class PortMatrixRowLabels;
 class PortMatrixGrid;
+class PortMatrixComponent;
 
 /** The main body of the port matrix.  It is made up of three parts:
  *  column labels, grid and row labels, each drawn using cairo.
@@ -57,7 +58,8 @@ public:
        void rebuild_and_draw_grid ();
 
        void set_mouseover (PortMatrixNode const &);
-       PortMatrixNode mouseover () const {
+       void set_mouseover (std::list<PortMatrixNode> const &);
+       std::list<PortMatrixNode> mouseover () const {
                return _mouseover;
        }
 
@@ -65,6 +67,11 @@ public:
        void component_size_changed ();
        std::pair<uint32_t, uint32_t> max_size () const;
 
+       uint32_t column_labels_border_x () const;
+       uint32_t column_labels_height () const;
+
+       sigc::signal<void> DimensionsChanged;
+
 protected:
        bool on_expose_event (GdkEventExpose *);
        void on_size_request (Gtk::Requisition *);
@@ -85,20 +92,19 @@ private:
        PortMatrixColumnLabels* _column_labels;
        PortMatrixRowLabels* _row_labels;
        PortMatrixGrid* _grid;
+       std::list<PortMatrixComponent*> _components;
 
        uint32_t _alloc_width; ///< allocated width
        uint32_t _alloc_height; ///< allocated height
-       Gdk::Rectangle _column_labels_rect;
-       Gdk::Rectangle _row_labels_rect;
-       Gdk::Rectangle _grid_rect;
        uint32_t _xoffset;
        uint32_t _yoffset;
+       uint32_t _column_labels_border_x;
+       uint32_t _column_labels_height;
 
-       PortMatrixNode _mouseover;
-       bool _mouse_over_grid;
+       std::list<PortMatrixNode> _mouseover;
        bool _ignore_component_size_changed;
 
-       std::list<sigc::connection> _bundle_connections;
+       PBD::ScopedConnectionList _bundle_connections;
 };
 
 #endif