X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fview%2Fheader.h;h=22e8e4dbd2c3dbba58908d6a7a7a1208339bdfb0;hb=82c7f64018db2a90f44704e55ba469151522762f;hp=b9cf8da3e76560bc21b0ded392ab85417458acc8;hpb=b3b57abc4fcfea1471529e9d116eaf11905f6639;p=pulseview.git diff --git a/pv/view/header.h b/pv/view/header.h index b9cf8da3..22e8e4db 100644 --- a/pv/view/header.h +++ b/pv/view/header.h @@ -22,28 +22,40 @@ #define PULSEVIEW_PV_VIEW_HEADER_H #include +#include -#include +#include +#include -namespace pv { - -class Signal; +#include "marginwidget.h" +namespace pv { namespace view { +class Signal; class View; -class Header : public QWidget +class Header : public MarginWidget { Q_OBJECT public: Header(View &parent); +private: + boost::shared_ptr get_mouse_over_signal( + const QPoint &pt); + + void clear_selection(); + private: void paintEvent(QPaintEvent *event); private: + void mousePressEvent(QMouseEvent * event); + + void mouseReleaseEvent(QMouseEvent *event); + void mouseMoveEvent(QMouseEvent *event); void leaveEvent(QEvent *event); @@ -51,16 +63,25 @@ private: void contextMenuEvent(QContextMenuEvent *event); private slots: + void on_signals_changed(); + void on_action_set_name_triggered(); void on_action_set_colour_triggered(); -private: - View &_view; + void on_signals_moved(); +signals: + void signals_moved(); + +private: QPoint _mouse_point; + QPoint _mouse_down_point; + + std::list, int> > + _drag_sigs; - boost::shared_ptr _context_signal; + boost::shared_ptr _context_signal; QAction *_action_set_name; QAction *_action_set_colour; };