51 bool isRecording()
const {
return recording_; }
52 bool isPaused()
const {
return paused_; }
55 int stepCount()
const {
return steps_.size(); }
57 std::string toJson()
const;
58 bool saveToFile(
const std::string& path)
const;
64 void stepRecorded(
int index,
const std::string& description);
65 void recordingStarted();
66 void recordingStopped();
67 void recordingPaused();
68 void recordingResumed();
71 bool eventFilter(QObject* obj, QEvent* event)
override;
75 void handleMousePress(QWidget* w, QMouseEvent* e);
76 void handleMouseRelease(QWidget* w, QMouseEvent* e);
77 void handleKeyRelease(QWidget* w, QKeyEvent* e);
78 void handleFocusIn(QWidget* w, QFocusEvent* e);
79 void handleFocusOut(QWidget* w, QFocusEvent* e);
82 void handleComboChange(QComboBox* combo);
83 void handleDialogFinished(QDialog* dlg,
int result);
88 void flushPendingEdit();
89 void populateWidgetInfo(
RecordStep& step, QWidget* w);
92 QList<RecordStep> steps_;
93 bool recording_ =
false;
95 int64_t startTime_ = 0;
98 QWidget* lastClickedWidget_ =
nullptr;
100 QElapsedTimer clickTimer_;
103 QWidget* dragSourceWidget_ =
nullptr;
104 QString dragSourceText_;
107 QWidget* editWidget_ =
nullptr;
108 QString editBeforeText_;