class QToolBar;
namespace sigrok {
-class Device;
class TriggerMatchType;
}
namespace pv {
+namespace devices {
+class Device;
+}
+
namespace data {
class Logic;
}
Q_OBJECT
private:
- static const int SignalHeight;
- static const int SignalMargin;
-
static const float Oversampling;
static const QColor EdgeColour;
public:
LogicSignal(pv::Session &session,
- std::shared_ptr<sigrok::Device> device,
+ std::shared_ptr<devices::Device> device,
std::shared_ptr<sigrok::Channel> channel,
std::shared_ptr<pv::data::Logic> data);
*/
std::pair<int, int> v_extents() const;
+ /**
+ * Returns the offset to show the drag handle.
+ */
+ int scale_handle_offset() const;
+
+ /**
+ * Handles the scale handle being dragged to an offset.
+ * @param offset the offset the scale handle was dragged to.
+ */
+ void scale_handle_dragged(int offset);
+
/**
* Paints the background layer of the signal with a QPainter
* @param p the QPainter to paint into.
void on_trigger();
private:
- std::shared_ptr<sigrok::Device> device_;
+ int signal_height_;
+
+ std::shared_ptr<pv::devices::Device> device_;
std::shared_ptr<pv::data::Logic> data_;
const sigrok::TriggerMatchType *trigger_match_;