libMVRgdtf 40bc00a
A library for GDTF and MVR
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FolderIdentifier.h
Go to the documentation of this file.
1//
2// Copyright (c) Diehl Graphsoft, Inc. 2006.
3// All Rights Reserved.
4//
5
6#pragma once
7
8namespace VectorworksMVR
9{
10 namespace Filing
11 {
12 // ----------------------------------------------------------------------------------------------------
13 class CFolderIdentifier : public VCOMImpl<IFolderIdentifier>
14 {
15 public:
17 virtual ~CFolderIdentifier();
18
19 VCOMError SetFullPath(const TXString& fullPath);
20 TXString GetFullPath() const;
21
22 // tools
23 public:
25
26 // IFolderIdentifier
27 public:
28 virtual VCOMError VCOM_CALLTYPE Set(const TXString& fullPath);
29 virtual VCOMError VCOM_CALLTYPE Set(EFolderSpecifier folderSpec, bool bUserFolder);
30 virtual VCOMError VCOM_CALLTYPE Set(EFolderSpecifier folderSpec, bool bUserFolder, const TXString& subFolderName);
31 virtual VCOMError VCOM_CALLTYPE Set(IFolderIdentifier* pParentFolder, const TXString& folderName);
34 virtual VCOMError VCOM_CALLTYPE ExistsOnDisk(bool& outValue);
36 virtual VCOMError VCOM_CALLTYPE GetName(TXString& outName);
37 virtual VCOMError VCOM_CALLTYPE GetParentFolder(IFolderIdentifier** ppOutParentFolderID);
38 virtual VCOMError VCOM_CALLTYPE GetAttributes(SAttributes& outAttributes);
39 virtual VCOMError VCOM_CALLTYPE SetAttributes(const SAttributes& attributes);
40 virtual VCOMError VCOM_CALLTYPE EnumerateContents(IFolderContentListener* pListener, bool bReqursive);
44 virtual VCOMError VCOM_CALLTYPE DuplicateOnDisk(IFolderIdentifier * newFolder, bool overrideIfNecessary = false, TXString* displayProgressDialog = NULL);
45 virtual VCOMError VCOM_CALLTYPE FormatFoldername(TXString& formatName, Uint16 maxCharsWithoutSpace);
49
50 virtual VCOMError VCOM_CALLTYPE EnumerateContents(TFolderContentCallback_Folder folderCallback, TFolderContentCallback_File fileCallback, bool bReqursive);
51
52 // Tools
53 public:
54 static void ValidateFoldername(TXString& outName);
55 static void ConvertFoldername(TXString& outName);
56
57 private:
58 bool EnumerateContentsHandler(IFolderContentListener* pListener, const CFolderIdentifier& folder, bool bReqursive, VCOMError& outError);
59
60 private:
61 // this actually keep the full path
62 // this is done like this (and not just TFolderIdentifier)
63 // because TFolderIdentifier::SetByFullPath on mac requeres the path to exist
64 TXStringArray farrFolderHierarchy;
65
66 };
67 }
68}
EFolderSpecifier
Definition FolderSpecifiers.h:10
uint16_t Uint16
Definition GSTypes.h:26
#define VCOM_CALLTYPE
Definition VectorworksMVR.h:93
Definition StdAfx.h:187
Definition FolderIdentifier.h:14
virtual VCOMError VCOM_CALLTYPE Set(const TXString &fullPath)
Definition FolderIdentifier.cpp:212
virtual VCOMError VCOM_CALLTYPE GetAttributesTimeDateReference(EAttributesTimeReference ref, SAttributesDateTime &outData)
Definition FolderIdentifier.cpp:460
TXString GetFullPath() const
Definition FolderIdentifier.cpp:181
virtual VCOMError VCOM_CALLTYPE RevealInOS()
Definition FolderIdentifier.cpp:926
VCOMError SetFullPath(const TXString &fullPath)
Definition FolderIdentifier.cpp:39
static void ConvertFoldername(TXString &outName)
Definition FolderIdentifier.cpp:1026
virtual ~CFolderIdentifier()
Definition FolderIdentifier.cpp:33
virtual VCOMError VCOM_CALLTYPE GetName(TXString &outName)
Definition FolderIdentifier.cpp:343
virtual VCOMError VCOM_CALLTYPE DeleteOnDisk()
Definition FolderIdentifier.cpp:820
virtual VCOMError VCOM_CALLTYPE SetAttributesTimeDateReference(EAttributesTimeReference ref, const SAttributesDateTime &data)
Definition FolderIdentifier.cpp:508
virtual VCOMError VCOM_CALLTYPE ExistsOnDisk(bool &outValue)
Definition FolderIdentifier.cpp:312
virtual VCOMError VCOM_CALLTYPE ValidateName(TXString &outName)
Definition FolderIdentifier.cpp:996
virtual VCOMError VCOM_CALLTYPE SetAttributes(const SAttributes &attributes)
Definition FolderIdentifier.cpp:448
virtual VCOMError VCOM_CALLTYPE GetParentFolder(IFolderIdentifier **ppOutParentFolderID)
Definition FolderIdentifier.cpp:364
virtual VCOMError VCOM_CALLTYPE EnumerateContents(IFolderContentListener *pListener, bool bReqursive)
Definition FolderIdentifier.cpp:735
static void ValidateFoldername(TXString &outName)
Definition FolderIdentifier.cpp:1002
virtual VCOMError VCOM_CALLTYPE FormatFoldername(TXString &formatName, Uint16 maxCharsWithoutSpace)
Definition FolderIdentifier.cpp:981
virtual VCOMError VCOM_CALLTYPE CreateOnDisk()
Definition FolderIdentifier.cpp:800
virtual VCOMError VCOM_CALLTYPE IsSet()
Definition FolderIdentifier.cpp:304
virtual VCOMError VCOM_CALLTYPE Clear()
Definition FolderIdentifier.cpp:294
CFolderIdentifier()
Definition FolderIdentifier.cpp:28
static EFolderSpecifier TranslateFolderSpec(EFolderSpecifier folderSpec)
virtual VCOMError VCOM_CALLTYPE DuplicateOnDisk(IFolderIdentifier *newFolder, bool overrideIfNecessary=false, TXString *displayProgressDialog=NULL)
Definition FolderIdentifier.cpp:952
virtual VCOMError VCOM_CALLTYPE GetAttributes(SAttributes &outAttributes)
Definition FolderIdentifier.cpp:400
Definition IFolderIdentifier.h:63
Definition IFolderIdentifier.h:89
Definition GSString.h:134
std::function< EFolderContentListenerResult(IFileIdentifier *fileID)> TFolderContentCallback_File
Definition IFolderIdentifier.h:73
EAttributesTimeReference
Definition IFolderIdentifier.h:42
std::function< EFolderContentListenerResult(IFolderIdentifier *folderID)> TFolderContentCallback_Folder
Definition IFolderIdentifier.h:72
Definition CieColor.h:9
std::vector< TXString > TXStringArray
Definition GSString.h:547
uint32_t VCOMError
Definition VectorworksMVR.h:119
Definition IFolderIdentifier.h:32
Definition IFolderIdentifier.h:16