projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
TraceGroup: Implemented stacking
[pulseview.git]
/
pv
/
view
/
header.h
diff --git
a/pv/view/header.h
b/pv/view/header.h
index e5cd241f6308bc79a2bc64f6a92b5382eb0993e8..909c04ae353b55c6825d3e9b6d0735e67e516392 100644
(file)
--- a/
pv/view/header.h
+++ b/
pv/view/header.h
@@
-21,52
+21,73
@@
#ifndef PULSEVIEW_PV_VIEW_HEADER_H
#define PULSEVIEW_PV_VIEW_HEADER_H
#ifndef PULSEVIEW_PV_VIEW_HEADER_H
#define PULSEVIEW_PV_VIEW_HEADER_H
-#include <boost/shared_ptr.hpp>
+#include <list>
+#include <memory>
+#include <utility>
-#include
<QWidget>
+#include
"marginwidget.h"
namespace pv {
namespace view {
namespace pv {
namespace view {
-class
Signal
;
+class
RowItem
;
class View;
class View;
-class Header : public
Q
Widget
+class Header : public
Margin
Widget
{
Q_OBJECT
{
Q_OBJECT
+private:
+ static const int Padding;
+
public:
Header(View &parent);
public:
Header(View &parent);
+ QSize sizeHint() const;
+
+ /**
+ * The horizontal offset, relative to the left edge of the widget,
+ * where the arrows of the trace labels end.
+ */
+ static const int BaselineOffset;
+
private:
private:
-
boost::shared_ptr<pv::view::Signal> get_mouse_over_signal
(
+
std::shared_ptr<pv::view::RowItem> get_mouse_over_row_item
(
const QPoint &pt);
const QPoint &pt);
+ void clear_selection();
+
+ void show_popup(const std::shared_ptr<RowItem> &item);
+
private:
void paintEvent(QPaintEvent *event);
private:
private:
void paintEvent(QPaintEvent *event);
private:
+ void mouseLeftPressEvent(QMouseEvent *event);
void mousePressEvent(QMouseEvent * event);
void mousePressEvent(QMouseEvent * event);
+ void mouseLeftReleaseEvent(QMouseEvent *event);
+ void mouseReleaseEvent(QMouseEvent *event);
+
void mouseMoveEvent(QMouseEvent *event);
void leaveEvent(QEvent *event);
void contextMenuEvent(QContextMenuEvent *event);
void mouseMoveEvent(QMouseEvent *event);
void leaveEvent(QEvent *event);
void contextMenuEvent(QContextMenuEvent *event);
-private slots:
- void on_action_set_name_triggered();
+ void keyPressEvent(QKeyEvent *e);
- void on_action_set_colour_triggered();
+private Q_SLOTS:
+ void on_signals_moved();
-
private
:
-
View &_view
;
+
Q_SIGNALS
:
+
void signals_moved()
;
+private:
QPoint _mouse_point;
QPoint _mouse_point;
-
- boost::shared_ptr<Signal> _context_signal;
- QAction *_action_set_name;
- QAction *_action_set_colour;
+ QPoint _mouse_down_point;
+ std::shared_ptr<RowItem> _mouse_down_item;
+ bool _dragging;
};
} // namespace view
};
} // namespace view