1/*****************************************************************************/
2// Expander
3// Written by J��r��me Duval
4//
5// ExpanderSettings.h
6//
7//
8// Copyright (c) 2004 Haiku Project
9//
10// Permission is hereby granted, free of charge, to any person obtaining a
11// copy of this software and associated documentation files (the "Software"),
12// to deal in the Software without restriction, including without limitation
13// the rights to use, copy, modify, merge, publish, distribute, sublicense,
14// and/or sell copies of the Software, and to permit persons to whom the
15// Software is furnished to do so, subject to the following conditions:
16//
17// The above copyright notice and this permission notice shall be included
18// in all copies or substantial portions of the Software.
19//
20// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
21// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
23// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
25// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
26// DEALINGS IN THE SOFTWARE.
27/*****************************************************************************/
28#ifndef _EXPANDER_SETTINGS_H
29#define _EXPANDER_SETTINGS_H
30
31
32#include <Message.h>
33#include <File.h>
34
35
36static const uint32 kMsgExpanderSettings = 'Exst';
37
38
39class BPath;
40
41class ExpanderSettings {
42public:
43							ExpanderSettings();
44							~ExpanderSettings();
45
46			const			BMessage& Message() const { return fMessage; }
47			void			UpdateFrom(BMessage* message);
48
49	static	status_t		GetSettingsDirectoryPath(BPath& _path);
50
51private:
52			status_t		Open(BFile* file, int32 mode);
53
54			BMessage		fMessage;
55			bool			fUpdated;
56};
57
58
59#endif // _EXPANDER_SETTINGS_H
60