Trace: Converted on_hover_point_changed signal to direct notification
[pulseview.git] / pv / view / decodetrace.h
index e5a9c0b6ad03b4cfbb215576ad5d4d40977883ca..96008b2b135503c41fa5193d24616b43b04e9718 100644 (file)
@@ -30,6 +30,7 @@
 #include <QSignalMapper>
 
 #include <pv/prop/binding/decoderoptions.h>
+#include <pv/data/decode/row.h>
 
 struct srd_channel;
 struct srd_decoder;
@@ -153,18 +154,12 @@ private:
         */
        std::pair<uint64_t, uint64_t> get_sample_range(int x_start, int x_end) const;
 
-       bool hover_point_is_over_trace();
+       int get_row_at_point(const QPoint &point);
 
-       int get_row_at_hover_point();
-
-       const QString get_annotation_at_hover_point();
-
-       void show_hover_annotation();
+       const QString get_annotation_at_point(const QPoint &point);
 
        void hide_hover_annotation();
 
-       void hover_point_changed();
-
        void create_decoder_form(int index,
                std::shared_ptr<pv::data::decode::Decoder> &dec,
                QWidget *parent, QFormLayout *form);
@@ -178,6 +173,9 @@ private:
 
        void commit_channels();
 
+public:
+       void hover_point_changed();
+
 private Q_SLOTS:
        void on_new_decode_data();
 
@@ -203,7 +201,7 @@ private:
        std::list<ChannelSelector> _channel_selectors;
        std::vector<pv::widgets::DecoderGroupBox*> _decoder_forms;
 
-       std::vector<QString> _cur_row_headings;
+       std::vector<data::decode::Row> _visible_rows;
        int _text_height, _row_height;
 
        QSignalMapper _delete_mapper, _show_hide_mapper;