From d9e1fb5db48f46e52dbb171e7bdcee1602d8eb14 Mon Sep 17 00:00:00 2001 From: Jabier Arraiza Date: Sat, 3 Nov 2018 16:56:23 +0100 Subject: Improvemets to find items --- src/desktop.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/desktop.cpp') diff --git a/src/desktop.cpp b/src/desktop.cpp index 335afa17d..7846599c7 100644 --- a/src/desktop.cpp +++ b/src/desktop.cpp @@ -726,6 +726,19 @@ SPItem *SPDesktop::getGroupAtPoint(Geom::Point const &p) const g_return_val_if_fail (doc() != nullptr, NULL); return doc()->getGroupAtPoint(dkey, p); } +/** + * Returns a vector of visible items in a desktop + */ +std::vector SPDesktop::getVisibleItems(bool isFiltered) { + std::vector result; + for(auto item:getDocument()->getItemsPartiallyInBox(dkey, get_display_area(), false, true, true, false, true)) { + if(isFiltered && !item->isFiltered()) { + continue; + } + result.push_back(item); + } + return result; +} /** * Returns the mouse point in document coordinates; if mouse is -- cgit v1.2.3