Jelajahi Sumber

UI: Add 'Changed' signal to properties view

jp9000 10 tahun lalu
induk
melakukan
cb70a531b7
2 mengubah file dengan 9 tambahan dan 0 penghapusan
  1. 7 0
      obs/properties-view.cpp
  2. 2 0
      obs/properties-view.hpp

+ 7 - 0
obs/properties-view.cpp

@@ -514,6 +514,11 @@ void OBSPropertiesView::AddProperty(obs_property_t *property,
 			lastWidget = widget;
 			lastWidget = widget;
 }
 }
 
 
+void OBSPropertiesView::SignalChanged()
+{
+	emit Changed();
+}
+
 void WidgetInfo::BoolChanged(const char *setting)
 void WidgetInfo::BoolChanged(const char *setting)
 {
 {
 	QCheckBox *checkbox = static_cast<QCheckBox*>(widget);
 	QCheckBox *checkbox = static_cast<QCheckBox*>(widget);
@@ -716,6 +721,8 @@ void WidgetInfo::ControlChanged()
 	if (view->callback)
 	if (view->callback)
 		view->callback(view->obj, view->settings);
 		view->callback(view->obj, view->settings);
 
 
+	view->SignalChanged();
+
 	if (obs_property_modified(property, view->settings)) {
 	if (obs_property_modified(property, view->settings)) {
 		view->lastFocused = setting;
 		view->lastFocused = setting;
 		QMetaObject::invokeMethod(view, "RefreshProperties",
 		QMetaObject::invokeMethod(view, "RefreshProperties",

+ 2 - 0
obs/properties-view.hpp

@@ -87,9 +87,11 @@ private:
 public slots:
 public slots:
 	void ReloadProperties();
 	void ReloadProperties();
 	void RefreshProperties();
 	void RefreshProperties();
+	void SignalChanged();
 
 
 signals:
 signals:
 	void PropertiesResized();
 	void PropertiesResized();
+	void Changed();
 
 
 public:
 public:
 	OBSPropertiesView(OBSData settings, void *obj,
 	OBSPropertiesView(OBSData settings, void *obj,