diff options
author | Jon Wolk <jwolk@lindenlab.com> | 2007-12-19 00:56:59 +0000 |
---|---|---|
committer | Jon Wolk <jwolk@lindenlab.com> | 2007-12-19 00:56:59 +0000 |
commit | 7dd08303a3ebf9718c2c60a4d94b81d5d7845f8c (patch) | |
tree | 6195a8585cc7998647afcaec2167e728e4abd3c1 /indra/llui/llviewquery.h | |
parent | 4d87303e78c1accde85b217b325e0c08930b0c4c (diff) |
svn merge -r 75354:76103 svn+ssh://svn.lindenlab.com/svn/linden/branches/voice-group-moderation-3 -> release. Finished product of QAR-134
Diffstat (limited to 'indra/llui/llviewquery.h')
-rw-r--r-- | indra/llui/llviewquery.h | 32 |
1 files changed, 29 insertions, 3 deletions
diff --git a/indra/llui/llviewquery.h b/indra/llui/llviewquery.h index 3919ba4bcb..63559e8240 100644 --- a/indra/llui/llviewquery.h +++ b/indra/llui/llviewquery.h @@ -35,6 +35,7 @@ #include <list> #include "llmemory.h" +#include "llui.h" class LLView; @@ -42,35 +43,60 @@ typedef std::list<LLView *> viewList_t; typedef std::pair<BOOL, BOOL> filterResult_t; // Abstract base class for all filters. -class LLQueryFilter : public LLRefCount +class LLQueryFilter { public: + virtual ~LLQueryFilter() {}; virtual filterResult_t operator() (const LLView* const view, const viewList_t & children) const =0; }; -class LLQuerySorter : public LLRefCount +class LLQuerySorter { public: + virtual ~LLQuerySorter() {}; virtual void operator() (LLView * parent, viewList_t &children) const; }; -class LLNoLeavesFilter : public LLQueryFilter, public LLSingleton<LLNoLeavesFilter> +class LLLeavesFilter : public LLQueryFilter, public LLSingleton<LLLeavesFilter> { /*virtual*/ filterResult_t operator() (const LLView* const view, const viewList_t & children) const; }; + +class LLRootsFilter : public LLQueryFilter, public LLSingleton<LLRootsFilter> +{ + /*virtual*/ filterResult_t operator() (const LLView* const view, const viewList_t & children) const; +}; + class LLVisibleFilter : public LLQueryFilter, public LLSingleton<LLVisibleFilter> { /*virtual*/ filterResult_t operator() (const LLView* const view, const viewList_t & children) const; }; + class LLEnabledFilter : public LLQueryFilter, public LLSingleton<LLEnabledFilter> { /*virtual*/ filterResult_t operator() (const LLView* const view, const viewList_t & children) const; }; + class LLTabStopFilter : public LLQueryFilter, public LLSingleton<LLTabStopFilter> { /*virtual*/ filterResult_t operator() (const LLView* const view, const viewList_t & children) const; }; +class LLCtrlFilter : public LLQueryFilter, public LLSingleton<LLCtrlFilter> +{ + /*virtual*/ filterResult_t operator() (const LLView* const view, const viewList_t & children) const; +}; + +class LLWidgetTypeFilter : public LLQueryFilter +{ +public: + LLWidgetTypeFilter(EWidgetType type) : mType(type) {}; +private: + /*virtual*/ filterResult_t operator() (const LLView* const view, const viewList_t & children) const; + + EWidgetType mType; +}; + // Algorithm for flattening class LLViewQuery { |