]> sigrok.org Git - pulseview.git/blobdiff - pv/view/decode/annotation.h
Moved all srd commands into decode thread, implemented error messages
[pulseview.git] / pv / view / decode / annotation.h
index 4e24121c50622923e5b0284cc8bd475a777d9261..078c12a19190d47ed7baeedb4c28fe79b84e7b25 100644 (file)
@@ -33,12 +33,31 @@ namespace decode {
 
 class Annotation
 {
+private:
+       static const double EndCapWidth;
+       static const int DrawPadding;
+
+       static const QColor Colours[7];
+
 public:
        Annotation(const srd_proto_data *const pdata);
 
+       void paint(QPainter &p, QColor text_colour, int text_height, int left,
+               int right, double samples_per_pixel, double pixels_offset,
+               int y);
+
+private:
+       void draw_instant(QPainter &p, QColor fill, QColor outline,
+               QColor text_color, int h, double x, int y);
+
+       void draw_range(QPainter &p, QColor fill, QColor outline,
+               QColor text_color, int h, double start,
+               double end, int y);
+
 private:
        uint64_t _start_sample;
        uint64_t _end_sample;
+       int _format;
        std::vector<QString> _annotations; 
 };