X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FVTKViewer%2FVTKViewer_ViewModel.h;h=c5b872abe49a8166b20dc631917c19897965ca87;hb=refs%2Fheads%2Fngr%2Fpython3_dev_pv5.4;hp=efd3078a0cfb9388dc867442ef47e98567262882;hpb=08209796122a4ed12a8bf21b4b2e3e54119e6f4b;p=modules%2Fgui.git diff --git a/src/VTKViewer/VTKViewer_ViewModel.h b/src/VTKViewer/VTKViewer_ViewModel.h index efd3078a0..c5b872abe 100755 --- a/src/VTKViewer/VTKViewer_ViewModel.h +++ b/src/VTKViewer/VTKViewer_ViewModel.h @@ -1,10 +1,35 @@ +// Copyright (C) 2007-2016 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 +// +// 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, 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 +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// + #ifndef VTKVIEWER_VIEWMODEL_H #define VTKVIEWER_VIEWMODEL_H #include "VTKViewer.h" +#include "Qtx.h" #include "SUIT_ViewModel.h" -#include +#include + +class QMouseEvent; class SUIT_ViewWindow; class SUIT_Desktop; @@ -14,8 +39,22 @@ class VTKVIEWER_EXPORT VTKViewer_Viewer: public SUIT_ViewModel Q_OBJECT public: + /*! supported gradient types */ + enum { + HorizontalGradient, + VerticalGradient, + FirstDiagonalGradient, + SecondDiagonalGradient, + FirstCornerGradient, + SecondCornerGradient, + ThirdCornerGradient, + FourthCornerGradient, + LastGradient = FourthCornerGradient, + }; + /*!Initialize type of viewer.*/ - static QString Type() { return "VTKViewer"; } + static QString Type() { return "VTKViewer"; } + static QString backgroundData( QStringList&, QIntList&, QIntList& ); VTKViewer_Viewer(); virtual ~VTKViewer_Viewer(); @@ -23,40 +62,42 @@ public: virtual SUIT_ViewWindow* createView(SUIT_Desktop* theDesktop); virtual void setViewManager(SUIT_ViewManager* theViewManager); - virtual void contextMenuPopup( QPopupMenu* ); + virtual void contextMenuPopup( QMenu* ); /*!Gets type of viewer.*/ virtual QString getType() const { return Type(); } public: - void enableSelection(bool isEnabled); + void enableSelection(bool isEnabled); /*!Checks: is selection enabled*/ - bool isSelectionEnabled() const { return mySelectionEnabled; } + bool isSelectionEnabled() const { return mySelectionEnabled; } - void enableMultiselection(bool isEnable); + void enableMultiselection(bool isEnable); /*!Checks: is multi selection enabled*/ - bool isMultiSelectionEnabled() const { return myMultiSelectionEnabled; } + bool isMultiSelectionEnabled() const { return myMultiSelectionEnabled; } - int getSelectionCount() const; + int getSelectionCount() const; - QColor backgroundColor() const; - void setBackgroundColor( const QColor& ); + QColor backgroundColor() const; // obsolete + void setBackgroundColor( const QColor& ); // obsolete + Qtx::BackgroundData background() const; + void setBackground( const Qtx::BackgroundData& ); signals: - void selectionChanged(); + void selectionChanged(); protected slots: - void onMousePress(SUIT_ViewWindow*, QMouseEvent*); - void onMouseMove(SUIT_ViewWindow*, QMouseEvent*); - void onMouseRelease(SUIT_ViewWindow*, QMouseEvent*); + void onMousePress( SUIT_ViewWindow*, QMouseEvent* ); + void onMouseMove( SUIT_ViewWindow*, QMouseEvent* ); + void onMouseRelease( SUIT_ViewWindow*, QMouseEvent* ); - void onDumpView(); - void onShowToolbar(); - void onChangeBgColor(); + void onDumpView(); + void onShowToolbar(); + void onChangeBackground(); private: - QColor myBgColor; - bool mySelectionEnabled; - bool myMultiSelectionEnabled; + Qtx::BackgroundData myDefaultBackground; + bool mySelectionEnabled; + bool myMultiSelectionEnabled; }; #endif