]> sigrok.org Git - pulseview.git/blobdiff - pv/views/trace/logicsignal.cpp
Fix remaining invalid disconnect() calls
[pulseview.git] / pv / views / trace / logicsignal.cpp
index f9ab16f102cdf5328613d81957a5d4563602d07e..350f495048f3344d66a3d367e86a38a57138d27b 100644 (file)
@@ -70,19 +70,6 @@ const QColor LogicSignal::HighColor(0x00, 0xC0, 0x00);
 const QColor LogicSignal::LowColor(0xC0, 0x00, 0x00);
 const QColor LogicSignal::SamplingPointColor(0x77, 0x77, 0x77);
 
-const QColor LogicSignal::SignalColors[10] = {
-       QColor(0x16, 0x19, 0x1A),       // Black
-       QColor(0x8F, 0x52, 0x02),       // Brown
-       QColor(0xCC, 0x00, 0x00),       // Red
-       QColor(0xF5, 0x79, 0x00),       // Orange
-       QColor(0xED, 0xD4, 0x00),       // Yellow
-       QColor(0x73, 0xD2, 0x16),       // Green
-       QColor(0x34, 0x65, 0xA4),       // Blue
-       QColor(0x75, 0x50, 0x7B),       // Violet
-       QColor(0x88, 0x8A, 0x85),       // Grey
-       QColor(0xEE, 0xEE, 0xEC),       // White
-};
-
 QColor LogicSignal::TriggerMarkerBackgroundColor = QColor(0xED, 0xD4, 0x00);
 const int LogicSignal::TriggerMarkerPadding = 2;
 const char* LogicSignal::TriggerMarkerIcons[8] = {
@@ -115,8 +102,6 @@ LogicSignal::LogicSignal(
 {
        shared_ptr<Trigger> trigger;
 
-       base_->set_color(SignalColors[base->index() % countof(SignalColors)]);
-
        GlobalSettings settings;
        signal_height_ = settings.value(GlobalSettings::Key_View_DefaultLogicHeight).toInt();
        show_sampling_points_ =
@@ -146,16 +131,21 @@ shared_ptr<pv::data::Logic> LogicSignal::logic_data() const
        return base_->logic_data();
 }
 
-void LogicSignal::save_settings(QSettings &settings) const
+std::map<QString, QVariant> LogicSignal::save_settings() const
 {
-       settings.setValue("trace_height", signal_height_);
+       std::map<QString, QVariant> result;
+
+       result["trace_height"] = signal_height_;
+
+       return result;
 }
 
-void LogicSignal::restore_settings(QSettings &settings)
+void LogicSignal::restore_settings(std::map<QString, QVariant> settings)
 {
-       if (settings.contains("trace_height")) {
+       auto entry = settings.find("trace_height");
+       if (entry != settings.end()) {
                const int old_height = signal_height_;
-               signal_height_ = settings.value("trace_height").toInt();
+               signal_height_ = settings["trace_height"].toInt();
 
                if ((signal_height_ != old_height) && owner_) {
                        // Call order is important, otherwise the lazy event handler won't work