#include <SALOMEDSClient_SComponent.hxx>
#include <SALOMEDSClient_StudyBuilder.hxx>
#include <SALOMEDS_Study.hxx>
+#include <SALOMEDS_SObject.hxx>
// OCCT includes
#include <Standard_ErrorHandler.hxx>
}
}
+ void sortChildren(){
+ LightApp_SelectionMgr *aSel = SMESHGUI::selectionMgr();
+ SALOME_ListIO selected;
+ if( aSel ) {
+ aSel->selectedObjects( selected );
+
+ if(selected.Extent()){
+ Handle(SALOME_InteractiveObject) anIObject = selected.First();
+ _PTR(Study) aStudy = SMESH::GetActiveStudyDocument();
+ _PTR(SObject) aSObj = aStudy->FindObjectID(anIObject->getEntry());
+ if (aSObj) {
+ if ( aStudy->GetUseCaseBuilder()->SortChildren( aSObj, true/*AscendingOrder*/ ) ) {
+ SMESHGUI::GetSMESHGUI()->updateObjBrowser();
+ }
+ }
+ }
+ }
+ }
+
void SetDisplayMode(int theCommandID, SMESHGUI_StudyId2MarkerMap& theMarkerMap)
{
SALOME_ListIO selected;
dlg->show();
break;
}
+ case 41:
+ ::sortChildren();
+ break;
+
}
anApp->updateActions(); //SRN: To update a Save button in the toolbar
createSMESHAction( 301, "SHOW" );
createSMESHAction( 302, "DISPLAY_ONLY" );
+ createSMESHAction( 41, "SORT_CHILD_ITEMS" );
+
// ----- create menu --------------
int fileId = createMenu( tr( "MEN_FILE" ), -1, 1 ),
editId = createMenu( tr( "MEN_EDIT" ), -1, 3 ),
popupMgr()->insert( separator(), -1, -1 );
+ popupMgr()->insert( action( 41 ), -1, -1 );
+ popupMgr()->setRule( action( 41 ), "$component={'SMESH'} and client='ObjectBrowser' and isContainer and nbChildren>1", QtxPopupMgr::VisibleRule );
+ popupMgr()->insert( separator(), -1, -1 );
+
connect( application(), SIGNAL( viewManagerActivated( SUIT_ViewManager* ) ),
this, SLOT( onViewManagerActivated( SUIT_ViewManager* ) ) );