forked from teamnwah/openmw-tes3coop
43 lines
1.1 KiB
C++
43 lines
1.1 KiB
C++
|
#ifndef PROXYBLOCK_HPP
|
||
|
#define PROXYBLOCK_HPP
|
||
|
|
||
|
#include "groupblock.hpp"
|
||
|
|
||
|
namespace CsSettings
|
||
|
{
|
||
|
class ProxyBlock : public GroupBlock
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
|
||
|
//NOTE: mProxyItemBlockList and mProxyList
|
||
|
//should be combined into a value pair and stored in one list.
|
||
|
ItemBlockList mProxiedItemBlockList;
|
||
|
ProxyList mProxyList;
|
||
|
QStringList *mValueList;
|
||
|
|
||
|
public:
|
||
|
|
||
|
explicit ProxyBlock (QWidget *parent = 0);
|
||
|
explicit ProxyBlock (ItemBlock *proxyItemBlock, QWidget *parent = 0);
|
||
|
|
||
|
void addSetting (ItemBlock* settingBlock, QStringList *proxyList);
|
||
|
int build (GroupBlockDef &def);
|
||
|
|
||
|
SettingList *getSettings() { return 0; }
|
||
|
bool updateSettings (const SettingMap &settings);
|
||
|
bool updateBySignal (const QString &name, const QString &value, bool &doEmit);
|
||
|
|
||
|
private:
|
||
|
|
||
|
ItemBlock *getProxiedItemBlock (const QString &name);
|
||
|
bool updateByProxiedSettings(const SettingMap *settings = 0);
|
||
|
bool updateProxiedSettings();
|
||
|
|
||
|
private slots:
|
||
|
|
||
|
void slotUpdateProxySetting (const QString &name, const QString &value);
|
||
|
|
||
|
};
|
||
|
}
|
||
|
#endif // PROXYBLOCK_HPP
|