LibreOffice Module svx (master) 1
Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
Gallery Class Referencefinal

#include <gallery1.hxx>

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

Public Member Functions

 Gallery (std::u16string_view rMultiPath)
 
virtual ~Gallery () override
 
size_t GetThemeCount () const
 
SAL_DLLPRIVATE const GalleryThemeEntryGetThemeInfo (size_t nPos)
 
const GalleryThemeEntryGetThemeInfo (std::u16string_view rThemeName)
 
bool HasTheme (std::u16string_view rThemeName)
 
SAL_DLLPRIVATE OUString GetThemeName (sal_uInt32 nThemeId) const
 
bool CreateTheme (const OUString &rThemeName)
 
void RenameTheme (const OUString &rOldName, const OUString &rNewName)
 
bool RemoveTheme (const OUString &rThemeName)
 
GalleryThemeAcquireTheme (std::u16string_view rThemeName, SfxListener &rListener)
 
void ReleaseTheme (GalleryTheme *pTheme, SfxListener &rListener)
 
SAL_DLLPRIVATE const INetURLObjectGetUserURL () const
 
SAL_DLLPRIVATE const INetURLObjectGetRelativeURL () const
 
- Public Member Functions inherited from SfxBroadcaster
 SfxBroadcaster ()
 
 SfxBroadcaster (const SfxBroadcaster &rBC)
 
virtual ~SfxBroadcaster () COVERITY_NOEXCEPT_FALSE
 
void Broadcast (const SfxHint &rHint)
 
bool HasListeners () const
 
size_t GetListenerCount () const
 
void ForAllListeners (std::function< bool(SfxListener *)> f) const
 

Static Public Member Functions

static GalleryGetGalleryInstance ()
 

Private Types

typedef std::vector< GalleryThemeCacheEntry * > GalleryCacheThemeList
 

Private Member Functions

SAL_DLLPRIVATE void ImplLoad (std::u16string_view rMultiPath)
 
SAL_DLLPRIVATE void ImplLoadSubDirs (const INetURLObject &rBaseURL, bool &rbIsReadOnly)
 
GalleryThemeEntryImplGetThemeEntry (std::u16string_view rThemeName)
 
SAL_DLLPRIVATE GalleryThemeImplGetCachedTheme (GalleryThemeEntry *pThemeEntry)
 
SAL_DLLPRIVATE void ImplDeleteCachedTheme (GalleryTheme const *pTheme)
 
Galleryoperator= (Gallery const &)=delete
 
 Gallery (Gallery const &)=delete
 

Private Attributes

std::vector< std::unique_ptr< GalleryThemeEntry > > aThemeList
 
GalleryCacheThemeList aThemeCache
 
INetURLObject aRelURL
 
INetURLObject aUserURL
 
bool bMultiPath
 

Additional Inherited Members

- Protected Member Functions inherited from SfxBroadcaster
void Forward (SfxBroadcaster &rBC, const SfxHint &rHint)
 

Detailed Description

Definition at line 93 of file gallery1.hxx.

Member Typedef Documentation

◆ GalleryCacheThemeList

Definition at line 95 of file gallery1.hxx.

Constructor & Destructor Documentation

◆ Gallery() [1/2]

Gallery::Gallery ( Gallery const &  )
privatedelete

Referenced by GetGalleryInstance().

◆ Gallery() [2/2]

Gallery::Gallery ( std::u16string_view  rMultiPath)

Definition at line 232 of file gallery1.cxx.

References ImplLoad().

◆ ~Gallery()

Gallery::~Gallery ( )
overridevirtual

Definition at line 238 of file gallery1.cxx.

Member Function Documentation

◆ AcquireTheme()

GalleryTheme * Gallery::AcquireTheme ( std::u16string_view  rThemeName,
SfxListener rListener 
)

◆ CreateTheme()

bool Gallery::CreateTheme ( const OUString &  rThemeName)

◆ GetGalleryInstance()

Gallery * Gallery::GetGalleryInstance ( )
static

◆ GetRelativeURL()

SAL_DLLPRIVATE const INetURLObject & Gallery::GetRelativeURL ( ) const
inline

Definition at line 141 of file gallery1.hxx.

Referenced by GalleryFileStorage::writeGalleryTheme().

◆ GetThemeCount()

size_t Gallery::GetThemeCount ( ) const
inline

◆ GetThemeInfo() [1/2]

SAL_DLLPRIVATE const GalleryThemeEntry * Gallery::GetThemeInfo ( size_t  nPos)
inline

◆ GetThemeInfo() [2/2]

const GalleryThemeEntry * Gallery::GetThemeInfo ( std::u16string_view  rThemeName)
inline

Definition at line 126 of file gallery1.hxx.

◆ GetThemeName()

OUString Gallery::GetThemeName ( sal_uInt32  nThemeId) const

◆ GetUserURL()

SAL_DLLPRIVATE const INetURLObject & Gallery::GetUserURL ( ) const
inline

◆ HasTheme()

bool Gallery::HasTheme ( std::u16string_view  rThemeName)

◆ ImplDeleteCachedTheme()

void Gallery::ImplDeleteCachedTheme ( GalleryTheme const *  pTheme)
private

Definition at line 686 of file gallery1.cxx.

References aThemeCache.

Referenced by ReleaseTheme().

◆ ImplGetCachedTheme()

GalleryTheme * Gallery::ImplGetCachedTheme ( GalleryThemeEntry pThemeEntry)
private

Definition at line 661 of file gallery1.cxx.

References aThemeCache, and GalleryThemeEntry::getCachedTheme().

Referenced by AcquireTheme().

◆ ImplGetThemeEntry()

GalleryThemeEntry * Gallery::ImplGetThemeEntry ( std::u16string_view  rThemeName)
private

Definition at line 482 of file gallery1.cxx.

References aThemeList, GetThemeName(), i, and n.

Referenced by AcquireTheme(), GetThemeName(), HasTheme(), RemoveTheme(), and RenameTheme().

◆ ImplLoad()

void Gallery::ImplLoad ( std::u16string_view  rMultiPath)
private

◆ ImplLoadSubDirs()

void Gallery::ImplLoadSubDirs ( const INetURLObject rBaseURL,
bool &  rbIsReadOnly 
)
private

◆ operator=()

Gallery & Gallery::operator= ( Gallery const &  )
privatedelete

◆ ReleaseTheme()

void Gallery::ReleaseTheme ( GalleryTheme pTheme,
SfxListener rListener 
)

◆ RemoveTheme()

bool Gallery::RemoveTheme ( const OUString &  rThemeName)

◆ RenameTheme()

void Gallery::RenameTheme ( const OUString &  rOldName,
const OUString &  rNewName 
)

Member Data Documentation

◆ aRelURL

INetURLObject Gallery::aRelURL
private

Definition at line 101 of file gallery1.hxx.

Referenced by ImplLoad().

◆ aThemeCache

GalleryCacheThemeList Gallery::aThemeCache
private

Definition at line 100 of file gallery1.hxx.

Referenced by ImplDeleteCachedTheme(), and ImplGetCachedTheme().

◆ aThemeList

std::vector< std::unique_ptr<GalleryThemeEntry> > Gallery::aThemeList
private

◆ aUserURL

INetURLObject Gallery::aUserURL
private

Definition at line 102 of file gallery1.hxx.

Referenced by ImplLoad().

◆ bMultiPath

bool Gallery::bMultiPath
private

Definition at line 103 of file gallery1.hxx.

Referenced by ImplLoad().


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