X-Git-Url: http://git.code-monkey.de/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fview%2Ftrace.hpp;fp=pv%2Fview%2Ftrace.hpp;h=0000000000000000000000000000000000000000;hp=b6b15198451e74bbfd014e5591f8d451da531dfc;hb=1573bf16ba50d1c023ad3a9ce596f0ab6eaeacff;hpb=4c7a19d3d7049bcc9fb3185ce2bc91333a7ca9e1 diff --git a/pv/view/trace.hpp b/pv/view/trace.hpp deleted file mode 100644 index b6b1519..0000000 --- a/pv/view/trace.hpp +++ /dev/null @@ -1,147 +0,0 @@ -/* - * This file is part of the PulseView project. - * - * Copyright (C) 2013 Joel Holdsworth - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * 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, see . - */ - -#ifndef PULSEVIEW_PV_VIEWS_TRACEVIEW_TRACE_HPP -#define PULSEVIEW_PV_VIEWS_TRACEVIEW_TRACE_HPP - -#include -#include -#include -#include -#include - -#include - -#include "tracetreeitem.hpp" - -#include "pv/data/signalbase.hpp" - -using std::shared_ptr; - -class QFormLayout; - -namespace pv { - -namespace data { -class SignalBase; -} - -namespace widgets { -class Popup; -} - -namespace views { -namespace TraceView { - -class Trace : public TraceTreeItem -{ - Q_OBJECT - -private: - static const QPen AxisPen; - static const int LabelHitPadding; - - static const QColor BrightGrayBGColour; - static const QColor DarkGrayBGColour; - -protected: - Trace(shared_ptr channel); - -public: - /** - * Returns the underlying SignalBase instance. - */ - shared_ptr base() const; - - /** - * Sets the name of the signal. - */ - virtual void set_name(QString name); - - /** - * Set the colour of the signal. - */ - virtual void set_colour(QColor colour); - - /** - * Paints the signal label. - * @param p the QPainter to paint into. - * @param rect the rectangle of the header area. - * @param hover true if the label is being hovered over by the mouse. - */ - virtual void paint_label(QPainter &p, const QRect &rect, bool hover); - - virtual QMenu* create_context_menu(QWidget *parent); - - pv::widgets::Popup* create_popup(QWidget *parent); - - /** - * Computes the outline rectangle of a label. - * @param rect the rectangle of the header area. - * @return Returns the rectangle of the signal label. - */ - QRectF label_rect(const QRectF &rect) const; - -protected: - /** - * Paints the background layer of the signal with a QPainter. - * @param p The QPainter to paint into. - * @param pp The painting parameters object to paint with. - */ - virtual void paint_back(QPainter &p, ViewItemPaintParams &pp); - - /** - * Paints a zero axis across the viewport. - * @param p the QPainter to paint into. - * @param pp the painting parameters object to paint with. - * @param y the y-offset of the axis. - */ - void paint_axis(QPainter &p, ViewItemPaintParams &pp, int y); - - void add_colour_option(QWidget *parent, QFormLayout *form); - - void create_popup_form(); - - virtual void populate_popup_form(QWidget *parent, QFormLayout *form); - -protected Q_SLOTS: - virtual void on_name_changed(const QString &text); - - virtual void on_colour_changed(const QColor &colour); - - void on_popup_closed(); - -private Q_SLOTS: - void on_nameedit_changed(const QString &name); - - void on_colouredit_changed(const QColor &colour); - -protected: - shared_ptr base_; - -private: - pv::widgets::Popup *popup_; - QFormLayout *popup_form_; -}; - -} // namespace TraceView -} // namespace views -} // namespace pv - -#endif // PULSEVIEW_PV_VIEWS_TRACEVIEW_TRACE_HPP