]> sigrok.org Git - pulseview.git/blobdiff - pv/view/cursor.hpp
Change namespace for the trace view and implement ViewBase
[pulseview.git] / pv / view / cursor.hpp
index 8679a2866c3b986e33532b71a660abc651dba031..319d3a746aaae4f74c254cfb294891bd3025efae 100644 (file)
@@ -18,8 +18,8 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
  */
 
-#ifndef PULSEVIEW_PV_VIEW_CURSOR_H
-#define PULSEVIEW_PV_VIEW_CURSOR_H
+#ifndef PULSEVIEW_PV_VIEWS_TRACEVIEW_CURSOR_HPP
+#define PULSEVIEW_PV_VIEWS_TRACEVIEW_CURSOR_HPP
 
 #include "timemarker.hpp"
 
 class QPainter;
 
 namespace pv {
-namespace view {
+namespace views {
+namespace TraceView {
 
 class Cursor : public TimeMarker
 {
        Q_OBJECT
 
 public:
-       static const QColor LineColour;
        static const QColor FillColour;
-       static const QColor HighlightColour;
-       static const QColor TextColour;
-
-       static const int Offset;
-
-       static const int ArrowSize;
 
 public:
        /**
@@ -56,31 +50,28 @@ public:
 
 public:
        /**
-        * Gets the marker label rectangle.
-        * @param rect The rectangle of the ruler client area.
-        * @return Returns the label rectangle.
+        * Returns true if the item is visible and enabled.
         */
-       QRectF get_label_rect(const QRect &rect) const;
+       bool enabled() const;
 
        /**
-        * Paints the cursor's label to the ruler.
-        * @param p The painter to draw with.
+        * Gets the text to show in the marker.
+        */
+       QString get_text() const;
+
+       /**
+        * Gets the marker label rectangle.
         * @param rect The rectangle of the ruler client area.
-        * @param prefix The index of the SI prefix to use.
+        * @return Returns the label rectangle.
         */
-       void paint_label(QPainter &p, const QRect &rect,
-               unsigned int prefix);
+       QRectF label_rect(const QRectF &rect) const;
 
 private:
-       void compute_text_size(QPainter &p, unsigned int prefix);
-
        std::shared_ptr<Cursor> get_other_cursor() const;
-
-private:
-       QSizeF text_size_;
 };
 
-} // namespace view
+} // namespace TraceView
+} // namespace views
 } // namespace pv
 
-#endif // PULSEVIEW_PV_VIEW_CURSOR_H
+#endif // PULSEVIEW_PV_VIEWS_TRACEVIEW_CURSOR_HPP