summaryrefslogtreecommitdiff
path: root/svx/inc/galleryfilestorageentry.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'svx/inc/galleryfilestorageentry.hxx')
-rw-r--r--svx/inc/galleryfilestorageentry.hxx42
1 files changed, 40 insertions, 2 deletions
diff --git a/svx/inc/galleryfilestorageentry.hxx b/svx/inc/galleryfilestorageentry.hxx
index 0f00cfb5a6ee..15f3a2f6faa4 100644
--- a/svx/inc/galleryfilestorageentry.hxx
+++ b/svx/inc/galleryfilestorageentry.hxx
@@ -19,10 +19,48 @@
#pragma once
-class GalleryFileStorageEntry
+#include <tools/urlobj.hxx>
+#include <svx/galtheme.hxx>
+#include "gallerybinaryengine.hxx"
+#include "gallerystoragelocations.hxx"
+#include "galleryfilestorageentry.hxx"
+
+class GalleryObjectCollection;
+class GalleryBinaryEngine;
+
+class GalleryFileStorageEntry final
{
+private:
+ std::unique_ptr<GalleryStorageLocations> mpGalleryStorageLocations;
+
public:
- virtual ~GalleryFileStorageEntry() = 0;
+ GalleryFileStorageEntry();
+ static void CreateUniqueURL(const INetURLObject& rBaseURL, INetURLObject& aURL);
+
+ OUString ReadStrFromIni(std::u16string_view aKeyName) const;
+
+ const INetURLObject& GetThmURL() const { return mpGalleryStorageLocations->GetThmURL(); }
+ const INetURLObject& GetSdgURL() const { return mpGalleryStorageLocations->GetSdgURL(); }
+ const INetURLObject& GetSdvURL() const { return mpGalleryStorageLocations->GetSdvURL(); }
+ const INetURLObject& GetStrURL() const { return mpGalleryStorageLocations->GetStrURL(); }
+
+ const std::unique_ptr<GalleryStorageLocations>& getGalleryStorageLocations() const
+ {
+ return mpGalleryStorageLocations;
+ }
+
+ static GalleryThemeEntry* CreateThemeEntry(const INetURLObject& rURL, bool bReadOnly);
+
+ void removeTheme();
+
+ std::unique_ptr<GalleryTheme>& getCachedTheme(std::unique_ptr<GalleryTheme>& pNewTheme);
+
+ void setStorageLocations(INetURLObject& rURL);
+
+ std::unique_ptr<GalleryBinaryEngine>
+ createGalleryStorageEngine(GalleryObjectCollection& mrGalleryObjectCollection, bool& bReadOnly);
};
+SvStream& ReadGalleryTheme(SvStream& rIn, GalleryTheme& rTheme);
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */