tge/lib/maxsdk40/shpsels.h
2017-04-17 06:17:10 -06:00

104 lines
3.3 KiB
C++
Executable File

/**********************************************************************
*<
FILE: shpsels.h
DESCRIPTION: Defines Shape Selection utility objects
CREATED BY: Tom Hudson
HISTORY: created 31 October 1995
*> Copyright (c) 1995, All Rights Reserved.
**********************************************************************/
#ifndef __SHPSELS__
#define __SHPSELS__
class BezierShape;
class PolyShape;
class ShapeVSel {
public:
int polys;
BitArray *sel;
CoreExport ShapeVSel();
CoreExport ShapeVSel(ShapeVSel& from);
CoreExport ~ShapeVSel();
CoreExport ShapeVSel& operator=(ShapeVSel& from);
CoreExport BOOL operator==(ShapeVSel& s);
CoreExport void Insert(int where,int count=0);
CoreExport void Delete(int where);
CoreExport void SetSize(ShapeVSel& selset, BOOL save=FALSE);
CoreExport void SetSize(BezierShape& shape, BOOL save=FALSE);
CoreExport void SetSize(PolyShape& shape, BOOL save=FALSE);
CoreExport BitArray& operator[](int index);
CoreExport void ClearAll();
CoreExport void SetAll();
CoreExport void Toggle();
CoreExport void Empty();
CoreExport BOOL IsCompatible(ShapeVSel& selset);
CoreExport BOOL IsCompatible(BezierShape& shape);
CoreExport BOOL IsCompatible(PolyShape& shape);
CoreExport IOResult Save(ISave* isave);
CoreExport IOResult Load(ILoad* iload);
};
class ShapeSSel {
public:
int polys;
BitArray *sel;
CoreExport ShapeSSel();
CoreExport ShapeSSel(ShapeSSel& from);
CoreExport ~ShapeSSel();
CoreExport ShapeSSel& operator=(ShapeSSel& from);
CoreExport BOOL operator==(ShapeSSel& s);
CoreExport void Insert(int where,int count=0);
CoreExport void Delete(int where);
CoreExport void SetSize(ShapeSSel& selset, BOOL save=FALSE);
CoreExport void SetSize(BezierShape& shape, BOOL save=FALSE);
CoreExport void SetSize(PolyShape& shape, BOOL save=FALSE);
CoreExport BitArray& operator[](int index);
CoreExport void ClearAll();
CoreExport void SetAll();
CoreExport void Toggle();
CoreExport void Empty();
CoreExport BOOL IsCompatible(ShapeSSel& selset);
CoreExport BOOL IsCompatible(BezierShape& shape);
CoreExport BOOL IsCompatible(PolyShape& shape);
CoreExport IOResult Save(ISave* isave);
CoreExport IOResult Load(ILoad* iload);
};
class ShapePSel {
public:
int polys;
BitArray sel;
CoreExport ShapePSel();
CoreExport ShapePSel(ShapePSel& from);
CoreExport ~ShapePSel();
CoreExport ShapePSel& operator=(ShapePSel& from);
CoreExport BOOL operator==(ShapePSel& s);
CoreExport void Insert(int where);
CoreExport void Delete(int where);
CoreExport void SetSize(ShapePSel& selset, BOOL save=FALSE);
CoreExport void SetSize(BezierShape& shape, BOOL save=FALSE);
CoreExport void SetSize(PolyShape& shape, BOOL save=FALSE);
CoreExport void Set(int index);
CoreExport void Set(int index, int value);
CoreExport void Clear(int index);
CoreExport int operator[](int index) const;
CoreExport void ClearAll();
CoreExport void SetAll();
CoreExport void Toggle();
CoreExport void Empty();
CoreExport BOOL IsCompatible(ShapePSel& selset);
CoreExport BOOL IsCompatible(BezierShape& shape);
CoreExport BOOL IsCompatible(PolyShape& shape);
CoreExport IOResult Save(ISave* isave);
CoreExport IOResult Load(ILoad* iload);
};
#endif __SHPSELS__