From e7f447b6a3473a572d3e6c191128f1796477860d Mon Sep 17 00:00:00 2001 From: Nathan Scott Date: Tue, 4 Apr 2023 16:24:37 +1000 Subject: Refactor and consolidate dynamic meters/columns pointers This removes the duplication of dynamic meter/column hashtable pointers that has come in between the Settings and ProcessList structures - only one copy of these is needed. With the future planned dynamic screens feature adding another pointer, let us first clean this up before any further duplication happens. --- AvailableMetersPanel.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'AvailableMetersPanel.c') diff --git a/AvailableMetersPanel.c b/AvailableMetersPanel.c index c7ab89be..aa6d7795 100644 --- a/AvailableMetersPanel.c +++ b/AvailableMetersPanel.c @@ -128,10 +128,11 @@ static void AvailableMetersPanel_addDynamicMeter(ATTR_UNUSED ht_key_t key, void* } // Handle (&DynamicMeter_class) entries in the AvailableMetersPanel -static void AvailableMetersPanel_addDynamicMeters(Panel* super, const ProcessList* pl, unsigned int offset) { +static void AvailableMetersPanel_addDynamicMeters(Panel* super, const Settings* settings, unsigned int offset) { DynamicIterator iter = { .super = super, .id = 1, .offset = offset }; - assert(pl->dynamicMeters != NULL); - Hashtable_foreach(pl->dynamicMeters, AvailableMetersPanel_addDynamicMeter, &iter); + Hashtable* dynamicMeters = settings->dynamicColumns; + assert(dynamicMeters != NULL); + Hashtable_foreach(dynamicMeters, AvailableMetersPanel_addDynamicMeter, &iter); } // Handle remaining Platform Meter entries in the AvailableMetersPanel @@ -161,7 +162,7 @@ AvailableMetersPanel* AvailableMetersPanel_new(Settings* settings, Header* heade const MeterClass* type = Platform_meterTypes[i]; assert(type != &CPUMeter_class); if (type == &DynamicMeter_class) - AvailableMetersPanel_addDynamicMeters(super, pl, i); + AvailableMetersPanel_addDynamicMeters(super, settings, i); else AvailableMetersPanel_addPlatformMeter(super, type, i); } -- cgit v1.2.3