Commit Graph

42 Commits

Author SHA1 Message Date
Artur Wieczorek
b12e6279d2 Implement missing virtual function in generic wxStandardPaths
MakeConfigFileName() is declared as a pure virtual function in the base
class wxStandardPathsBase and has to be implemented in the derived class
wxStandardPaths.
This fixes compilation when wxUSE_STDPATHS==0.
2017-07-31 23:24:17 +02:00
Vadim Zeitlin
5cf9fcbb1a Add wxStandardPaths::ConfigFileConv enum for clarity and safety
Use an enum instead of type-unsafe "int" for the second parameter of the
recently added wxStandardPaths::MakeConfigFileName().

This also avoids unnatural dependency of wxStandardPaths on
wxCONFIG_USE_SUBDIR constant defined in a higher level wxFileConfig class.

No real changes, but just make things a bit more robust and hopefully more
clear.
2017-03-09 17:53:14 +01:00
Vadim Zeitlin
4bf6ae8d7c Make FileLayout_XXX elements of an enum
Slight improvement to the previous commit: make FileLayout_Classic and
FileLayout_XDG elements of an enum instead of using an untyped "int" for them
which didn't really make any sense because these values are not bit masks but
exclusive choices for the layout.

Also rewrite the checks for them to use "switch" instead of "if" to be warned
by the compiler if we ever add another enum value but forget to update the
code to handle it.

Finally, improve the documentation (add missing "@since") and comments.
2017-03-09 17:23:20 +01:00
Martin Koegler
d56d127d3f Implement XDG file layout 2017-03-08 22:30:21 +01:00
Martin Koegler
8d5d00db9d Implement MakeConfigFileName 2017-03-08 22:29:55 +01:00
Václav Slavík
13862ad8e6 Fix GetInstallPrefix availability check
Add wxHAS_STDPATHS_INSTALL_PREFIX to make checking for
wxStandardPaths::GetInstallPrefix()'s availability simpler, as the
condition under which it is compiled is nontrivial.

Fixes compilation after 2c24ee9216 on
Cygwin, which is a UNIX, but its wxStandardPaths implementation is a
Windows one.
2016-12-11 15:18:24 +01:00
VZ
4212202a9a Add support for cache directory to wxStandardPaths::GetUserDir()
This has direct equivalent under macOS and when using XDG.

See #17727.
2016-11-29 19:32:14 +01:00
Tobias Taschner
abe10b8c00 Fix wxBase build under OS X
Due to recent changes in utils, stdpath and the removal of carbon, building on
OS X was broken by various compiler errors and linker issues.

Closes https://github.com/wxWidgets/wxWidgets/pull/210
2016-02-10 16:12:20 +01:00
Tobias Taschner
0938141f3e Add Cocoa implementation of wxStandardPaths
Previously wxStandardPathsCF was used for all Mac builds and it used
FSFindFolder() (CoreFoundation) calls in Carbon builds, but many hard coded
values in Cocoa builds. The Cocoa implementation uses NSFileManager and
NSBundle to retrieve the folder locations from the system.

Closes https://github.com/wxWidgets/wxWidgets/pull/89
2015-10-04 01:05:57 +02:00
Tobias Taschner
a0fb808087 Add wxStandardPaths::GetUserDir() to get Desktop, Download etc
All major supported platforms have well defined per-user directories to store
Downloads, Music, Pictures, Videos and the Desktop files. The new method
wxStandardPaths::GetUserDir() allows for a unified way to access these on MSW,
OS X and Unix (if XDG user dirs specification is implemented for the latter).

See https://github.com/wxWidgets/wxWidgets/pull/89
2015-10-04 01:05:23 +02:00
Vadim Zeitlin
01f9accd19 Remove wxPM, wxWidgets port to OS/2.
This port is not used and is not being worked on, so remove it to reduce the
amount of the code which needs to be updated for every global change.

Also remove tests for VisualAge compiler which isn't used since ages.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-15 23:56:58 +00:00
Vadim Zeitlin
3f66f6a5b3 Remove all lines containing cvs/svn "$Id$" keyword.
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.

If nothing else, this will make an eventual transition to Git simpler.

Closes #14487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-26 16:02:46 +00:00
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
Vadim Zeitlin
d98a58c543 Use __WINDOWS__ for OS kind checks and reserve __WXMSW__ for GUI toolkit.
This change prepares the way for using wxGTK under Windows as this would
still define __WINDOWS__ but use __WXGTK__ instead of __WXMSW__.

Closes #14064.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-04 00:29:31 +00:00
Vadim Zeitlin
bd362275b8 Remove Palm OS port.
The platform targeted by this port doesn't exist any more and the port never
achieved really working state so remove the code to avoid having to maintain
it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-15 01:05:28 +00:00
Vadim Zeitlin
f1b08e84a1 Fix typo in wxStandardPathsBase::ResourceCat description and document it.
Document the enum itself and also correct GetLocalizedResourcesDir()
documentation which didn't specify the default value for the category
parameter.

Closes #12523.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65652 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-27 11:51:50 +00:00
Vadim Zeitlin
25f49256ac return wxStandardPaths, not wxStandardPathsBase, from wxStandardPathsBase::Get() to allow calling platform-specific methods on it if necessary
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-06 23:34:05 +00:00
Vadim Zeitlin
d8efd2198f added wxStandardPaths::GetAppDocumentsDir() and use it by default for loading/saving documents in wxDocManager
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58259 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-21 14:01:30 +00:00
Vadim Zeitlin
9c498e84bf correct the example/documentation of GetDocumentsDir() return value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56100 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-10-05 22:56:23 +00:00
Stefan Csomor
ef0e92205a fixing file paths after renaming
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54125 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-06-11 19:17:41 +00:00
Vadim Zeitlin
2b147f2e19 allow to optionally use vendor name component in standard paths (slightly modified patch 1831308)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-17 14:59:13 +00:00
Václav Slavík
6ae3ead6f0 always compile at least a minimal version of wxStandardPaths class, it's used too often
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-15 15:21:57 +00:00
Václav Slavík
e0b3b9d044 take wxString, not wxChar* in wxStandardPaths::GetLocalizedResourcesDir
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-23 19:10:36 +00:00
Robert Roebling
ac7ad70d4c [ 1590221 ] wxStandardPaths::GetExecutablePath
Required for optimised stackwalker patch.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-12 12:58:10 +00:00
Julian Smart
ecf9559d57 Added GetTempDir
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-24 14:26:00 +00:00
Vadim Zeitlin
17af82fb4c added wxStandardPaths::GetDocumentsDir() (patch 1214360)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-17 01:12:04 +00:00
Julian Smart
f45bffb686 stdpaths.h needs filefn.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38406 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-28 10:30:20 +00:00
Vadim Zeitlin
8c94336825 fixed unused parameter warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38382 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-27 13:46:50 +00:00
Vadim Zeitlin
3af9f2de59 added wxStandardPaths::GetResourcesDir() and GetLocalizedResourcesDir()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38370 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-25 17:00:40 +00:00
Michael Wetherell
d6f42b1bae Spelling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33831 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-04-22 14:53:55 +00:00
Michael Wetherell
46a2827311 Add generic wxStandardPaths implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-04-22 13:22:14 +00:00
Vadim Zeitlin
07158944d8 added wxUSE_STDPATHS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32649 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 22:37:58 +00:00
Włodzimierz Skiba
a809b45d59 Completed sync of BASE_CMN_SRC between PalmOS and bakefiles. Missing features (stdpaths) added and buildable.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32361 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 09:44:49 +00:00
David Elliott
fc480dc16b Moved wxStandardPathsCF into base library when using CarbonLib or Darwin.
Make wxStandardPathsBase::Get() return a wxStandardPathsBase reference.
Implement it using wxAppTraits::GetStandardPaths() which is overridden by
wxMac and wxCocoa GUI libraries to return a reference to a wxStandardPathsCF.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-12 21:21:00 +00:00
Stefan Neis
175bb578e0 Added wxStandardPaths implementation for OS/2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30323 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-06 22:14:04 +00:00
David Elliott
3b01b1fe4c wxMac uses wxStandardPathsCF to mean wxStandardPaths in its wxBase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-30 07:41:30 +00:00
David Elliott
726b98e9a1 Added wxStandardPaths for wxMac and wxCocoa.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30174 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-29 21:38:33 +00:00
Vadim Zeitlin
ce336c6d76 moved AppendAppName() from MSW to common code; modified it to not double the trailing slash, if any
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-20 00:34:32 +00:00
Vadim Zeitlin
6cb5e50b0d switched to using a real class instead of a namespace because of Mac base/GUI problems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-19 18:49:02 +00:00
Vadim Zeitlin
0b75a1e039 fixed include guard after renaming the file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29980 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-18 23:28:41 +00:00
Vadim Zeitlin
48713afd53 - added and documented Get/SetInstallPath() under Unix
- corrected returns values of several functions for Mac OS X


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-18 23:27:37 +00:00
Vadim Zeitlin
96e2aec50a renamed wxFileLocator to wxStandardPaths
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-18 22:35:51 +00:00