Create a custom query in the Root page type and the query should look like so:
SELECT 'DocumentCategoryIDs','','Select an entry' UNION
SELECT 'DocumentCategoryIDs', CategoryID, CategoryDisplayName FROM CMS_Category WHERE ##WHERE## ORDER BY ##ORDERBY##
In the WHERE Condition add the following:
CategoryEnabled = 1 and CategoryNamePath like '/Your Path in Categories/%' and CategoryUserID is null AND (NOT EXISTS(SELECT CategoryID FROM CMS_Category AS pc WHERE (pc.CategoryEnabled = 0) AND (CMS_Category.CategoryIDPath like pc.CategoryIDPath+'/%')))
Make sure you have the checkbox in the webpart properties for "Filter auto postback" checked otherwise it won't automatically post back and search, you'd need to invoke a postback with another button or something else.