openshot-audio  0.1.6
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< SharedObjectPtr
 

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
 
XmlElementcreateXml () 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< SharedObjectchildren
 
SortedSet< ValueTree * > valueTreesWithListeners
 
SharedObjectparent
 

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: