Itasca C++ Interface
irangeelementgroup.h
Go to the documentation of this file.
1 #pragma once
2 // irangeelementgroup.h
3 
5 
10 namespace itasca {
11  class IGroup;
12 }
13 
14 namespace itascaxd {
16 
20  class IRangeElementGroup { // name = "real"
21  public:
23  inline static const TType type_ = 0x4c815b95;
24 
25  typedef std::pair<QString,QString> Entry; // Slot,Group
26  typedef std::vector<Entry> Entries;
27 
28  shared::Signal<const QString &, const QString &> entryAdded; // slot, group
29  shared::Signal<const QString &, const QString &> entryRemoved; // slot, group
30  shared::Signal<bool> andChanged;
31  shared::Signal<bool> onlyChanged;
32  shared::Signal<const QString &> byNameChanged; // name
33  shared::Signal<uint32> matchesChanged;
34 
35 
36  virtual Entries getAllEntries() const=0;
38  virtual bool getAnd() const=0;
40  virtual bool getOnly() const=0;
41  virtual uint32 getMatches() const=0;
42  virtual QString getByName() const=0;
43  // Looks for "slot=group" string and decomposes into SLOT,GROUP names.
44  // If no = is present then SLOT will be null.
45  virtual Entry decompose(const QString &groupName) const=0;
46  virtual void setAllSlots(const QString &slot)=0;
47 
48  // SLOTS
51  virtual bool addEntry(const QString &slot,const QString &name)=0;
54  virtual bool removeEntry(const QString &slot,const QString &name)=0;
57  virtual void setAnd(bool b)=0;
59  virtual void setOnly(bool b)=0;
60  virtual void setMatches(uint32 i)=0;
61  virtual void setByName(const QString &name)=0;
64  virtual void clear()=0;
66  virtual void enableByParsing()=0;
67  };
68 }
69 namespace module {
71 }
72 
73 // EoF
Interface to a group filter element, used to filter objects by group assignment.
Definition: irangeelementgroup.h:20
virtual void setAnd(bool b)=0
static const TType type_
The type identification number for this class, for use in convert_cast() and convert_getcast().
Definition: irangeelementgroup.h:23
virtual bool addEntry(const QString &slot, const QString &name)=0
virtual void enableByParsing()=0
Set that parsing using the BY keyword is enabled.
virtual bool getAnd() const =0
Returns the AND state, if true then object must belong to ALL groups.
virtual bool getOnly() const =0
Returns the ONLY state, if true then object must not be a direct member of any groups not on this lis...
virtual bool removeEntry(const QString &slot, const QString &name)=0
virtual void setOnly(bool b)=0
Returns the ONLY state, if true then object must not be a direct member of any groups not on this lis...
uint32 TType
class type indicator
Definition: basedef.h:46
Interface to a filter element, which is a member of a IRange.
namespace Itasca
Definition: basememory.cpp:10
Itasca Library standard namespace, specific to 2D or 3D.
Definition: icontactmodule.h:4