]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
Merge debug for TRIPOLI (V6_1_BR, 11/11/11) RELIQUAT_6x_15112011
authorvsr <vsr@opencascade.com>
Fri, 11 Nov 2011 07:51:03 +0000 (07:51 +0000)
committervsr <vsr@opencascade.com>
Fri, 11 Nov 2011 07:51:03 +0000 (07:51 +0000)
src/OCCViewer/OCCViewer_ViewModel.h
src/SUIT/SUIT_DataBrowser.cxx
src/SUIT/SUIT_DataBrowser.h

index 8f08f28c6efe36b9b696f17d7605151744e7d3c4..5c5c7bfe2e95e328c2dbfdc01ee870c23f20036f 100755 (executable)
@@ -144,10 +144,10 @@ signals:
 protected:
 
 protected slots:
-  void onMousePress(SUIT_ViewWindow*, QMouseEvent*);
-  void onMouseMove(SUIT_ViewWindow*, QMouseEvent*);
-  void onMouseRelease(SUIT_ViewWindow*, QMouseEvent*);
-  void onKeyPress(SUIT_ViewWindow*, QKeyEvent*);
+  virtual void onMousePress(SUIT_ViewWindow*, QMouseEvent*);
+  virtual void onMouseMove(SUIT_ViewWindow*, QMouseEvent*);
+  virtual void onMouseRelease(SUIT_ViewWindow*, QMouseEvent*);
+  virtual void onKeyPress(SUIT_ViewWindow*, QKeyEvent*);
 
   void onDumpView();
   void onChangeBgColor();
@@ -155,7 +155,7 @@ protected slots:
   void onChangeBgImageTiled();
   void onChangeBgImageStretched();
 
-private:
+protected:
   Handle(V3d_Viewer)              myV3dViewer;
   Handle(V3d_Viewer)              myV3dCollector;
 
index be6b8b1d6fa3ee6048dd9306c7c3d0922103bad9..f470f6397724d033285cbbbcf65b17de9062d40e 100644 (file)
@@ -269,6 +269,39 @@ void SUIT_DataBrowser::setSelected( const DataObjectList& lst, const bool append
   }
 }
 
+/*!
+  \brief Make the view item for specified data object is visible.
+  \param obj data object
+*/
+void SUIT_DataBrowser::ensureVisible( SUIT_DataObject* obj )
+{
+  if ( !obj )
+    return;
+
+  DataObjectList lst;
+  lst.append( obj );
+  ensureVisible( lst );
+}
+
+/*!
+  \brief Make the view items for specified data objects is visible.
+  \param lst data object list
+*/
+void SUIT_DataBrowser::ensureVisible( const DataObjectList& lst )
+{
+  QtxTreeView* tv = treeView();
+  SUIT_AbstractModel* treeModel = dynamic_cast<SUIT_AbstractModel*>( model() );
+  if ( !tv || !treeModel )
+    return;
+
+  for ( DataObjectList::const_iterator it = lst.begin(); it != lst.end(); ++it )
+  {
+    QModelIndex idx = treeModel->index( *it );
+    if ( idx.isValid() )
+      tv->scrollTo( idx );
+  }
+}
+
 /*!
   \brief Add custom actions to the popup menu.
   \param menu popup menu
index 6807cb9536e299353d238b3d05756790c1a629c2..c7976283ea1991923b6fc3f80694e49aa6342978 100644 (file)
@@ -69,6 +69,9 @@ public:
   void             setAutoSizeColumns( const bool on );
   void             setResizeOnExpandItem( const bool on );
 
+  void             ensureVisible( SUIT_DataObject* );
+  void             ensureVisible( const DataObjectList& );
+
 protected:
   virtual void     contextMenuEvent( QContextMenuEvent* );