openshot-audio  0.1.7
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
ValueTree::SharedObject Class Reference
Inheritance diagram for ValueTree::SharedObject:
ReferenceCountedObject

Classes

class  AddOrRemoveChildAction
 
class  MoveChildAction
 
class  SetPropertyAction
 

Public Types

typedef ReferenceCountedObjectPtr< SharedObject > Ptr
 

Public Member Functions

 SharedObject (const Identifier &t) noexcept
 
 SharedObject (const SharedObject &other)
 
 ~SharedObject ()
 
template<typename Method >
void callListeners (Method method, ValueTree &tree) const
 
template<typename Method , typename ParamType >
void callListeners (Method method, ValueTree &tree, ParamType &param2) const
 
template<typename Method , typename ParamType1 , typename ParamType2 >
void callListeners (Method method, ValueTree &tree, ParamType1 &param2, ParamType2 &param3) const
 
void sendPropertyChangeMessage (const Identifier &property)
 
void sendChildAddedMessage (ValueTree child)
 
void sendChildRemovedMessage (ValueTree child, int index)
 
void sendChildOrderChangedMessage (int oldIndex, int newIndex)
 
void sendParentChangeMessage ()
 
void setProperty (const Identifier &name, const var &newValue, UndoManager *const undoManager)
 
bool hasProperty (const Identifier &name) const noexcept
 
void removeProperty (const Identifier &name, UndoManager *const undoManager)
 
void removeAllProperties (UndoManager *const undoManager)
 
void copyPropertiesFrom (const SharedObject &source, UndoManager *const undoManager)
 
ValueTree getChildWithName (const Identifier &typeToMatch) const
 
ValueTree getOrCreateChildWithName (const Identifier &typeToMatch, UndoManager *undoManager)
 
ValueTree getChildWithProperty (const Identifier &propertyName, const var &propertyValue) const
 
bool isAChildOf (const SharedObject *const possibleParent) const noexcept
 
int indexOf (const ValueTree &child) const noexcept
 
void addChild (SharedObject *child, int index, UndoManager *const undoManager)
 
void removeChild (const int childIndex, UndoManager *const undoManager)
 
void removeAllChildren (UndoManager *const undoManager)
 
void moveChild (int currentIndex, int newIndex, UndoManager *undoManager)
 
void reorderChildren (const OwnedArray< ValueTree > &newOrder, UndoManager *undoManager)
 
bool isEquivalentTo (const SharedObject &other) const
 
XmlElement * createXml () const
 
void writeToStream (OutputStream &output) const
 
- Public Member Functions inherited from ReferenceCountedObject
void incReferenceCount () noexcept
 
void decReferenceCount () noexcept
 
bool decReferenceCountWithoutDeleting () noexcept
 
int getReferenceCount () const noexcept
 

Static Public Member Functions

static void writeObjectToStream (OutputStream &output, const SharedObject *const object)
 

Public Attributes

const Identifier type
 
NamedValueSet properties
 
ReferenceCountedArray< SharedObject > children
 
SortedSet< ValueTree * > valueTreesWithListeners
 
SharedObject * parent
 

Additional Inherited Members

- Protected Member Functions inherited from ReferenceCountedObject
 ReferenceCountedObject ()
 
virtual ~ReferenceCountedObject ()
 
void resetReferenceCount () noexcept
 

Member Typedef Documentation

◆ Ptr

Constructor & Destructor Documentation

◆ SharedObject() [1/2]

ValueTree::SharedObject::SharedObject ( const Identifier &  t)
inlineexplicitnoexcept

◆ SharedObject() [2/2]

ValueTree::SharedObject::SharedObject ( const SharedObject &  other)
inline

◆ ~SharedObject()

ValueTree::SharedObject::~SharedObject ( )
inline

Member Function Documentation

◆ addChild()

void ValueTree::SharedObject::addChild ( SharedObject *  child,
int  index,
UndoManager *const  undoManager 
)
inline

◆ callListeners() [1/3]

template<typename Method >
void ValueTree::SharedObject::callListeners ( Method  method,
ValueTree &  tree 
) const
inline

◆ callListeners() [2/3]

template<typename Method , typename ParamType >
void ValueTree::SharedObject::callListeners ( Method  method,
ValueTree &  tree,
ParamType &  param2 
) const
inline

◆ callListeners() [3/3]

template<typename Method , typename ParamType1 , typename ParamType2 >
void ValueTree::SharedObject::callListeners ( Method  method,
ValueTree &  tree,
ParamType1 &  param2,
ParamType2 &  param3 
) const
inline

◆ copyPropertiesFrom()

void ValueTree::SharedObject::copyPropertiesFrom ( const SharedObject &  source,
UndoManager *const  undoManager 
)
inline

◆ createXml()

XmlElement* ValueTree::SharedObject::createXml ( ) const
inline

◆ getChildWithName()

ValueTree ValueTree::SharedObject::getChildWithName ( const Identifier &  typeToMatch) const
inline

◆ getChildWithProperty()

ValueTree ValueTree::SharedObject::getChildWithProperty ( const Identifier &  propertyName,
const var &  propertyValue 
) const
inline

◆ getOrCreateChildWithName()

ValueTree ValueTree::SharedObject::getOrCreateChildWithName ( const Identifier &  typeToMatch,
UndoManager *  undoManager 
)
inline

◆ hasProperty()

bool ValueTree::SharedObject::hasProperty ( const Identifier &  name) const
inlinenoexcept

◆ indexOf()

int ValueTree::SharedObject::indexOf ( const ValueTree &  child) const
inlinenoexcept

◆ isAChildOf()

bool ValueTree::SharedObject::isAChildOf ( const SharedObject *const  possibleParent) const
inlinenoexcept

◆ isEquivalentTo()

bool ValueTree::SharedObject::isEquivalentTo ( const SharedObject &  other) const
inline

◆ moveChild()

void ValueTree::SharedObject::moveChild ( int  currentIndex,
int  newIndex,
UndoManager *  undoManager 
)
inline

◆ removeAllChildren()

void ValueTree::SharedObject::removeAllChildren ( UndoManager *const  undoManager)
inline

◆ removeAllProperties()

void ValueTree::SharedObject::removeAllProperties ( UndoManager *const  undoManager)
inline

◆ removeChild()

void ValueTree::SharedObject::removeChild ( const int  childIndex,
UndoManager *const  undoManager 
)
inline

◆ removeProperty()

void ValueTree::SharedObject::removeProperty ( const Identifier &  name,
UndoManager *const  undoManager 
)
inline

◆ reorderChildren()

void ValueTree::SharedObject::reorderChildren ( const OwnedArray< ValueTree > &  newOrder,
UndoManager *  undoManager 
)
inline

◆ sendChildAddedMessage()

void ValueTree::SharedObject::sendChildAddedMessage ( ValueTree  child)
inline

◆ sendChildOrderChangedMessage()

void ValueTree::SharedObject::sendChildOrderChangedMessage ( int  oldIndex,
int  newIndex 
)
inline

◆ sendChildRemovedMessage()

void ValueTree::SharedObject::sendChildRemovedMessage ( ValueTree  child,
int  index 
)
inline

◆ sendParentChangeMessage()

void ValueTree::SharedObject::sendParentChangeMessage ( )
inline

◆ sendPropertyChangeMessage()

void ValueTree::SharedObject::sendPropertyChangeMessage ( const Identifier &  property)
inline

◆ setProperty()

void ValueTree::SharedObject::setProperty ( const Identifier &  name,
const var &  newValue,
UndoManager *const  undoManager 
)
inline

◆ writeObjectToStream()

static void ValueTree::SharedObject::writeObjectToStream ( OutputStream &  output,
const SharedObject *const  object 
)
inlinestatic

◆ writeToStream()

void ValueTree::SharedObject::writeToStream ( OutputStream &  output) const
inline

Member Data Documentation

◆ children

ReferenceCountedArray<SharedObject> ValueTree::SharedObject::children

◆ parent

SharedObject* ValueTree::SharedObject::parent

◆ properties

NamedValueSet ValueTree::SharedObject::properties

◆ type

const Identifier ValueTree::SharedObject::type

◆ valueTreesWithListeners

SortedSet<ValueTree*> ValueTree::SharedObject::valueTreesWithListeners

The documentation for this class was generated from the following file: