]> sigrok.org Git - pulseview.git/blobdiff - pv/view/ruler.hpp
Modified header guards to match file names
[pulseview.git] / pv / view / ruler.hpp
index 864d611dda4607479d6bbc2f55394d5fab6d0071..50bbf2cdc0038075d8fbdea98cc0ba2b3af938fa 100644 (file)
@@ -18,8 +18,8 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
  */
 
-#ifndef PULSEVIEW_PV_VIEW_RULER_H
-#define PULSEVIEW_PV_VIEW_RULER_H
+#ifndef PULSEVIEW_PV_VIEW_RULER_HPP
+#define PULSEVIEW_PV_VIEW_RULER_HPP
 
 #include <memory>
 
@@ -29,6 +29,7 @@ namespace pv {
 namespace view {
 
 class TimeItem;
+class ViewItem;
 
 class Ruler : public MarginWidget
 {
@@ -44,20 +45,9 @@ private:
        /// Height of the hover arrow in multiples of the text height
        static const float HoverArrowSize;
 
-       static const int Padding;
-
-       /**
-        * The vertical offset, relative to the bottom line of the widget,
-        * where the arrows of the cursor labels end.
-        */
-       static const int BaselineOffset;
-
 public:
        Ruler(View &parent);
 
-public:
-       void clear_selection();
-
 public:
        QSize sizeHint() const;
 
@@ -69,16 +59,24 @@ public:
        QSize extended_size_hint() const;
 
 private:
-       void paintEvent(QPaintEvent *event);
+       /**
+        * Gets the time items.
+        */
+       std::vector< std::shared_ptr<pv::view::ViewItem> > items();
 
-       void mouseMoveEvent(QMouseEvent *e);
-       void mousePressEvent(QMouseEvent *e);
-       void mouseReleaseEvent(QMouseEvent *);
-       void leaveEvent(QEvent*);
+       /**
+        * 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.
+        */
+       std::shared_ptr<pv::view::ViewItem> get_mouse_over_item(
+               const QPoint &pt);
 
-       void mouseDoubleClickEvent(QMouseEvent *e);
+private:
+       void paintEvent(QPaintEvent *event);
 
-       void keyPressEvent(QKeyEvent *e);
+       void mouseDoubleClickEvent(QMouseEvent *e);
 
 private:
        /**
@@ -90,9 +88,6 @@ private:
 
        int calculate_text_height() const;
 
-private:
-       std::shared_ptr<TimeItem> mouse_down_item_;
-
 private Q_SLOTS:
        void hover_point_changed();
 };
@@ -100,4 +95,4 @@ private Q_SLOTS:
 } // namespace view
 } // namespace pv
 
-#endif // PULSEVIEW_PV_VIEW_RULER_H
+#endif // PULSEVIEW_PV_VIEW_RULER_HPP