1 #ifndef __BF_GUI_FILESPANEL_SEARCH_H__ 2 #define __BF_GUI_FILESPANEL_SEARCH_H__ 3 4 #include "Query.h" 5 #include "BF_GUI_FilesPanel.h" 6 7 class BF_GUI_FilesPanel_SearchDialog; 8 9 class BF_GUI_FilesPanel_Search:public BL_Object{ 10 public: 11 12 BF_GUI_FilesPanel_Search(BF_GUI_FilesPanel_SearchDialog *po_Dialog); 13 void Run(); 14 void Close(); 15 16 17 bool bReqClose; 18 private: 19 BF_GUI_FilesPanel_SearchDialog *poDialogParent; 20 BQuery oQuery; 21 BF_Path oPath; 22 23 bool bFromCurrentFolder; 24 BF_Path oCurrentFolder; 25 26 BL_String sSearchName,sSearchText; 27 BMessage oMsgAdd; 28 29 void Run_OnBootVolume(); 30 void Run_OnOtherVolume(const char *pc_Path); 31 32 bool Search_CheckTextFile(const char *pc_PathName,BL_String & s1); 33 34 bool Search_InFileCheck(BF_Node *po_Node,BL_String &s_FullPath); 35 void Search_AddResult(BF_Node *po_Node,BL_String &s_FullPath); 36 void Message_AddItem(BF_GUI_ViewMenu_Item *po_MenuItem); 37 }; 38 39 class BF_GUI_FilesPanel_SearchDialog:public BF_GUI_Dialog{ 40 public: 41 BF_GUI_FilesPanel_SearchDialog( 42 const BRect & o_Rect, 43 const char *pc_SearchName, 44 BF_GUI_FilesPanel *po_Panel, 45 BF_Path & o_Path); 46 ~BF_GUI_FilesPanel_SearchDialog(); 47 48 virtual void AttachedToWindow(void); 49 virtual void MessageReceived(BMessage* po_Message); 50 51 BL_String sSearchName,sSearchText; 52 bool bFromCurrentFolder; 53 BF_Path oCurrentFolder; 54 BL_List lsVol; 55 private: 56 BF_GUI_FilesPanel *poPanel; 57 BF_GUI_DlgView_VCMenu *poList; 58 BF_GUI_ViewText *poComment; 59 thread_id idThreadQuery; 60 BF_Path oPath; 61 BF_GUI_FilesPanel_Search *poSearch; 62 63 virtual bool ReadyForClose(); 64 65 friend int32 BF_GUI_FilesPanel_SearchDialog_Thread(void *data); 66 friend class BF_GUI_FilesPanel_Search; 67 };