Update CMakeLists.txt - play with openssl
[novacoin.git] / src / qt / monitoreddatamapper.cpp
1 #include "monitoreddatamapper.h"
2
3 #include <QWidget>
4 #include <QMetaObject>
5 #include <QMetaProperty>
6
7 MonitoredDataMapper::MonitoredDataMapper(QObject *parent) :
8     QDataWidgetMapper(parent)
9 {
10 }
11
12
13 void MonitoredDataMapper::addMapping(QWidget *widget, int section)
14 {
15     QDataWidgetMapper::addMapping(widget, section);
16     addChangeMonitor(widget);
17 }
18
19 void MonitoredDataMapper::addMapping(QWidget *widget, int section, const QByteArray &propertyName)
20 {
21     QDataWidgetMapper::addMapping(widget, section, propertyName);
22     addChangeMonitor(widget);
23 }
24
25 void MonitoredDataMapper::addChangeMonitor(QWidget *widget)
26 {
27     // Watch user property of widget for changes, and connect
28     //  the signal to our viewModified signal.
29     QMetaProperty prop = widget->metaObject()->userProperty();
30     int signal = prop.notifySignalIndex();
31     int method = this->metaObject()->indexOfMethod("viewModified()");
32     if(signal != -1 && method != -1)
33     {
34         QMetaObject::connect(widget, signal, this, method);
35     }
36 }