You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
1.6 KiB
70 lines
1.6 KiB
/*********
|
|
*
|
|
* This file is part of BibleTime's source code, http://www.bibletime.info/.
|
|
*
|
|
* Copyright 1999-2006 by the BibleTime developers.
|
|
* The BibleTime source code is licensed under the GNU General Public License version 2.0.
|
|
*
|
|
**********/
|
|
|
|
|
|
|
|
#ifndef CPROFILEMGR_H
|
|
#define CPROFILEMGR_H
|
|
|
|
#include "cprofile.h"
|
|
|
|
//TQt includes
|
|
#include <tqstring.h>
|
|
|
|
namespace Profile {
|
|
/** The manager for profiles.
|
|
* Provides functions to create, delete, save and load profiles.
|
|
* @author The BibleTime team
|
|
*/
|
|
class CProfileMgr {
|
|
public:
|
|
CProfileMgr();
|
|
~CProfileMgr();
|
|
|
|
/** Creates a new profile with the name "name" (first parameter).
|
|
* @return The profile object
|
|
*/
|
|
CProfile* create( const TQString name );
|
|
/**
|
|
* @return a list of available profiles
|
|
*/
|
|
const TQPtrList<CProfile>& profiles();
|
|
/**
|
|
* Removes the profile from the list and from the directory containg the profile files.
|
|
*/
|
|
const bool remove
|
|
( CProfile* p );
|
|
/**
|
|
* Removes the profile from the list and from the directory containg the profile files.
|
|
*/
|
|
const bool remove
|
|
( const TQString& );
|
|
/**
|
|
* Returns the profile with the desired name. If there's no such profile 0 is returned.
|
|
*/
|
|
CProfile* profile(const TQString&);
|
|
/**
|
|
* Returns the startup profile if it exists, otherwise return 0.
|
|
*/
|
|
CProfile* startupProfile();
|
|
/**
|
|
* Refreshes the profiles available on disk. Use this function to update the list of profiles after another instance of CProfileMgr created a new profile.
|
|
*/
|
|
void refresh();
|
|
|
|
protected:
|
|
TQPtrList<CProfile> m_profiles;
|
|
TQString m_profilePath;
|
|
CProfile* m_startupProfile;
|
|
};
|
|
|
|
} //end of namespace Profile
|
|
|
|
#endif
|