Sanitize the value returned by GetTempDir() to ensure that it doesn't have any
trailing path separators. This happened at least under OS X where standard
TMPDIR has a trailing slash and was inconsistent with the behaviour under the
other platforms.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64638 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Add wxDir::Make() and wxDir::Remove() for coherency with wxDir::Exists() and document them as simple aliases to wxFileName functions, just a bit more readable.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64632 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
All versions of doxygen seem to crash when encountering @since inside an event
table description, so don't use it there.
Also fixed a typo and improved wording of wxFileCtrl description slightly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64630 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Add a wxFTP::Connect() overload taking a port number.
Also specify the default port (21) explicitly if resolving "ftp" service name
failed.
Closes#12145.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64621 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Use AC_REQUIRE() instead of directly using a macro, the latter doesn't work
with autoconf 2.65.
This is a backport of r1337 from bakefile svn to allow people to use autoconf
2.65 immediately and will become unnecessary when we update to the next
bakefile version.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64620 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The old code used EM_LINESCROLL which could scroll too far if the caret wasn't
in the first line of the control. Instead of trying to compute the correct
number of the lines to scroll, just use WM_VSCROLL with SB_BOTTOM parameter
instead.
Closes#12123.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64571 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We only handled events for wxID_FILE1..wxID_FILE9 range but there can be more
than 9 entries in the MRU list. Handle events for as many of them as there are
correctly.
This required adding a fallback handler for all menu events and checking if
the id of the menu item is in the MRU range inside it. Also move this to
wxDocManager itself from wxDocParentFrameAnyBase as it's common for all kinds
of frames anyhow.
Closes#12141.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Under MSW the timer appeared to be flooding the message queue with timer
events faster than we could process them (which seems incredible for the timer
interval of 1 second but still seems to happen), so the idle events were never
generated and the sample didn't work at all.
Now stop the timer once we get a last notification from it to let the program
become idle and run the test function scheduled from the timer handler.
See #11528.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
If a read notification is generated for a socket, it should be possible to
read something from it without blocking but this doesn't seem to be always the
case under MSW for some reason. And this results in all sorts of problems in
wxSocket and wxIPC code, so check for this at wxSocketImpl level and not send
the notification at all if there is no data to read.
See #11528.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64565 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Overloaded ctor taking wxArrayString didn't call Init() so the wxListBox
fields were not initialized. Fix it by adding the Init() call.
Closes#12138.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64548 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Implement compatibility aliases for non-prefixed macro names.
Require a final semicolon where possible.
Correct a recurring error in the docs: IMPLEMENT/DECLARE_CLASS are alias to the DYNAMIC macros, not to the ABSTRACT macros.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775