Added support for Ziraat Bank in BankSettingsWindow and parsing scripts. Refactored XML parsing code for improved readability, removing unused methods and renaming functions for consistency. Updated configuration and app data to include Ziraat Bank.
57 lines
1.3 KiB
C++
57 lines
1.3 KiB
C++
#pragma once
|
|
|
|
#include <QObject>
|
|
#include <QDomElement>
|
|
#include "android/xml/Node.h"
|
|
#include "db/AccountInfo.h"
|
|
#include "db/TransactionInfo.h"
|
|
|
|
class ScreenXmlZiraatParser final : public QObject {
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit ScreenXmlZiraatParser(QObject *parent = nullptr);
|
|
|
|
~ScreenXmlZiraatParser() override;
|
|
|
|
Node tryToFindBannerOrDialog(int width, int height);
|
|
|
|
Node tryToFindSecurityBanner();
|
|
|
|
Node tryToFindSelectBottomSheet();
|
|
|
|
Node findAccountButton(const QString &numbers);
|
|
|
|
Node findTextNode(const QString &text);
|
|
|
|
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();
|
|
|
|
QList<Node> getLast2DaysTransactions();
|
|
|
|
void parseAndSaveXml(const QString &xml);
|
|
|
|
TransactionInfo parseTransactionInfoHistory(int screenWidth, int screenHeight);
|
|
|
|
TransactionInfo parseTransactionInfo(int screenWidth, int screenHeight);
|
|
|
|
QList<TransactionInfo> parseTodayAndYesterdayReportHistory();
|
|
|
|
QList<AccountInfo> parseAccountsInfo();
|
|
|
|
void test();
|
|
|
|
private:
|
|
QList<Node> m_nodes;
|
|
QDomElement m_xml;
|
|
|
|
QList<Node> findPinCodeNodes(const QString &pinCode);
|
|
};
|