+// Copyright (C) 2007-2024 CEA, EDF, 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
+//
+
+// Author : OPEN CASCADE
// File: GLViewer_Context.h
// Created: November, 2004
-// Author: OCC team
-// Copyright (C) CEA 2004
-
-
-/*! Class GLViewer_Context
- * Class for manage of presentations in GLViewer
- */
-
+//
#ifndef GLVIEWER_CONTEXT_H
#define GLVIEWER_CONTEXT_H
-#ifdef WNT
+#ifdef WIN32
#include "windows.h"
#endif
#include "GLViewer_Defs.h"
#include "GLViewer_Object.h"
-#include <qrect.h>
-#include <qobject.h>
-#include <qregion.h>
+class QRect;
#include <Quantity_NameOfColor.hxx>
#include <Quantity_Color.hxx>
+#ifdef __APPLE__
+#include <OpenGL/gl.h>
+#else
#include <GL/gl.h>
+#endif
class GLViewer_Viewer2d;
-#ifdef WNT
+#ifdef WIN32
#pragma warning( disable:4251 )
#endif
+/*! \class GLViewer_Context
+ * Class for manage of presentations in GLViewer
+ */
class GLVIEWER_API GLViewer_Context
{
public:
*\paran byCircle - true if needs round sensitive area around mouse cursor, else rectangle
*function search object rectangle which intersect with sensitive area and call object highlight method
*/
- int MoveTo( int x, int y, bool byCircle = FALSE );
- //! A function selecting already highlighting object by calling object method select
- /*!
+ int MoveTo( int x, int y, bool byCircle = false );
+ /*! A function selecting already highlighting object by calling object method select
*\param Append - true if new selection will be append to existing selection, false - another
*\param byCircle - true if needs round selection area in complex object
*/
- int Select( bool Append = FALSE, bool byCircle = FALSE );
- //! A function selecting objects on scene by rectangle
- /*!
+ int Select( bool Append = false, bool byCircle = false );
+ /*! A function selecting objects on scene by rectangle
*\param theRect - rectangle of selection
*\param Append - true if new selection will be append to existing selection, false - another
*function search object rectangle which intersect with theRect and call object select method
*/
- int SelectByRect( const QRect& theRect, bool Append = FALSE );
+ int SelectByRect( const QRect& theRect, bool Append = false );
//! A function installing highlight color for all presentation (does not work)
void SetHighlightColor( Quantity_NameOfColor aCol );
int insertObject( GLViewer_Object* theObject, bool display = false, bool isActive = true );
//! Replacing objects in context
/*!
- * Function search activ and incative objects
+ * Function search active and incative objects
*/
bool replaceObject( GLViewer_Object* oldObject, GLViewer_Object* newObject );
//! A function updating scales of all objects in context
//! Returns list of context objects
/*!
- * Returns active objects if isActive = true, else inactive objects
+ * \return active objects if isActive = true, else inactive objects
*/
const ObjList& getObjects( bool isActive = true )
{ return isActive ? myActiveObjects : myInactiveObjects; }
GLViewer_Object* getFirstObject() { return *( myActiveObjects.begin() ); }
//! A function clear highlighted object information
- void clearHighlighted();
+ void clearHighlighted( bool updateViewer );
//! A function clear selection object information
void clearSelected( bool updateViewer );
//! A function make theObject as selected object and update viewer if updateViewer = true
int myTolerance;
};
-#ifdef WNT
+#ifdef WIN32
#pragma warning ( default:4251 )
#endif