class XGUI_Displayer;
class XGUI_ErrorDialog;
class XGUI_ErrorMgr;
+class XGUI_MenuMgr;
class XGUI_ModuleConnector;
class XGUI_ObjectsBrowser;
class XGUI_OperationMgr;
class QMainWindow;
class QAction;
-
+class Config_DataModelReader;
/**\class XGUI_Workshop
* \ingroup GUI
return myActionsMgr;
}
+ //! ! Returns an actions manager
+ XGUI_MenuMgr* menuMgr() const
+ {
+ return myMenuMgr;
+ }
+
//! Returns property panel widget
XGUI_PropertyPanel* propertyPanel() const
{
/// \param theMode a mode to set (see \ref XGUI_Displayer)
void setDisplayMode(const QObjectPtrList& theList, int theMode);
+ /// Set selection mode in viewer. If theMode=-1 then activate default mode
+ /// \param theMode the selection mode (according to TopAbs_ShapeEnum)
+ void setViewerSelectionMode(int theMode);
+
+ /// Activates current selection mode for the given list of objects
+ void activateObjectsSelection(const QObjectPtrList& theList);
+
/// Returns current module
ModuleBase_IModule* module() const
{
/// \param isToConnect a boolean value whether connect or disconnect
void connectToPropertyPanel(const bool isToConnect);
+ /// Returns defailt selection mode in 3d viewer
+ int viewerSelectionMode() const { return myViewerSelMode; }
+
+ /// Highlights result objects in Object Browser according to
+ /// features found in the given list
+ void highlightResults(const QObjectPtrList& theObjects);
+
+ /// Returns Data Model XML reader which contains information about
+ /// Data structure configuration
+ const Config_DataModelReader* dataModelXMLReader() const { return myDataModelXMLReader; }
+
/// A constant string used for "Move to end" command definition
/// It is used for specific processing of Undo/Redo for this command.
static QString MOVE_TO_END_COMMAND;
/// differs in the new state of paged container
void onValuesChanged();
+ /// Listens the corresponded signal of model widget and updates Apply button state by feature
+ void onWidgetObjectUpdated();
+
/// Show property panel
void showPropertyPanel();
/// Activates/deactivates the trihedron in the viewer AIS context
void onTrihedronVisibilityChanged(bool theState);
+
protected:
/// Sets the granted operations for the parameter operation. Firstly, it finds the nested features
/// and set them into the operation. Secondly, it asks the module about ids of granted operations.
/// the operation can be committed and do it if it returns true.
void onAcceptActionClicked();
+ /// Called by Preview button clicked in the property panel. Sends signal to model to
+ /// compute preview.
+ void onPreviewActionClicked();
+
private:
/// Init menu
void initMenu();
//! \param theList an objects to be deleted
//! \param theIgnoredFeatures a list of features to be ignored during delete
//! \param theActionId an action command key to find context menu object types enabled for remove
+ //! \param theFlushRedisplay a boolean value if the redisplay signal should be flushed
bool removeFeatures(const QObjectPtrList& theList,
const std::set<FeaturePtr>& theIgnoredFeatures,
- const QString& theActionId);
+ const QString& theActionId,
+ const bool theFlushRedisplay);
//! Creates list of actions (commands) by given history list from session
QList<ActionInfo> processHistoryList(const std::list<std::string>&) const;
XGUI_Displayer* myDisplayer;
XGUI_OperationMgr* myOperationMgr; ///< manager to manipulate through the operations
XGUI_ActionsMgr* myActionsMgr;
+ XGUI_MenuMgr* myMenuMgr; ///< manager to build menu/tool bar using order defined in XML
XGUI_SalomeConnector* mySalomeConnector;
XGUI_ErrorDialog* myErrorDlg;
XGUI_ViewerProxy* myViewerProxy;
XGUI_WorkshopListener* myEventsListener;
QString myCurrentDir;
+
+ int myViewerSelMode;
+
+ Config_DataModelReader* myDataModelXMLReader;
};
#endif