-// Copyright (C) 2005 OPEN CASCADE
+// Copyright (C) 2007-2020 CEA/DEN, EDF R&D, OPEN CASCADE
//
-// 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.
+// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
//
-// 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.
+// 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.
//
-// 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
+// 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.
//
-// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
+// 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
//
-// Author : OPEN CASCADE
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
+// Author : OPEN CASCADE
// File: GLViewer_Group.xx
// Created: March, 2005
-
//#include "GLViewerAfx.h"
+//
#include "GLViewer_Group.h"
#include "GLViewer_Object.h"
-/***************************************************************************
-** Class: GLViewer_Group
-** Descr: Group of GLViewer_Objects
-** Module: GLViewer
-** Created: UI team, 25.03.05
-****************************************************************************/
-
-//--------------------------------------------------------------------------
-//Function: GLViewer_Group()
-//Description: constructor
-//--------------------------------------------------------------------------
+/*!
+ constructor
+*/
GLViewer_Group::GLViewer_Group()
{
mySelObjNum = 0;
}
-//--------------------------------------------------------------------------
-//Function: GLViewer_Group()
-//Description: destructor
-//--------------------------------------------------------------------------
+/*!
+ destructor
+*/
GLViewer_Group::~GLViewer_Group()
{
}
-//--------------------------------------------------------------------------
-//Function: isEmpty
-//Description: detection of empty group
-//--------------------------------------------------------------------------
+/*!
+ detection of empty group
+*/
bool GLViewer_Group::isEmpty()
{
return myList.empty();
}
-//--------------------------------------------------------------------------
-//Function: count
-//Description: number of elements
-//--------------------------------------------------------------------------
+/*!
+ \return number of elements
+*/
int GLViewer_Group::count()
{
- return myList.size();
+ return (int)myList.size(); //!< TODO: conversion from size_t to int
}
-//--------------------------------------------------------------------------
-//Function: contains
-//Description: return the position of object, else -1
-//--------------------------------------------------------------------------
+/*!
+ \return the position of object if group contains it, else -1
+*/
int GLViewer_Group::contains( GLViewer_Object* theObject )
{
if( !theObject )
return -1;
}
-//--------------------------------------------------------------------------
-//Function: addObject
-//Description: adding object to group
-//--------------------------------------------------------------------------
+/*!
+ adding object to group
+*/
int GLViewer_Group::addObject( GLViewer_Object* theObject )
{
if( theObject && contains( theObject ) == -1 )
return count();
}
-//--------------------------------------------------------------------------
-//Function: removeObject
-//Description: removing object from group
-//--------------------------------------------------------------------------
+/*!
+ removing object from group
+*/
int GLViewer_Group::removeObject( GLViewer_Object* theObject )
{
if( theObject )
return count();
}
-//--------------------------------------------------------------------------
-//Function: dragingObjects
-//Description:
-//--------------------------------------------------------------------------
+/*!
+ Dragging operation
+ \param Once is true, if this operation calls only one time for all object
+ \param x, y - dragging position
+*/
void GLViewer_Group::dragingObjects( float x, float y, bool once )
{
if( !once )
(*it)->moveObject( x, y, true );
}
-//--------------------------------------------------------------------------
-//Function: updateZoom
-//Description:
-//--------------------------------------------------------------------------
+/*!
+ Updates zoom of object
+ \param sender - object to be updated
+ \param zoom - zoom coefficient
+*/
void GLViewer_Group::updateZoom( GLViewer_Object* sender, float zoom )
{
OGIterator it = myList.begin();