sync master with lastest vba changes
[ooovba.git] / binfilter / inc / bf_svtools / pathoptions.hxx
blobab73dbd50c168cf1cbd3dcf67fd8ad8ccb633f04
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: pathoptions.hxx,v $
10 * $Revision: 1.4 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef INCLUDED_SVTOOLS_PATHOPTIONS_HXX
31 #define INCLUDED_SVTOOLS_PATHOPTIONS_HXX
33 #include <tools/string.hxx>
34 #include <com/sun/star/lang/Locale.hpp>
35 #include <bf_svtools/options.hxx>
37 #define SVT_SEARCHPATH_DELIMITER ';'
39 namespace binfilter
42 // class SvtPathOptions --------------------------------------------------
44 class SvtPathOptions_Impl;
45 class SvtPathOptions: public Options
47 private:
48 SvtPathOptions_Impl* pImp;
50 public:
51 enum Pathes
53 PATH_ADDIN,
54 PATH_AUTOCORRECT,
55 PATH_AUTOTEXT,
56 PATH_BACKUP,
57 PATH_BASIC,
58 PATH_BITMAP,
59 PATH_CONFIG,
60 PATH_DICTIONARY,
61 PATH_FAVORITES,
62 PATH_FILTER,
63 PATH_GALLERY,
64 PATH_GRAPHIC,
65 PATH_HELP,
66 PATH_LINGUISTIC,
67 PATH_MODULE,
68 PATH_PALETTE,
69 PATH_PLUGIN,
70 PATH_STORAGE,
71 PATH_TEMP,
72 PATH_TEMPLATE,
73 PATH_USERCONFIG,
74 PATH_USERDICTIONARY,
75 PATH_WORK,
76 PATH_UICONFIG,
77 PATH_FINGERPRINT,
78 PATH_COUNT // should always be the last element
81 SvtPathOptions();
82 virtual ~SvtPathOptions();
84 // get the pathes, not const because of using a mutex
85 const String& GetAddinPath() const;
86 const String& GetAutoCorrectPath() const;
87 const String& GetAutoTextPath() const;
88 const String& GetBackupPath() const;
89 const String& GetBasicPath() const;
90 const String& GetBitmapPath() const;
91 const String& GetConfigPath() const;
92 const String& GetDictionaryPath() const;
93 const String& GetFavoritesPath() const;
94 const String& GetFilterPath() const;
95 const String& GetGalleryPath() const;
96 const String& GetGraphicPath() const;
97 const String& GetHelpPath() const;
98 const String& GetLinguisticPath() const;
99 const String& GetModulePath() const;
100 const String& GetPalettePath() const;
101 const String& GetPluginPath() const;
102 const String& GetStoragePath() const;
103 const String& GetTempPath() const;
104 const String& GetTemplatePath() const;
105 const String& GetUserConfigPath() const;
106 const String& GetUserDictionaryPath() const;
107 const String& GetWorkPath() const;
108 const String& GetUIConfigPath() const;
109 const String& GetFingerprintPath() const;
111 BOOL IsPathReadonly(Pathes ePath)const;
112 const String& GetPath(Pathes ePath) const;
114 // set the pathes
115 void SetAddinPath( const String& rPath );
116 void SetAutoCorrectPath( const String& rPath );
117 void SetAutoTextPath( const String& rPath );
118 void SetBackupPath( const String& rPath );
119 void SetBasicPath( const String& rPath );
120 void SetBitmapPath( const String& rPath );
121 void SetConfigPath( const String& rPath );
122 void SetDictionaryPath( const String& rPath );
123 void SetFavoritesPath( const String& rPath );
124 void SetFilterPath( const String& rPath );
125 void SetGalleryPath( const String& rPath );
126 void SetGraphicPath( const String& rPath );
127 void SetHelpPath( const String& rPath );
128 void SetLinguisticPath( const String& rPath );
129 void SetModulePath( const String& rPath );
130 void SetPalettePath( const String& rPath );
131 void SetPluginPath( const String& rPath );
132 void SetStoragePath( const String& rPath );
133 void SetTempPath( const String& rPath );
134 void SetTemplatePath( const String& rPath );
135 void SetUserConfigPath( const String& rPath );
136 void SetUserDictionaryPath( const String& rPath );
137 void SetWorkPath( const String& rPath );
138 void SetPath( SvtPathOptions::Pathes ePath, const String& rNewPath );
140 String SubstituteVariable( const String& rVar );
141 String UseVariable( const String& rVar );
142 sal_Bool SearchFile( String& rIniFile, Pathes ePath = PATH_USERCONFIG );
143 sal_Bool IsReadonly() const;
148 #endif // #ifndef INCLUDED_SVTOOLS_PATHOPTIONS_HXX