1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- // ECOin - Copyright (c) - 2014/2021 - GPLv3 - epsylon@riseup.net (https://03c8.net)
- #ifndef OPTIONSMODEL_H
- #define OPTIONSMODEL_H
- #include <QAbstractListModel>
- class OptionsModel : public QAbstractListModel
- {
- Q_OBJECT
- public:
- explicit OptionsModel(QObject *parent = 0);
- enum OptionID {
- StartAtStartup, // bool
- MinimizeToTray, // bool
- MapPortUPnP, // bool
- MinimizeOnClose, // bool
- ProxyUse, // bool
- ProxyIP, // QString
- ProxyPort, // int
- ProxySocksVersion, // int
- Fee, // qint64
- DisplayUnit, // EcoinUnits::Unit
- DisplayAddresses, // bool
- DetachDatabases, // bool
- Language, // QString
- CoinControlFeatures, // bool
- OptionIDRowCount,
- };
- void Init();
- /* Migrate settings from wallet.dat after app initialization */
- bool Upgrade(); /* returns true if settings upgraded */
- int rowCount(const QModelIndex & parent = QModelIndex()) const;
- QVariant data(const QModelIndex & index, int role = Qt::DisplayRole) const;
- bool setData(const QModelIndex & index, const QVariant & value, int role = Qt::EditRole);
- /* Explicit getters */
- qint64 getTransactionFee();
- bool getMinimizeToTray();
- bool getMinimizeOnClose();
- int getDisplayUnit();
- bool getDisplayAddresses();
- bool getCoinControlFeatures();
- QString getLanguage() { return language; }
- private:
- int nDisplayUnit;
- bool bDisplayAddresses;
- bool fMinimizeToTray;
- bool fMinimizeOnClose;
- bool fCoinControlFeatures;
- QString language;
- signals:
- void displayUnitChanged(int unit);
- void transactionFeeChanged(qint64);
- void coinControlFeaturesChanged(bool);
- };
- #endif // OPTIONSMODEL_H
|