]> sigrok.org Git - pulseview.git/blobdiff - main.cpp
Rework all subthread-based workers to make notifications more robust
[pulseview.git] / main.cpp
index 4bbddcc644bdf4c5bbb7ebf6398ed8e58da75b16..b0e631f6382cbd4697d2171e30ebab8620065989 100644 (file)
--- a/main.cpp
+++ b/main.cpp
@@ -60,6 +60,7 @@
 #include "pv/mainwindow.hpp"
 #include "pv/session.hpp"
 #include "pv/util.hpp"
+#include "pv/data/segment.hpp"
 
 #ifdef ANDROID
 #include <libsigrokandroidutils/libsigrokandroidutils.h>
@@ -274,13 +275,16 @@ int main(int argc, char *argv[])
        for (int i = 0; i < argc; i++)
                open_files.emplace_back(argv[i]);
 
-       qRegisterMetaType<pv::util::Timestamp>("util::Timestamp");
        qRegisterMetaType<uint64_t>("uint64_t");
+       qRegisterMetaType<pv::util::Timestamp>("util::Timestamp");
+       qRegisterMetaType<SharedPtrToSegment>("SharedPtrToSegment");
 
        // Prepare the global settings since logging needs them early on
        pv::GlobalSettings settings;
+       settings.add_change_handler(&a);  // Only the application object can't register itself
        settings.save_internal_defaults();
        settings.set_defaults_where_needed();
+       settings.apply_language();
        settings.apply_theme();
 
        pv::logging.init();