1
0
forked from BRT/arc
arc/android/toss/ScreenXmlTossParser.h
2026-02-22 20:48:16 +07:00

53 lines
1.1 KiB
C++

#pragma once
#include <QObject>
#include <QDomElement>
#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 findNodeByClassName(const QString &className);
Node findButtonNode(const QString &text, bool contains);
bool isHomeScreen();
void parseAndSaveXml(const QString &xml);
QList<TransactionInfo> parsePositiveTransactions();
QList<AccountInfo> parseAccountsInfo();
double parseAccountAmount();
QList<Node> findPinCodeNodes(const QString &pinCode);
QList<Node> getNodeNumbers(double value);
void test();
private:
QList<Node> m_nodes;
QDomElement m_xml;
};