Приветствую!
Есть класс cо свойством, например
class AppCore : public QObject
{
Q_OBJECT
Q_PROPERTY(int val1 READ val1 WRITE setVal1 NOTIFY val1Changed)
....
Так же есть qml интерфейс, например
Window {
visible: true
property var appCore: null
....
В qml передаю объект класса так:
QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
AppCore * appCore = new AppCore(0);
engine.rootObjects().at(0)->setProperty("appCore", qVariantFromValue(appCore));
Теперь самое интересное:
например есть кастомный компонент, у которого есть некоторое свойство, например
WSlider.qml
Item {
id: wSlider
property double value: 100
....
В main.qml его подключаю:
WSlider {
anchors.centerIn: parent
value: appCore.val1
}
Тоесть хочу, что бы при изменении в AppCore менялось значение и в WSlider, и наоборот, при изменении значения в WSlider оно менялось и в AppCore (срабатывал слот setVal1 )
Нор баотает либо в одну либо в другую сторону.
Как по-красивше сделать, что было в обе?