]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
Searching in Object browser
authorsln <sln@opencascade.com>
Wed, 23 Apr 2008 14:36:07 +0000 (14:36 +0000)
committersln <sln@opencascade.com>
Wed, 23 Apr 2008 14:36:07 +0000 (14:36 +0000)
src/LightApp/LightApp_Application.cxx
src/LightApp/LightApp_Application.h
src/LightApp/resources/LightApp_msg_en.po
src/ObjBrowser/OB_Browser.cxx
src/ObjBrowser/OB_Browser.h
src/ObjBrowser/OB_FindDlg.cxx
src/ObjBrowser/OB_ObjSearch.h
src/ObjBrowser/resources/OB_msg_en.po

index ca99cc1d642dcd1aa3debef3c148b3f620b1f610..6addfa7183521f4bc4a7a364e6709d44003438fa 100644 (file)
@@ -63,6 +63,7 @@
 #include <LogWindow.h>
 #include <OB_Browser.h>
 #include <OB_ListView.h>
+#include <OB_ObjSearch.h>
 
 #ifdef WIN32
 #define DEFAULT_BROWSER "start iexplore.exe"
@@ -1643,6 +1644,7 @@ QWidget* LightApp_Application::createWindow( const int flag )
   if ( flag == WT_ObjectBrowser )
   {
     OB_Browser* ob = new OB_Browser( desktop() );
+    ob->setSearch( new OB_ObjSearch( ob ) );
     ob->setAutoUpdate( true );
     //ob->setAutoOpenLevel( 1 ); // commented by ASV as a fix to bug IPAL10107
     ob->setCaption( tr( "OBJECT_BROWSER" ) );
@@ -2299,6 +2301,8 @@ void LightApp_Application::contextMenuPopup( const QString& type, QPopupMenu* th
 
   thePopup->insertSeparator();
   thePopup->insertItem( tr( "MEN_REFRESH" ), this, SLOT( onRefresh() ) );
+  if ( getenv( "GUI_FIND_OB" ) )
+    thePopup->insertItem( tr( "MEN_FIND" ), this, SLOT( onFind() ) );
 }
 
 /*!
@@ -2520,3 +2524,9 @@ bool LightApp_Application::event( QEvent* e )
   }
   return CAM_Application::event( e );
 }
+
+void LightApp_Application::onFind()
+{
+  objectBrowser()->enableSearch( true );
+}
+
index f70724b03683aa36909f041fa715f1b77f6d646b..9728717cdde9476dc907e9984a5605826215769d 100644 (file)
@@ -211,6 +211,7 @@ protected slots:
 private slots:
   void                                onSelection();
   void                                onRefresh();
+  void                                onFind();
   void                                onPreferences();
   void                                onMRUActivated( QString );
   void                                onPreferenceChanged( QString&, QString&, QString& );
index f06c47efc749934da7aa8bec67148f410b8358f2..7ffb92760dc5a39deb2727708f36e375967c6616 100644 (file)
@@ -251,6 +251,9 @@ msgstr "Quick directory list"
 msgid "LightApp_Application::MEN_REFRESH"
 msgstr "Refresh"
 
+msgid "LightApp_Application::MEN_FIND"
+msgstr "Find"
+
 msgid "LightApp_Application::PREF_GROUP_SUPERV"
 msgstr "Graph Supervisor"
 
index 4b0b4840d5dbb1b07d1593327bf333e542f4e19f..905d9405a2cb3e56134ec745bfe99cf66dd4813e 100755 (executable)
@@ -21,6 +21,7 @@
 #include "OB_Filter.h"
 #include "OB_ListItem.h"
 #include "OB_ListView.h"
+#include "OB_FindDlg.h"
 
 #include <SUIT_DataObjectIterator.h>
 #include <SUIT_TreeSync.h>
@@ -301,8 +302,12 @@ myRootDecorated( true )
   myView->installEventFilter( this );
   myView->viewport()->installEventFilter( this );
 
+  myFindDlg = new OB_FindDlg( this );
+  myFindDlg->hide();
+
   QVBoxLayout* main = new QVBoxLayout( this );
-  main->addWidget( myView );
+  main->addWidget( myView, 1 );
+  main->addWidget( myFindDlg, 0 );
 
   myShowToolTips = true;
   myTooltip = new ToolTip( this, myView->viewport() );
@@ -1638,6 +1643,20 @@ void OB_Browser::ensureItemVisible( const SUIT_DataObject* obj )
     listView()->ensureItemVisible( item );
 }
 
+OB_ObjSearch* OB_Browser::getSearch() const
+{
+  return myFindDlg->getSearch();
+}
+
+void OB_Browser::setSearch( OB_ObjSearch* s )
+{
+  myFindDlg->setSearch( s );
+}
+
+void OB_Browser::enableSearch( const bool on )
+{
+  myFindDlg->setShown( on );
+}
 
 
 
index a190c586ebfc5bbae6e3d68d2b8671381a2494fb..af5fa9afbfb2e09b2701857b2a44c2f4e7e0eb42 100755 (executable)
@@ -38,6 +38,8 @@ class QToolTip;
 class OB_Filter;
 class OB_ListView;
 class OB_ListItem;
+class OB_FindDlg;
+class OB_ObjSearch;
 
 /*!
   \class OB_Browser
@@ -130,6 +132,10 @@ public:
 
   void              ensureItemVisible( const SUIT_DataObject* );
 
+  OB_ObjSearch*     getSearch() const;
+  void              setSearch( OB_ObjSearch* );
+  void              enableSearch( const bool );
+
 signals:
   void              selectionChanged();
   void              doubleClicked( SUIT_DataObject* );
@@ -201,6 +207,8 @@ private:
   friend class OB_Browser::ToolTip;
 
   unsigned long     myModifiedTime;
+
+  OB_FindDlg*       myFindDlg;
 };
 
 #endif
index 07ed30dd595c3dfe12faf6117c9db5200c1235eb..5b07adc0350c634938c7b851af0c5d991e82865b 100644 (file)
@@ -1,6 +1,6 @@
 
-#include <OB_FindDlg.h>
-#include <OB_ObjSearch.h>
+#include "OB_FindDlg.h"
+#include "OB_ObjSearch.h"
 #include <OB_Browser.h>
 #include <OB_ListItem.h>
 
index 6106d9fef45cd179dd11bd78bf590f80411f7b7c..5562729a025208f851834e6bc513563f0260821f 100644 (file)
@@ -2,13 +2,14 @@
 #ifndef OBJECT_BROWSER_OBJECT_SEARCH_HEADER
 #define OBJECT_BROWSER_OBJECT_SEARCH_HEADER
 
+#include <ob.h>
 #include <qstring.h>
 
 class OB_ListItem;
 class OB_Browser;
 class SUIT_DataObject;
 
-class OB_ObjSearch
+class OB_EXPORT OB_ObjSearch
 {
 public:
   OB_ObjSearch( OB_Browser* );
index 4b18212e97b2d274395c82592971121805a62bcd..2209af5a6bdd01989a7a35fd8482d3a48d6e4481 100755 (executable)
@@ -30,3 +30,17 @@ msgstr ""
 msgid "MEN_EXPAND_ALL"
 msgstr "Expand All"
 
+msgid "OB_FindDlg::FIND"
+msgstr "Find"
+
+msgid "OB_FindDlg::CLOSE"
+msgstr "Close"
+
+msgid "OB_FindDlg::CASE_SENSITIVE"
+msgstr "Case sensitive"
+
+msgid "OB_FindDlg::IS_REG_EXP"
+msgstr "Regular expression"
+
+msgid "OB_FindDlg::NOT_FOUND"
+msgstr "There is no object is found"