diff options
Diffstat (limited to 'linden/indra/newview/llpaneldirfind.h')
-rw-r--r-- | linden/indra/newview/llpaneldirfind.h | 58 |
1 files changed, 43 insertions, 15 deletions
diff --git a/linden/indra/newview/llpaneldirfind.h b/linden/indra/newview/llpaneldirfind.h index fdf95d7..2359d62 100644 --- a/linden/indra/newview/llpaneldirfind.h +++ b/linden/indra/newview/llpaneldirfind.h | |||
@@ -33,34 +33,62 @@ | |||
33 | #define LL_LLPANELDIRFIND_H | 33 | #define LL_LLPANELDIRFIND_H |
34 | 34 | ||
35 | #include "llpaneldirbrowser.h" | 35 | #include "llpaneldirbrowser.h" |
36 | #include "llwebbrowserctrl.h" | ||
36 | 37 | ||
37 | class LLUICtrl; | 38 | class LLUICtrl; |
38 | class LLLineEditor; | 39 | class LLLineEditor; |
39 | class LLPanelDirFindAll; | 40 | class LLPanelDirFindAll; |
40 | class LLFloaterDirectory; | 41 | class LLFloaterDirectory; |
42 | class LLWebBrowserCtrlObserver; | ||
41 | 43 | ||
42 | class LLPanelDirFindAllInterface | 44 | // This class in an abstract base class for all new style search widgets. It contains a pointer to a web browser control |
45 | // | ||
46 | class LLPanelDirFind | ||
47 | : public LLPanelDirBrowser, | ||
48 | public LLWebBrowserCtrlObserver | ||
43 | { | 49 | { |
44 | public: | 50 | public: |
45 | static LLPanelDirFindAll* create(LLFloaterDirectory* floater); | 51 | LLPanelDirFind(const std::string& name, LLFloaterDirectory* floater, const std::string& browser_name); |
46 | static void search(LLPanelDirFindAll* panel, const std::string& search_text); | 52 | /*virtual*/ ~LLPanelDirFind(); |
47 | static void focus(LLPanelDirFindAll* panel); | ||
48 | }; | ||
49 | 53 | ||
54 | /*virtual*/ void draw(); | ||
55 | /*virtual*/ BOOL postBuild(); | ||
56 | /*virtual*/ void onVisibilityChange(BOOL new_visibility); | ||
50 | 57 | ||
51 | class LLPanelDirFindAllOld : public LLPanelDirBrowser | 58 | // Pure virtual. Must be implemented |
52 | { | 59 | virtual void search(const std::string& search_text) = 0; |
53 | public: | ||
54 | LLPanelDirFindAllOld(const std::string& name, LLFloaterDirectory* floater); | ||
55 | /*virtual*/ ~LLPanelDirFindAllOld(); | ||
56 | 60 | ||
57 | /*virtual*/ BOOL postBuild(); | 61 | virtual void navigateToDefaultPage(); |
62 | void focus(); | ||
58 | 63 | ||
59 | /*virtual*/ void draw(); | 64 | static std::string buildSearchURL(const std::string& search_text, const std::string& collection, bool mature_in); |
65 | static std::string getSearchURLSuffix(bool mature_in); | ||
60 | 66 | ||
61 | static void onClickSearch(void *userdata); | 67 | private: |
62 | static void onCommitScope(LLUICtrl* ctrl, void* data); | 68 | static void onClickBack( void* data ); |
63 | static void onKeystrokeName(LLLineEditor* line, void* data); | 69 | static void onClickForward( void* data ); |
70 | static void onClickHome( void* data ); | ||
71 | static void onClickSearch( void* data ); | ||
72 | static void onCommitSearch(LLUICtrl*, void* data); | ||
73 | |||
74 | /*virtual*/ void onNavigateBegin( const EventType& eventIn ); | ||
75 | /*virtual*/ void onNavigateComplete( const EventType& eventIn ); | ||
76 | |||
77 | // Used to update progress indicator | ||
78 | /*virtual*/ void onLocationChange( const EventType& eventIn ); | ||
79 | // Debugging info to console | ||
80 | |||
81 | protected: | ||
82 | LLWebBrowserCtrl* mWebBrowser; | ||
83 | std::string mBrowserName; | ||
84 | }; | ||
85 | |||
86 | class LLPanelDirFindAllInterface | ||
87 | { | ||
88 | public: | ||
89 | static LLPanelDirFindAll* create(LLFloaterDirectory* floater); | ||
90 | static void search(LLPanelDirFindAll* panel, const std::string& search_text); | ||
91 | static void focus(LLPanelDirFindAll* panel); | ||
64 | }; | 92 | }; |
65 | 93 | ||
66 | #endif | 94 | #endif |