diff --git a/qrenderdoc/Widgets/Extended/RDTreeWidget.cpp b/qrenderdoc/Widgets/Extended/RDTreeWidget.cpp index 7266a9f6a..316b92fe3 100644 --- a/qrenderdoc/Widgets/Extended/RDTreeWidget.cpp +++ b/qrenderdoc/Widgets/Extended/RDTreeWidget.cpp @@ -162,6 +162,11 @@ public: if(item->editable(index.column())) ret |= Qt::ItemIsEditable; + if(item->selectable()) + ret |= Qt::ItemIsSelectable; + else + ret &= ~Qt::ItemIsSelectable; + return ret; } diff --git a/qrenderdoc/Widgets/Extended/RDTreeWidget.h b/qrenderdoc/Widgets/Extended/RDTreeWidget.h index 4a4c2acb0..a59a4f641 100644 --- a/qrenderdoc/Widgets/Extended/RDTreeWidget.h +++ b/qrenderdoc/Widgets/Extended/RDTreeWidget.h @@ -134,6 +134,8 @@ public: else m_editable &= ~mask; } + inline bool selectable() const { return m_selectable; } + inline void setSelectable(bool sel) { m_selectable = sel; } inline Qt::CheckState checkState(int column) const { @@ -180,6 +182,7 @@ private: uint32_t m_editable = 0; // per-item properties + bool m_selectable = true; QString m_tooltip; bool m_bold = false; bool m_italic = false;