Anoncoin  0.9.4
P2P Digital Currency
monitoreddatamapper.cpp
Go to the documentation of this file.
1 // Copyright (c) 2011-2013 The Bitcoin developers
2 // Copyright (c) 2013-2014 The Anoncoin Core developers
3 // Distributed under the MIT/X11 software license, see the accompanying
4 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
5 
6 #include "monitoreddatamapper.h"
7 
8 #include <QMetaObject>
9 #include <QMetaProperty>
10 #include <QWidget>
11 
13  QDataWidgetMapper(parent)
14 {
15 }
16 
17 void MonitoredDataMapper::addMapping(QWidget *widget, int section)
18 {
19  QDataWidgetMapper::addMapping(widget, section);
20  addChangeMonitor(widget);
21 }
22 
23 void MonitoredDataMapper::addMapping(QWidget *widget, int section, const QByteArray &propertyName)
24 {
25  QDataWidgetMapper::addMapping(widget, section, propertyName);
26  addChangeMonitor(widget);
27 }
28 
30 {
31  // Watch user property of widget for changes, and connect
32  // the signal to our viewModified signal.
33  QMetaProperty prop = widget->metaObject()->userProperty();
34  int signal = prop.notifySignalIndex();
35  int method = this->metaObject()->indexOfMethod("viewModified()");
36  if(signal != -1 && method != -1)
37  {
38  QMetaObject::connect(widget, signal, this, method);
39  }
40 }
void addMapping(QWidget *widget, int section)
MonitoredDataMapper(QObject *parent=0)
void addChangeMonitor(QWidget *widget)