summaryrefslogtreecommitdiff
path: root/view/sharedcache/ui
diff options
context:
space:
mode:
authorkat <kat@vector35.com>2024-10-30 08:39:09 -0400
committerkat <kat@vector35.com>2024-11-05 09:03:12 -0500
commitf4a4b17b9e30cf603eb614e153d68226a3b24520 (patch)
treee33d18742c1a9e9b47af04df24bf88248c17f06a /view/sharedcache/ui
parentfd8eb478a7a3bbc848da37bd33e62c2d8cf26b99 (diff)
[SharedCache] Implement LoadedImage API, Fix serialized image names, more robust system for out-of-date databases
Diffstat (limited to 'view/sharedcache/ui')
-rw-r--r--view/sharedcache/ui/CMakeLists.txt31
-rw-r--r--view/sharedcache/ui/dsctriage.cpp6
2 files changed, 31 insertions, 6 deletions
diff --git a/view/sharedcache/ui/CMakeLists.txt b/view/sharedcache/ui/CMakeLists.txt
index 1695b8dd..88a68375 100644
--- a/view/sharedcache/ui/CMakeLists.txt
+++ b/view/sharedcache/ui/CMakeLists.txt
@@ -12,16 +12,35 @@ list(FILTER SOURCES EXCLUDE REGEX qrc_.*)
add_library(sharedcacheui SHARED ${SOURCES})
+set(COMPILE_DEFS "")
+
+if (HARD_FAIL_MODE)
+ set(COMPILE_DEFS "${COMPILE_DEFS} ABORT_FAILURES;")
+endif()
+
+if (BN_REF_COUNT_DEBUG)
+ set(COMPILE_DEFS "${COMPILE_DEFS} BN_REF_COUNT_DEBUG;")
+endif()
+
+if (SLIDEINFO_DEBUG_TAGS)
+ set(COMPILE_DEFS "${COMPILE_DEFS} SLIDEINFO_DEBUG_TAGS;")
+endif()
+
+if (METADATA_VERSION)
+ set(COMPILE_DEFS "${COMPILE_DEFS} METADATA_VERSION=${METADATA_VERSION};")
+else()
+ message(FATAL_ERROR "No metadata version provided. Fatal.")
+endif()
+
if (VIEW_NAME)
- if (BN_REF_COUNT_DEBUG)
- target_compile_definitions(sharedcacheui PRIVATE VIEW_NAME="${VIEW_NAME}" BN_REF_COUNT_DEBUG)
- else()
- target_compile_definitions(sharedcacheui PRIVATE VIEW_NAME="${VIEW_NAME}")
- endif()
+ set(COMPILE_DEFS "${COMPILE_DEFS} VIEW_NAME=\"${VIEW_NAME}\";")
else()
- error("VIEW_NAME must be defined")
+ message(FATAL_ERROR "No view name provided. Fatal.")
endif()
+target_compile_definitions(sharedcacheui PRIVATE ${COMPILE_DEFS})
+
+
if(BN_INTERNAL_BUILD)
set_target_properties(sharedcacheui PROPERTIES
LIBRARY_OUTPUT_DIRECTORY ${BN_CORE_PLUGIN_DIR}
diff --git a/view/sharedcache/ui/dsctriage.cpp b/view/sharedcache/ui/dsctriage.cpp
index 7680317c..29bec7ec 100644
--- a/view/sharedcache/ui/dsctriage.cpp
+++ b/view/sharedcache/ui/dsctriage.cpp
@@ -61,6 +61,10 @@ DSCCacheBlocksView::DSCCacheBlocksView(QWidget* parent, BinaryViewRef data, Ref<
->withEasingCurve(QEasingCurve::InOutCirc)
->thenOnStart([this](QAbstractAnimation::Direction)
{
+ if (m_backingCaches.size() < m_backingCacheCount)
+ {
+ return;
+ }
uint64_t totalSize = 0;
uint64_t sumCountForAvg = 0;
for (size_t i = 0; i < m_backingCacheCount; i++)
@@ -116,6 +120,8 @@ DSCCacheBlocksView::DSCCacheBlocksView(QWidget* parent, BinaryViewRef data, Ref<
})
->thenOnEnd([this](QAbstractAnimation::Direction)
{
+ if (m_backingCaches.size() == 0)
+ return;
emit selectionChanged(m_backingCaches[0], true);
});