X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fview%2Fheader.h;h=8e180b8a086cfb6a4e02179726b5ad665089b806;hp=36b786c69268e85e23d65f5119e6d7c029c7269a;hb=785fd8d138e5866ade499c02ea405b8852fee113;hpb=1d8dca913d07df3a53184e40246eb2e333520e31 diff --git a/pv/view/header.h b/pv/view/header.h index 36b786c6..8e180b8a 100644 --- a/pv/view/header.h +++ b/pv/view/header.h @@ -1,5 +1,5 @@ /* - * This file is part of the sigrok project. + * This file is part of the PulseView project. * * Copyright (C) 2012 Joel Holdsworth * @@ -18,14 +18,21 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -#ifndef PV_VIEW_HEADER_H -#define PV_VIEW_HEADER_H +#ifndef PULSEVIEW_PV_VIEW_HEADER_H +#define PULSEVIEW_PV_VIEW_HEADER_H + +#include +#include + +#include +#include #include namespace pv { namespace view { +class Signal; class View; class Header : public QWidget @@ -35,14 +42,49 @@ class Header : public QWidget public: Header(View &parent); +private: + boost::shared_ptr get_mouse_over_signal( + const QPoint &pt); + private: void paintEvent(QPaintEvent *event); +private: + void mousePressEvent(QMouseEvent * event); + + void mouseReleaseEvent(QMouseEvent *event); + + void mouseMoveEvent(QMouseEvent *event); + + void leaveEvent(QEvent *event); + + void contextMenuEvent(QContextMenuEvent *event); + +private slots: + void on_action_set_name_triggered(); + + void on_action_set_colour_triggered(); + + void on_signals_moved(); + +signals: + void signals_moved(); + private: View &_view; + + QPoint _mouse_point; + QPoint _mouse_down_point; + + std::list, int> > + _drag_sigs; + + boost::shared_ptr _context_signal; + QAction *_action_set_name; + QAction *_action_set_colour; }; } // namespace view } // namespace pv -#endif // PV_VIEW_HEADER_H +#endif // PULSEVIEW_PV_VIEW_HEADER_H