#pragma once #include #include #include "android/xml/Node.h" #include "db/AccountInfo.h" #include "db/TransactionInfo.h" class ScreenXmlTossParser final : public QObject { Q_OBJECT public: explicit ScreenXmlTossParser(QObject *parent = nullptr); ~ScreenXmlTossParser() override; Node findTextNode(const QString &text); Node findTextContainsNode(const QString &text); Node findFirstAccountLine(); Node findTextNode(const QString &text, int x1, int y1, int x2, int y2); Node findEditText(const QString &text); Node findEditTextByResourceId(const QString &resourceId); Node findButtonNode(const QString &text, bool contains); bool isHomeScreen(); void parseAndSaveXml(const QString &xml); QList parsePositiveTransactions(); QList parseAccountsInfo(); QList findPinCodeNodes(const QString &pinCode); void test(); private: QList m_nodes; QDomElement m_xml; };