X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fview%2Fheader.hpp;h=6a4c9a39521863e9aac6e111d08b21b0ebcdbf5e;hp=48e06a7badab1ef16acc7c83a836bb44f088b670;hb=c1a6513b912e90ebcca2dba4453aa03fbddcfb58;hpb=786b76785856c6cf8f5916c0b8d76a61695762f9 diff --git a/pv/view/header.hpp b/pv/view/header.hpp index 48e06a7b..6a4c9a39 100644 --- a/pv/view/header.hpp +++ b/pv/view/header.hpp @@ -14,12 +14,11 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * along with this program; if not, see . */ -#ifndef PULSEVIEW_PV_VIEW_HEADER_H -#define PULSEVIEW_PV_VIEW_HEADER_H +#ifndef PULSEVIEW_PV_VIEWS_TRACEVIEW_HEADER_HPP +#define PULSEVIEW_PV_VIEWS_TRACEVIEW_HEADER_HPP #include #include @@ -27,11 +26,16 @@ #include "marginwidget.hpp" +using std::shared_ptr; +using std::vector; + namespace pv { -namespace view { +namespace views { +namespace TraceView { -class RowItem; +class TraceTreeItem; class View; +class ViewItem; class Header : public MarginWidget { @@ -52,51 +56,36 @@ public: */ QSize extended_size_hint() const; +private: /** - * The horizontal offset, relative to the left edge of the widget, - * where the arrows of the trace labels end. + * Gets the row items. */ - static const int BaselineOffset; - -private: - std::shared_ptr get_mouse_over_item( - const QPoint &pt); + vector< shared_ptr > items(); - void clear_selection(); + /** + * Gets the first view item which has a label that contains @c pt . + * @param pt the point to search with. + * @return the view item that has been found, or and empty + * @c shared_ptr if no item was found. + */ + shared_ptr get_mouse_over_item(const QPoint &pt); private: void paintEvent(QPaintEvent *event); private: - void mouseLeftPressEvent(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 keyPressEvent(QKeyEvent *e); + void keyPressEvent(QKeyEvent *event); private Q_SLOTS: - void on_signals_moved(); - void on_group(); void on_ungroup(); - -Q_SIGNALS: - void signals_moved(); - -private: - std::shared_ptr mouse_down_item_; }; -} // namespace view +} // namespace TraceView +} // namespace views } // namespace pv -#endif // PULSEVIEW_PV_VIEW_HEADER_H +#endif // PULSEVIEW_PV_VIEWS_TRACEVIEW_HEADER_HPP