X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fview%2Fheader.h;h=024227820b6635008216b38b290ec230fce528d8;hb=0c0218fd70bde15f2ccd20f39f6d3ddddd3e1691;hp=e5cd241f6308bc79a2bc64f6a92b5382eb0993e8;hpb=e3374498baf2b2a05889cab370442ff326b390b3;p=pulseview.git diff --git a/pv/view/header.h b/pv/view/header.h index e5cd241f..02422782 100644 --- a/pv/view/header.h +++ b/pv/view/header.h @@ -22,16 +22,20 @@ #define PULSEVIEW_PV_VIEW_HEADER_H #include +#include -#include +#include +#include + +#include "marginwidget.h" namespace pv { namespace view { -class Signal; +class Trace; class View; -class Header : public QWidget +class Header : public MarginWidget { Q_OBJECT @@ -39,15 +43,19 @@ public: Header(View &parent); private: - boost::shared_ptr get_mouse_over_signal( + boost::shared_ptr get_mouse_over_trace( 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); @@ -55,18 +63,20 @@ private: void contextMenuEvent(QContextMenuEvent *event); private slots: - void on_action_set_name_triggered(); + void on_signals_changed(); - void on_action_set_colour_triggered(); + void on_signals_moved(); -private: - View &_view; +signals: + void signals_moved(); +private: QPoint _mouse_point; + QPoint _mouse_down_point; + bool _dragging; - boost::shared_ptr _context_signal; - QAction *_action_set_name; - QAction *_action_set_colour; + std::list, int> > + _drag_traces; }; } // namespace view