X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_Operation.h;h=11e38511912cecd5891e3c36fc093089bd6e61b2;hb=6ba63abdcb5832a1773cb33cf67d6b34aee4139d;hp=05879abfc0ad272539dc1f61a88d7f58dd860160;hpb=4b12d6397f2a39475854439da49411ea6c3e4d06;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_Operation.h b/src/HYDROGUI/HYDROGUI_Operation.h index 05879abf..11e38511 100644 --- a/src/HYDROGUI/HYDROGUI_Operation.h +++ b/src/HYDROGUI/HYDROGUI_Operation.h @@ -1,12 +1,8 @@ -// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE -// -// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// +// Copyright (C) 2014-2015 EDF-R&D // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -24,6 +20,8 @@ #define HYDROGUI_OPERATION_H #include +#include +#include class HYDROGUI_Module; class HYDROGUI_InputPanel; @@ -32,8 +30,8 @@ class HYDROGUI_Shape; class SUIT_SelectionMgr; class OCCViewer_ViewManager; -class Handle_HYDROData_Document; -class Handle_HYDROData_Object; +class HYDROData_Document; +class HYDROData_Object; class HYDROGUI_Operation : public LightApp_Operation { @@ -71,22 +69,27 @@ protected: virtual HYDROGUI_InputPanel* createInputPanel() const; virtual void closeInputPanel(); - virtual bool processApply( int& theUpdateFlags, QString& theErrorMsg ); + virtual bool processApply( int& theUpdateFlags, QString& theErrorMsg, + QStringList& theBrowseObjectsEntries ); virtual void processCancel(); void startDocOperation(); void abortDocOperation(); void commitDocOperation(); - Handle_HYDROData_Document doc() const; + Handle(HYDROData_Document) doc() const; virtual bool isToAbortOnApply() const { return true; } void printErrorMessage( const QString& theErrorMsg ); void setPrintErrorMessage( const bool theIsPrint ); + void browseObjects( const QStringList& theBrowseObjectsEntries, + const bool theIsApplyAndClose = true ); + protected slots: + virtual void onApplyAndClose(); virtual void onApply(); virtual void onCancel(); virtual void onHelp(); @@ -102,6 +105,31 @@ protected: OCCViewer_ViewManager* getPreviewManager(); void setPreviewManager( OCCViewer_ViewManager* theManager ); + /** + * Set specific cursor chosen in preferences for edition operations. + */ + virtual void setCursor(); + /** + * Restore the default cursor. + */ + virtual void restoreCursor(); + + /** + * Set flag indicating, if 'Apply and Close' button is clicked on input panel. + * @param theFlag a flag value to be set + */ + virtual void setIsApplyAndClose( const bool theFlag ); + /** + * Get flag indicating, if 'Apply and Close' button is clicked on input panel. + * \return a flag value + */ + virtual bool isApplyAndClose() const; + + /** + * Apply changes done by this operation. + */ + virtual void apply(); + private: HYDROGUI_Module* myModule; @@ -111,6 +139,10 @@ private: bool myIsPrintErrorMessage; bool myIsTransactionOpened; int myPreviewZLayer; + + QCursor myCursor; + + bool myIsApplyAndClose; }; #endif