@@ -84,4 +84,68 @@ cls.ResourceTreeView = function(id, name, container_class, html, default_handler
8484 this . init ( id , name , container_class , html , default_handler ) ;
8585} ;
8686
87+ cls . ResourceTreeView . create_ui_widgets = function ( )
88+ {
89+ new ToolbarConfig (
90+ {
91+ view :'resource_tree_view' ,
92+ groups :
93+ [
94+ {
95+ type : UI . TYPE_INPUT ,
96+ items :
97+ [
98+ {
99+ handler : "resource-tree-text-search" ,
100+ shortcuts : "resource-tree-text-search" ,
101+ title : ui_strings . S_SEARCH_INPUT_TOOLTIP ,
102+ label : ui_strings . S_INPUT_DEFAULT_TEXT_SEARCH
103+ }
104+ ]
105+ }
106+ ]
107+ } ) ;
108+
109+ var text_search = window . views . resource_detail_view . text_search = new TextSearch ( ) ;
110+
111+ window . eventHandlers . input [ "resource-tree-text-search" ] = function ( event , target )
112+ {
113+ text_search . searchDelayed ( target . value ) ;
114+ } ;
115+
116+ ActionBroker .
117+ get_instance ( ) .
118+ get_global_handler ( ) .
119+ register_shortcut_listener
120+ (
121+ "resource-tree-text-search" ,
122+ cls . Helpers . shortcut_search_cb . bind ( text_search )
123+ ) ;
124+
125+ var on_view_created = function ( msg )
126+ {
127+ if ( msg . id === "resource_tree_view" )
128+ {
129+ var scroll_container = msg . container ;
130+ if ( scroll_container )
131+ {
132+ text_search . setContainer ( scroll_container ) ;
133+ text_search . set_query_selector ( '.resource-tree-resource-label' ) ;
134+ text_search . setFormInput (
135+ views . resource_tree_view . getToolbarControl ( msg . container , "resource-tree-text-search" )
136+ ) ;
137+ }
138+ }
139+ }
140+
141+ var on_view_destroyed = function ( msg )
142+ {
143+ if ( msg . id == "resource_tree_view" )
144+ text_search . cleanup ( ) ;
145+ }
146+
147+ window . messages . addListener ( "view-created" , on_view_created ) ;
148+ window . messages . addListener ( "view-destroyed" , on_view_destroyed ) ;
149+ }
150+
87151cls . ResourceTreeView . prototype = ViewBase ;
0 commit comments