Audacity 3.2.0
Public Member Functions | Private Attributes | List of all members
AttachedWindows Class Reference

#include <ProjectWindows.h>

Inheritance diagram for AttachedWindows:
[legend]
Collaboration diagram for AttachedWindows:
[legend]

Public Member Functions

 AttachedWindows (AudacityProject &project)
 
 operator AudacityProject & () const
 
- Public Member Functions inherited from ClientData::Site< AttachedWindows, wxWindow, ClientData::SkipCopying, ClientData::BarePtr >
 ~Site ()
 
 Site ()
 
 Site (const Site &other)
 
 Site (Site &&other)
 
Siteoperator= (const Site &other)
 
Siteoperator= (Site &&other)
 
size_t size () const
 How many attachment pointers are in the Site. More...
 
Subclass & Get (const RegisteredFactory &key)
 Get reference to an attachment, creating on demand if not present, down-cast it to Subclass. More...
 
auto Get (const RegisteredFactory &key) const -> std::enable_if_t< std::is_const< Subclass >::value, Subclass & >
 Get reference to an attachment, creating on demand if not present, down-cast it to Subclass. More...
 
Subclass * Find (const RegisteredFactory &key)
 Get a (bare) pointer to an attachment, or null, down-cast it to Subclass *; will not create on demand. More...
 
auto Find (const RegisteredFactory &key) const -> std::enable_if_t< std::is_const< Subclass >::value, Subclass * >
 Get a (bare) pointer to an attachment, or null, down-cast it to Subclass *; will not create on demand. More...
 
void Assign (const RegisteredFactory &key, ReplacementPointer &&replacement)
 Reassign Site's pointer to ClientData. More...
 

Private Attributes

AudacityProjectmProject
 

Additional Inherited Members

- Public Types inherited from ClientData::Site< AttachedWindows, wxWindow, ClientData::SkipCopying, ClientData::BarePtr >
using DataType = wxWindow
 
using DataPointer = ClientData::BarePtr< wxWindow >
 
using DataFactory = std::function< DataPointer(AttachedWindows &) >
 Type of function from which RegisteredFactory is constructed; it builds attachments. More...
 
- Static Public Member Functions inherited from ClientData::Site< AttachedWindows, wxWindow, ClientData::SkipCopying, ClientData::BarePtr >
static size_t numFactories ()
 How many static factories have been registered with this specialization of Site. More...
 
- Protected Member Functions inherited from ClientData::Site< AttachedWindows, wxWindow, ClientData::SkipCopying, ClientData::BarePtr >
void ForEach (const Function &function)
 Invoke function on each ClientData object that has been created in this. More...
 
void ForEach (const Function &function) const
 Invoke function on each ClientData object that has been created in this. More...
 
void ForCorresponding (Site &other, const Function &function, bool create=true)
 
wxWindow * FindIf (const Function &function)
 Return pointer to first attachment in this that is not null and satisfies a predicate, or nullptr. More...
 
const wxWindow * FindIf (const Function &function) const
 Return pointer to first attachment in this that is not null and satisfies a predicate, or nullptr. More...
 
void EraseIf (const Function &function)
 Erase attached objects satisfying a predicate. More...
 
void BuildAll ()
 For each RegisteredFactory, if the corresponding attachment is absent in this, build and store it. More...
 

Detailed Description

Definition at line 48 of file ProjectWindows.h.

Constructor & Destructor Documentation

◆ AttachedWindows()

AttachedWindows::AttachedWindows ( AudacityProject project)
inlineexplicit

Definition at line 53 of file ProjectWindows.h.

54 : mProject{project} {}
const auto project
AudacityProject & mProject

Member Function Documentation

◆ operator AudacityProject &()

AttachedWindows::operator AudacityProject & ( ) const
inline

Definition at line 55 of file ProjectWindows.h.

55{ return mProject; }

References mProject.

Member Data Documentation

◆ mProject

AudacityProject& AttachedWindows::mProject
private

Definition at line 57 of file ProjectWindows.h.

Referenced by operator AudacityProject &().


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