]> sigrok.org Git - pulseview.git/blobdiff - pv/view/tracegroup.h
RowItemOwner: Added depth() method
[pulseview.git] / pv / view / tracegroup.h
index 0d246cee3c05471c88dbe4f99425eafcea395230..a950eac91451ba188ab0bd898430b4d83ebdef2e 100644 (file)
@@ -31,6 +31,12 @@ class TraceGroup : public RowItem, public RowItemOwner
 {
        Q_OBJECT
 
+private:
+       static const int Padding;
+       static const int Width;
+       static const int LineThickness;
+       static const QColor LineColour;
+
 public:
        /**
         * Virtual destructor
@@ -62,6 +68,12 @@ public:
         */
        virtual const pv::view::View* view() const;
 
+       /**
+        * Computes the vertical extents of the contents of this row item.
+        * @return A pair containing the minimum and maximum y-values.
+        */
+       std::pair<int, int> v_extents() const;
+
        /**
         * Paints the signal label.
         * @param p the QPainter to paint into.
@@ -98,7 +110,18 @@ public:
         */
        int owner_v_offset() const;
 
-       void update_viewport();
+       /**
+        * Returns the number of nested parents that this row item owner has.
+        */
+       unsigned int depth() const;
+
+public:
+       void appearance_changed(bool label, bool content);
+
+       void extents_changed(bool horz, bool vert);
+
+private Q_SLOTS:
+       void on_ungroup();
 };
 
 } // view