1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
|
// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to
// this header file considered to be the "object code" form of the original source.
#ifndef _IFSelect_SelectPointed_HeaderFile
#define _IFSelect_SelectPointed_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineHandle.hxx>
#include <Handle_IFSelect_SelectPointed.hxx>
#include <Standard_Boolean.hxx>
#include <TColStd_SequenceOfTransient.hxx>
#include <IFSelect_SelectBase.hxx>
#include <Handle_Standard_Transient.hxx>
#include <Handle_TColStd_HSequenceOfTransient.hxx>
#include <Standard_Integer.hxx>
#include <Handle_Interface_CopyControl.hxx>
#include <Handle_IFSelect_Transformer.hxx>
class Interface_InterfaceError;
class Standard_Transient;
class TColStd_HSequenceOfTransient;
class Interface_CopyControl;
class IFSelect_Transformer;
class Interface_EntityIterator;
class Interface_Graph;
class TCollection_AsciiString;
//! This type of Selection is intended to describe a direct
//! selection without an explicit criterium, for instance the
//! result of picking viewed entities on a graphic screen
//!
//! It can also be used to provide a list as internal alternate
//! input : this use implies to clear the list once queried
class IFSelect_SelectPointed : public IFSelect_SelectBase
{
public:
//! Creates a SelectPointed
Standard_EXPORT IFSelect_SelectPointed();
//! Clears the list of selected items
//! Also says the list is unset
//! All Add* methods and SetList say the list is set
Standard_EXPORT void Clear() ;
//! Tells if the list has been set. Even if empty
Standard_EXPORT Standard_Boolean IsSet() const;
//! As SetList but with only one entity
//! If <ent> is Null, the list is said as being set but is empty
Standard_EXPORT void SetEntity (const Handle(Standard_Transient)& item) ;
//! Sets a given list to define the list of selected items
//! <list> can be empty or null : in this case, the list is said
//! as being set, but it is empty
//!
//! To use it as an alternate input, one shot :
//! - SetList or SetEntity to define the input list
//! - RootResult to get it
//! - then Clear to drop it
Standard_EXPORT void SetList (const Handle(TColStd_HSequenceOfTransient)& list) ;
//! Adds an item. Returns True if Done, False if <item> is already
//! in the selected list
Standard_EXPORT Standard_Boolean Add (const Handle(Standard_Transient)& item) ;
//! Removes an item. Returns True if Done, False if <item> was not
//! in the selected list
Standard_EXPORT Standard_Boolean Remove (const Handle(Standard_Transient)& item) ;
//! Toggles status of an item : adds it if not pointed or removes
//! it if already pointed. Returns the new status (Pointed or not)
Standard_EXPORT Standard_Boolean Toggle (const Handle(Standard_Transient)& item) ;
//! Adds all the items defined in a list. Returns True if at least
//! one item has been added, False else
Standard_EXPORT Standard_Boolean AddList (const Handle(TColStd_HSequenceOfTransient)& list) ;
//! Removes all the items defined in a list. Returns True if at
//! least one item has been removed, False else
Standard_EXPORT Standard_Boolean RemoveList (const Handle(TColStd_HSequenceOfTransient)& list) ;
//! Toggles status of all the items defined in a list : adds it if
//! not pointed or removes it if already pointed.
Standard_EXPORT Standard_Boolean ToggleList (const Handle(TColStd_HSequenceOfTransient)& list) ;
//! Returns the rank of an item in the selected list, or 0.
Standard_EXPORT Standard_Integer Rank (const Handle(Standard_Transient)& item) const;
//! Returns the count of selected items
Standard_EXPORT Standard_Integer NbItems() const;
//! Returns an item given its rank, or a Null Handle
Standard_EXPORT Handle(Standard_Transient) Item (const Standard_Integer num) const;
//! Rebuilds the selected list. Any selected entity which has a
//! bound result is replaced by this result, else it is removed.
Standard_EXPORT void Update (const Handle(Interface_CopyControl)& control) ;
//! Rebuilds the selected list, by querying a Transformer
//! (same principle as from a CopyControl)
Standard_EXPORT void Update (const Handle(IFSelect_Transformer)& trf) ;
//! Returns the list of selected items. Only the selected entities
//! which are present in the graph are given (this result assures
//! uniqueness).
Standard_EXPORT Interface_EntityIterator RootResult (const Interface_Graph& G) const;
//! Returns a text which identifies the type of selection made.
//! It is "Pointed Entities"
Standard_EXPORT TCollection_AsciiString Label() const;
DEFINE_STANDARD_RTTI(IFSelect_SelectPointed)
protected:
private:
Standard_Boolean theset;
TColStd_SequenceOfTransient theitems;
};
#endif // _IFSelect_SelectPointed_HeaderFile
|