wxWidgets/include/wx/unix/stdpaths.h
Vadim Zeitlin 38aae140ac Forbid creation of wxStandardPaths object directly.
This happens to work under MSW and Unix where there is only one
wxStandardPaths class for both the console and the GUI applications but
doesn't return the correct result under OS X where the Core Foundation
version, returned by wxStandardPaths::Get(), has to be used for the GUI
programs. And historically this confused a lot of people, so just ensure that
they can't accidentally create an object of the wrong type any more.

Closes #13537.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74428 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 23:14:21 +00:00

65 lines
2.2 KiB
C++

///////////////////////////////////////////////////////////////////////////////
// Name: wx/unix/stdpaths.h
// Purpose: wxStandardPaths for Unix systems
// Author: Vadim Zeitlin
// Modified by:
// Created: 2004-10-19
// RCS-ID: $Id$
// Copyright: (c) 2004 Vadim Zeitlin <vadim@wxwindows.org>
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_UNIX_STDPATHS_H_
#define _WX_UNIX_STDPATHS_H_
// ----------------------------------------------------------------------------
// wxStandardPaths
// ----------------------------------------------------------------------------
class WXDLLIMPEXP_BASE wxStandardPaths : public wxStandardPathsBase
{
public:
// tries to determine the installation prefix automatically (Linux only right
// now) and returns /usr/local if it failed
void DetectPrefix();
// set the program installation directory which is /usr/local by default
//
// under some systems (currently only Linux) the program directory can be
// determined automatically but for portable programs you should always set
// it explicitly
void SetInstallPrefix(const wxString& prefix);
// get the program installation prefix
//
// if the prefix had been previously by SetInstallPrefix, returns that
// value, otherwise calls DetectPrefix()
wxString GetInstallPrefix() const;
// implement base class pure virtuals
virtual wxString GetExecutablePath() const;
virtual wxString GetConfigDir() const;
virtual wxString GetUserConfigDir() const;
virtual wxString GetDataDir() const;
virtual wxString GetLocalDataDir() const;
virtual wxString GetUserDataDir() const;
virtual wxString GetPluginsDir() const;
virtual wxString GetLocalizedResourcesDir(const wxString& lang,
ResourceCat category) const;
#ifndef __VMS
virtual wxString GetDocumentsDir() const;
#endif
protected:
// Ctor is protected, use wxStandardPaths::Get() instead of instantiating
// objects of this class directly.
wxStandardPaths() { }
private:
wxString m_prefix;
};
#endif // _WX_UNIX_STDPATHS_H_