Commit Graph

57543 Commits

Author SHA1 Message Date
Vadim Zeitlin
6e87dba9e5 Regenerate configure after libwxscintilla linking changes.
This should have been done together with the changes of r74425, as
autoconf_inc.m4 had changed, configure should have been regenerated too.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 16:35:44 +00:00
Vadim Zeitlin
d53c1e7b09 Define XML_STATIC in Expat header instead of Expat projects.
This reverts r74444 and defines XML_STATIC unconditionally in Expat sources
themselves as we always use the built-in Expat as a static library, so this
solution is simpler and more portable.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 14:44:56 +00:00
Václav Slavík
a66bf817a6 Compilation fix for r74440 and STL builds.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 14:13:01 +00:00
Vadim Zeitlin
23cebdf4f5 Define XML_STATIC for Expat build to fix linking of Windows DLLs.
The new Expat assumes it's built as a DLL by default, define XML_STATIC to
indicate that this is not the case as we always build it as a static library.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 13:58:33 +00:00
Vadim Zeitlin
704c084ad7 Correct typo in a link in i18n documentation page.
See r74442.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 13:47:39 +00:00
Václav Slavík
02aa5a6481 Clarify .mo deployment in i18n overview.
Fixes #15253.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 13:43:13 +00:00
Václav Slavík
ea160f01c6 Don't look for catalogs in AddCatalogLookupPathPrefix() path directly.
Previously, the prefix directory itself for searched for catalogs, in
addition to prefix/lang/LC_MESSAGES and prefix/lang.  This never made
much sense, because only one catalog could be in such place, instead of
multiple catalogs for more languages.  It also prevented successful
identification of catalog's language and didn't work with
GetAvailableLanguages().

Remove this misfeature and update the documentation accordingly.  Update
OS X-specific code so that it continues to work (it previously depended
on this behavior).  As a side effect, *.lproj directories are now
recognized in all search prefixes, not just in Resources.

See #12498, #15253.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74441 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 13:42:50 +00:00
Václav Slavík
92d609f4b6 Improve translations lookup logging.
Log match directory in GetAvailableTranslations().  Log search paths
with one directory per line, for better readability when debugging.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 13:42:27 +00:00
Václav Slavík
3f84459166 Correct wxTranslations docs: CWD is not searched.
The documentation incorrectly stated that the current working directory
is searched for translations.  This isn't the case (and wouldn't be a
good thing to do).

See #12498.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74439 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 13:42:02 +00:00
Vadim Zeitlin
0053219faf Remove the TOOLKIT test from msvc-headers-setuo-h definition.
This is unnecessary now that TOOLKIT is back to being a constant again and
results in errors if GTK TOOLKIT is enabled.

Closes #14965.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74438 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 12:58:45 +00:00
Vadim Zeitlin
1b7751aaa9 Add files necessary to run Expat configure.
This should have been part of the previous commit (r74436).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 12:47:34 +00:00
Vadim Zeitlin
11a3e7b6da Update the version of Expat used to 2.1.0.
Merge with the latest version, mostly discarding our changes to 1.95.6 as they
seem to be unnecessary any longer, keep just bakefile-specific addition to
configure.

Also update our own makefile to define HAVE_EXPAT_CONFIG_H which is now needed
by Unix build.

Closes #11677.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 12:45:30 +00:00
Václav Slavík
e7b6bef7c5 Use wxConvAuto() in wxStyledTextCtrl::DoLoadFile().
This is both more reasonable than the current runtime encoding (the
input file is from unknown source) and more robust (it can handle UTF-*
encoded files transparently).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74435 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 11:47:17 +00:00
Václav Slavík
f8c2c6f24d Use wxConvAuto in wxFile::Write().
For consistency with wxFFile.

No real change, as wxConvAuto will default to UTF-8 when writing.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 11:46:53 +00:00
Vadim Zeitlin
8ac8eb6fda Don't pretend that wxAnyButton::SetBitmap() supports invalid bitmaps.
Because it doesn't under MSW.

See #13569.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74430 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 00:39:05 +00:00
Vadim Zeitlin
8472511246 Avoid using buffer of already deallocated string in wxHTMLDataObject.
Ensure that the temporary string inside which the pointer returned by
utf8_str() may point remains alive for long enough.

Closes #15279.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-07 00:38:41 +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
ccaf2891c9 Reuse wxMessageOutputStderr for wxLogStderr implementation.
In addition to avoiding (tiny) code duplication, this ensures that both places
use the stream in the same orientation, i.e. either both use the narrow
functions or the wide ones. Thus, it fixes a problem with output simply
disappearing if wxLogStderr and wxMessageOutputStderr were both used: the one
used first disabled any output by the other one.

Closes #14782.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 22:57:05 +00:00
Vadim Zeitlin
700256bbdb Correctly restore the originally used C locale in wxLocale dtor.
Save the original locale used before we changed it instead of "restoring" the
same locate that this wxLocale object was using.

Add a unit test to verify that this does work as expected.

Closes #14873.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 22:48:20 +00:00
Vadim Zeitlin
c80ae45452 Only link with libwxscintilla if using Scintilla is enabled.
Correct the changes of r74408 to avoid using libwxscintilla if we don't build
it at all.

See #13837.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 19:14:59 +00:00
Vadim Zeitlin
2d5efafe74 Disable test for setting the creation time under Unix.
Also document that this doesn't work there.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74424 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 19:14:20 +00:00
Vadim Zeitlin
55ab731681 Fix FILETIME <-> wxDateTime conversions while DST is in effect in wxMSW.
The result was (consistently, so the tests still passed) off by an hour when
the program was ran while DST was in effect. Fix this by avoiding the use of
FileTimeToLocalFileTime() and LocalFileTimeToFileTime() and just directly
converting FILETIME values to wxDateTime. Not only this is more correct but
it's also simpler and more efficient as well.

Also add a unit test for wxFileName::SetTimes() too.

Closes #13098.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74423 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 18:21:10 +00:00
Vadim Zeitlin
416d505ee9 Explicitly mention that wxDateTime ticks origin is in UTC.
Make it clear that the number of ticks is counted since the same moment in all
time zones.

See #13098.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 18:20:45 +00:00
Paul Cornett
633e19307c avoid GTK+ prefixes for our tree entry code, it is not part of GTK+, should have been part of r74420
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74421 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 17:27:53 +00:00
Paul Cornett
11f1e38e26 avoid GTK+ prefixes for our tree entry code, it is not part of GTK+
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 16:35:40 +00:00
Paul Cornett
92d00a3615 remove symbol exports, this code is private to the library
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 16:04:28 +00:00
Paul Cornett
3540b72b5f remove empty GtkTreeEntryClass
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74418 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 15:58:42 +00:00
Paul Cornett
7a12c62093 remove instance init function, memory is already zeroed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74417 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 15:50:57 +00:00
Paul Cornett
79bca169e5 move treeentry_gtk.h to include/wx/gtk/private/
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74416 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 15:44:21 +00:00
Paul Cornett
442bf2f016 create collate_key on demand
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74415 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 15:34:59 +00:00
Vadim Zeitlin
d20f23838d Exclude expat files from pre commit hook checks too.
All the other 3rd party libraries were already excluded but not this one, for
some reason -- do exclude it now as upcoming Expat 2.1.0 sources contain some
files with TABs.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74414 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 14:46:26 +00:00
Vadim Zeitlin
85db5fc87a Update announcement and readme files for 2.9.5 release.
Fill in the release date and update the changes description in the
announcement.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74413 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 14:46:03 +00:00
Vadim Zeitlin
a4830bb560 Always add libwxscintilla in monolithic mode.
The library was already present in the makefiles but came before the
monolithic library itself, which broke the linking of the samples when using
GNU ld as the dependent libraries must come after the libraries using them.

Closes #13837.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 12:41:02 +00:00
Vadim Zeitlin
bed99c2256 Rebake the rest of the files after TOOLKIT change in MSW bakefile.
This should have been part of r74406 but I only rebaked wxWidgets make/project
files themselves and not the samples/utils/demos files in it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74407 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 12:32:23 +00:00
Vadim Zeitlin
f901941933 Make TOOLKIT variable constant in MSW makefiles.
This fixes duplicate lines defining rules for generic files for more than one
port in the makefiles.

Closes #14979.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74406 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 11:59:35 +00:00
Vadim Zeitlin
cb6223b4a6 Fix potential buffer overflow in wxSTC DefaultFont() function.
Use safe(r) wxStrlcpy() instead of strcpy() to copy the font name.

Closes #15296.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74405 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 00:28:13 +00:00
Vadim Zeitlin
431b8364e6 Fix test for Windows in the new wxExecute() unit test.
TestOverlappedSyncExecute() doesn't currently pass under Windows and was
supposed to not be executed there but was, in console test, as __WXMSW__ is
not defined in this case, only __WINDOWS__ is (as there is no GUI toolkit in
the console applications).

See #10258.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-06 00:27:50 +00:00
Julian Smart
a352fbb044 Caret blink time and blink on/off are now also reflected in GTK+ widgets
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74362 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-05 17:11:15 +00:00
Julian Smart
d8d4411312 Use wxRTC text colour if possible for caret
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74361 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-05 16:26:37 +00:00
Julian Smart
eaaf10f671 Don't flash wxRTC caret if blink time is zero, and also take colour from window text colour to avoid invisibility.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74359 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-05 13:33:30 +00:00
Vadim Zeitlin
5ac5e40e41 Prevent duplicate menu event processing in MDI windows.
Record the object propagating the given event upwards in the event object
itself and use it in wxMDIParentFrame to determine whether the event being
handled is already coming from wxMDIChildFrame and avoid sending it back for
processing it there again in this case.

This is ugly and makes wx event processing even more complex but this is the
only way I could find to ensure that

(a) Both the child and the parent frames get the events from the toolbar
    (even though the toolbar parent is the parent frame and hence normally
    the child wouldn't get notified about them at all and so the forwarding
    at wxMDIParentFrame level is required to make this work).

(b) The child gets the event only once, whether it comes from a toolbar (and
    hence indirectly via the parent frame) or from the child menu (and hence
    directly to the child, at least in wxMSW).

This commit fixes the event propagation unit test case, at least under MSW and
GTK.

See #14314.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74357 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-03 22:18:42 +00:00
Vadim Zeitlin
12ab6ad3d2 Test handling of events from the toolbar in an MDI parent frame.
These events must be received by the currently active child.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-03 22:18:18 +00:00
Vadim Zeitlin
ada25b6e95 Ensure that the MDI child is active in event propagation test.
Call wxMDIChildFrame::Activate() explicitly as the behaviour was different
under MSW (where the activation happened too late for the test) and GTK where
the child did become active because of the hacks in place to ensure it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-03 22:17:55 +00:00
Vadim Zeitlin
5737bab736 Make AsyncExecLoopExitEnum enum in the wxExecute() test public.
This fixes VC6 build as the nested class couldn't access a private enum inside
the enclosing class.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-03 11:03:09 +00:00
Paul Cornett
683df83d51 fix wxCHECK_MSG() return value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-03 03:12:44 +00:00
Vadim Zeitlin
d1c063b90f Don't ignore child process output if it exits with -1 exit code.
While this code is used by us if the program couldn't be launched at all, it
doesn't mean that it didn't run as -1 could also be returned by the child
process to indicate an error after outputting something, so we should still
read its output in this case.

Closes #15205.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-03 00:33:04 +00:00
Vadim Zeitlin
d6655d446d Run wxExecute() unit test in the GUI test suite too.
The same code works differently in console and GUI applications, so build this
test case as part of both of them.

See #10258.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-03 00:32:40 +00:00
Vadim Zeitlin
821d856a61 Rewrite wxExecute() implementation under Unix.
This commit changes wxExecute() to handle SIGCHLD to be notified about the
child process termination instead of detecting when the file descriptor
corresponding to the other end of a pipe opened in the parent process was
closed in the child as this was not reliable and could (and did) result in not
detecting the termination of the child processes that closed all their file
descriptors before exiting.

This commit also removes a lot of platform-specific code duplicating the
generic event loop sources support and reuses it for wxExecute() purposes too.

Final big change is that wxEndProcessData was merged into wxExecuteData and we
don't have two similar but quite different classes any more but just one,
which is used both to pass the information from wxExecute() to wxAppTraits
methods and to store this information until the child termination.

Closes #10258.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-03 00:32:16 +00:00
Vadim Zeitlin
76015a6bb7 Add a helper wxApp::GetValidTraits() method.
This method always returns some valid traits, even if we don't have wxTheApp
(which is possible in the console applications) or if its GetTraits() was
overridden to return NULL (which shouldn't be, but still guard against this).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-03 00:31:49 +00:00
Vadim Zeitlin
c36ddebf93 Treat G_IO_HUP as read, not error, event because EOF is not exceptional.
When EOF is reached on a file descriptor, call the handler OnReadWaiting()
because this is not really different from getting to the EOF while reading
data in the same function. Only call OnExceptionWaiting() for the real errors.

See #10258.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74348 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-03 00:31:26 +00:00