#pragma once #include "../../MiscHelpers/Common/PanelView.h" #include "../../MiscHelpers/Common/TreeviewEx.h" #include "../Models/SbieModel.h" #include "../Models/TraceModel.h" #include "../Models/MonitorModel.h" #include "../../MiscHelpers/Common/SortFilterProxyModel.h" class CFinder; class CStackView : public CPanelView { Q_OBJECT public: CStackView(QWidget *parent = 0); virtual ~CStackView(); public slots: void Clear() { m_pStackList->clear(); } void Invalidate(); void ShowStack(const QVector& Stack, const CBoxedProcessPtr& pProcess); //void OnMenu(const QPoint &point); void SetFilter(const QRegularExpression& Exp, bool bHighLight = false, int Col = -1); // -1 = any protected: //virtual void OnMenu(const QPoint& Point); virtual QTreeView* GetView() { return m_pStackList; } virtual QAbstractItemModel* GetModel() { return m_pStackList->model(); } private: enum EStackColumns { eStack = 0, eSymbol, eCount }; QVBoxLayout* m_pMainLayout; bool m_bIsInvalid; QTreeWidgetEx* m_pStackList; CFinder* m_pFinder; //QMenu* m_pMenu; };