Commit Graph

214 Commits

Author SHA1 Message Date
Igor Korot
c525784f77 Allow disabling saving wxFileConfig data when it is destroyed
This can be useful to avoid saving the changes performed by the user if
this turns out to be undesirable, for whatever reason.

Closes https://github.com/wxWidgets/wxWidgets/pull/1451

Closes #13788.
2019-08-04 19:15:39 +02:00
Paul Cornett
fe1737d399 Reduce the scope of some local variables 2019-04-05 10:44:02 -07: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
Martin Koegler
8d5d00db9d Implement MakeConfigFileName 2017-03-08 22:29:55 +01:00
Andy Robinson
75e254fce7 Fix format specifiers used for size_t values in wxFileConfig
Fix assert failures when reporting errors in config files under 64 bit systems
where "%d" can't be used to output a "size_t" value.

Closes #17630.
2016-08-19 22:44:23 +02:00
Tobias Taschner
5ba67c67e4 Remove wxOSX/Carbon support.
Cocoa has been the default toolkit in wxWidgets for a long time. There is really no good reason to use Carbon in 2016 and this removes a lot of unused and unmaintained code.
2016-02-01 13:48:48 +01:00
Dimitri Schoolwerth
8f8d58d193 Use wx-prefixed macros throughout the repository.
Change {DECLARE,IMPLEMENT}_*CLASS and {DECLARE,BEGIN,END}_EVENT_TABLE
occurrences to use the wx-prefixed version of the macros.
2015-04-23 22:00:35 +04: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
Stefan Csomor
f18d7097da adding wxFALLTHROUGH where until now we had comments, allows for code-analysis support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-04-26 17:36:32 +00:00
Paul Cornett
d86715a3a3 remove unused macro definition
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76290 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-04-06 19:27: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
a610eb7369 Fix crash in wxFileConfig when deleting last entry of the root group.
This resulted in keeping a dangling pointer to the group line in
wxFileConfigGroup and any attempt to use it after this resulted in a crash.
Fix this by explicitly resetting the last line in this case.

Also add a unit test for this scenario.

Closes #14243.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71311 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-28 22:25:19 +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
8709d9472b Allow using '(' and ')' in wxFileConfig entry names unescaped.
There is no real reason to escape the parentheses in the key entries, they're
not special.

Closes #13584.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-29 22:11:11 +00:00
Dimitri Schoolwerth
4c51a665c6 Fixed various typos.
Applied patch by snowleopard2 fixing a bunch of typos such as misspellings and double words in the documentation. Combined the patch with some local queued typos waiting to be committed as well as adding new typo fixes inspired by the patch.

Function names with American spelling were not changed nor was third-party code touched. The only code changes involve some changes in strings that are translated ("Can not" -> "Cannot").

Closes #13063 (again).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-03-22 14:17:38 +00:00
Vadim Zeitlin
d89b7c194d Correct a print format specifier mismatch in wxFileConfig::Parse().
Pass an int and not a size_t to a %d.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65209 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-08 11:35:49 +00:00
Vadim Zeitlin
975fb32b5c Don't crash when input is empty in wxFileConfig(wxInputStream) ctor.
Fix crash due to dereferencing a NULL pointer when the input buffer in
wxFileConfig ctor is empty.

Closes #11636.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63228 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-23 13:22:14 +00:00
Vadim Zeitlin
a57bfed905 No real changes, just remove the ugly CONST_CAST macro.
Use const_cast<> directly, we don't support compilers which don't have it any
more. And CONST_CAST macro conflicts with a macro with the same name (and
similar purpose) defined in Symbian headers.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62640 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-14 16:11:09 +00:00
Vadim Zeitlin
9a83f86094 Globally replace _T() with wxT().
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Vadim Zeitlin
d8a7829312 move virtual GetPath() implementation out of line to work around an apparent Fedora g++ 4.x bug (see #10791)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60643 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-05-15 18:02:41 +00:00
Václav Slavík
6df09f32fd added length to wx(Scoped)CharBuffer to improve handling of embedded NULs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-29 20:58:39 +00:00
Vadim Zeitlin
c0c133e13b add wx-prefixed and semicolon-requiring versions of DECLARE_NO_{COPY,ASSIGN}_CLASS macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 11:45:59 +00:00
Vadim Zeitlin
5c33522fca replace wx_{const,static,reinterpret}_cast with their standard C++ equivalents
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-02 02:39:52 +00:00
Stefan Csomor
26eef30437 OSX regrouping
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-29 19:47:40 +00:00
Stefan Csomor
bba0174ac7 adjusting endif comment to new #if
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-09 06:49:50 +00:00
Stefan Csomor
0cd1c6e304 make sure mac pref files remain visible and named as before
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54522 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-07 13:17:29 +00:00
Stefan Csomor
fe844054e8 cleaning up common OSX code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52377 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-07 16:56:04 +00:00
Vadim Zeitlin
b0bcc78732 remove leading dots from .ini/.conf in AddConfFileExtIfNeeded() as this results in double dots in the resulting file name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52313 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-04 12:14:40 +00:00
Vadim Zeitlin
9d55bfef2c don't use 8 bit characters in sources, this results in level 1 warning with VC8 (patch 1841741)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-12-03 22:09:26 +00:00
Vadim Zeitlin
9534d0dfdc reverted the change of r32940 which worked around a bug due to associating a dummy line with the root group, it's no longer necessary now that the root group line is always NULL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-26 22:53:26 +00:00
Vadim Zeitlin
9a7b779828 fix bug with adding entries to a root group containing only subgroups (as shown by new AddToExistingRoot() unit test)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49476 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-26 22:50:26 +00:00
Vadim Zeitlin
d20d5ee858 no need to use ToAscii() explicitly in wxBase64Decode() call after r49095
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49097 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-09 00:00:31 +00:00
Vadim Zeitlin
e86882e38d fix bug with deleting and recreating entries in wxFileConfig (patch 1796866)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-19 00:41:55 +00:00
Vadim Zeitlin
bf6d45ebf6 don't overwrite the existing local file if we failed to open it but it does exist
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-26 20:40:33 +00:00
Vadim Zeitlin
8ca1a013e4 corrected off by 1 error in cMB2WC() call (thanks valgrind)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47691 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-24 00:36:22 +00:00
Vadim Zeitlin
89216929ee don't add an extra empty line to the end (fixes bug introduced by the last optimization round)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-23 22:36:37 +00:00
Vadim Zeitlin
cdbcd6c12f rewrite FilterInValue() using iterators, this results iin 12x performance improvement in UTF-8 build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47577 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-20 01:03:33 +00:00
Vadim Zeitlin
5ad2b5ce07 speed up reading wxFileConfig from wxInputStream by factors of 3.5, 20 and 7 for ANSI/wchar_t/UTF-8 builds respectively (replaces patch 1755969)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47555 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-18 23:37:12 +00:00
Vadim Zeitlin
434e29032f add wxUSE_BASE64 checks around DoRead/WriteBinary() functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-16 20:38:42 +00:00
Vadim Zeitlin
50257dba06 compilation fix for DoReadBinary() in STL build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-13 14:49:58 +00:00
Vadim Zeitlin
5814e8ba4e added support for binary data to wxConfig (slightly modified patch 1736788)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-12 00:11:03 +00:00
Václav Slavík
8650108199 don't use implicit wxString->char*/wchar_t* conversion, it will not be available in wxUSE_STL build in the future
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46391 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-10 17:42:41 +00:00
Vadim Zeitlin
6ad0a7d52f fix bug with not updating the last line correctly when a group was deleted and recreated (bug 1685312); added a unit test for this
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45557 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-21 15:04:52 +00:00
Vadim Zeitlin
b4a980f4f5 don't use obsolete functions (mostly copystring() and Count()), remove their documentation (patch 1697956)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45395 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-11 00:23:19 +00:00
Vadim Zeitlin
d2ea08b9e1 don't check if the file exists if we don't use it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44899 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-18 21:08:17 +00:00
Vadim Zeitlin
466e87bd8c use wxStandardPaths and wxFileName in wxFileConfig resulting in big code simplification and cleanup but also in change of the default file locations under Windows (replaces patch 1620492)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-18 17:34:11 +00:00
Václav Slavík
c9f7896861 first phase of transition to unified Unicode build:
1. changed c_str() to return wxCStrData (implicitly convertible to wxChar*)
2. added template type-safe wrappers for vararg functions
3. added wxUniChar class representing single Unicode character
4. changed wxString::operator[] and wxString::iterator to return wxUniChar


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-17 10:26:10 +00:00
Vadim Zeitlin
c4ec0ce820 derive wxConfig classes from wxObject and add wxRTTI macros to them (patch 1587607)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44737 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-10 18:16:10 +00:00
Vadim Zeitlin
8d7bfa660d fix the bug which could have resulted in failing to read config file if a chunk boundary fell in a middle of a multibyte character (patch 1674488)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44678 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-08 01:15:48 +00:00
Václav Slavík
1c8c91463f allow using both char* and wchar_t* in wxFileConfig and wxConfigBase, too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-01 20:03:50 +00:00