haiku/3rdparty/mmu_man/themes/ThemeImporter.h
François Revol ef01092096 Fix Haiku build and warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23804 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-01 03:27:09 +00:00

54 lines
1009 B
C++

#ifndef _THEME_IMPORTER_H
#define _THEME_IMPORTER_H
/*
* ThemeImporter class header
*/
class BDirectory;
class BMessage;
class BString;
namespace Z {
namespace ThemeManager {
class ThemeManager;
class ThemeImporter {
public:
ThemeImporter(const char *name);
virtual ~ThemeImporter();
/* presentation */
virtual const char *Name(); /* pretty name */
virtual const char *Description(); /* tooltip... */
// if you override, call it first
virtual status_t LoadSettings(BMessage &settings);
// if you override, call it last
virtual status_t SaveSettings(BMessage &settings);
void SetFlags(uint32 flags);
uint32 Flags();
/* Theme manipulation */
virtual status_t FetchThemes();
virtual status_t ImportNextTheme(BMessage **theme);
virtual status_t EndImports();
/* */
protected:
friend class Z::ThemeManager::ThemeManager;
BString fName;
uint32 fFlags;
BMessage fSettings;
};
} // ns ThemeManager
} // ns Z
using namespace Z::ThemeManager;
#endif /* _THEME_IMPORTER_H */