Commit Graph

1688 Commits

Author SHA1 Message Date
Vadim Zeitlin
5cbb4a59ce Disable a sporadically failing check in wxBitmapComboBox unit test.
This check keeps failing in buildbot builds even though it always passes in
local ones (and sometimes in buildbot ones too). Disable it to allow the
entire test suite to pass.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73957 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-09 23:22:09 +00:00
Vadim Zeitlin
784397563c Reduce the number of wxAny tests ran under wxOSX further.
Something in GetAs() test definitely corrupts memory, but what?

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73956 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-09 23:22:06 +00:00
Vadim Zeitlin
1f0b3a2910 Start bisecting GetAs() wxAny test itself.
This is the test that results in memory corruption in wxOSX PPC builds, try
to find out where exactly does this happen.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-09 22:29:13 +00:00
Vadim Zeitlin
ea32fa53af Leave only a single wxAny unit test disabled.
It looks like the culprit is GetAs() test, verify it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73954 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-09 19:56:47 +00:00
Vadim Zeitlin
4c45335cd2 Another attempt to isolate memory corrupting wxAny test.
We now know it's either As() or GetAs() (or both).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-08 23:18:12 +00:00
Vadim Zeitlin
506b3c5db4 Continue bisecting tests crash in PPC OS X builds.
Disable more wxAny tests.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-08 22:01:02 +00:00
Vadim Zeitlin
656634564b Fix wxRichTextCtrl test compilation.
Work around broken pre-C++98 for loop scoping rules in VC6.

See #15184.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73951 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-08 22:00:11 +00:00
Vadim Zeitlin
29bdcf09ce Really disable wxAny tests under wxOSX.
Instead of disabling them everywhere but there.

See r73944.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73950 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-08 21:17:00 +00:00
Vadim Zeitlin
62b88de2d2 Disable more wxAny tests under OS X to try to find the buildbot crash.
Disabling wxVariantConversions test was not enough to fix the crash happening
in OS X PPC build slave, so disable a few more of them.

Temporarily do it for any wxOSX build, the run-time check for buildbot will be
restored later when I finally manage to find the problematic test(s?).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-07 15:10:53 +00:00
Vadim Zeitlin
bc4185a458 Disable wxAny-to-wxVariant conversion test case under OS X.
This is a blind attempt to fix the test crash under PPC OS X.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-06 21:46:55 +00:00
Julian Smart
31be840031 Applied patches for #15184 (wxRichTextAction fix for when the command identifier is wxRICHTEXT_CHANGE_OBJECT) and #15185 (Make adding/deleting wxRichTextTable rows and columns undoable)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73941 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-06 13:39:01 +00:00
Vadim Zeitlin
789ab84044 Add IEEE 754 single/double precision support to wxDataStream classes.
Allow to optionally raed/write float/double values in IEEE 754 single/double
precision formats, respectively, instead of always using the extended
precision format for both of them.

This makes the code more flexible, allowing for better interoperability with
the other programs, and also allows to implement floating point functions in
these classes even when wxUSE_APPLE_IEEE is turned off (as can be the case
because of the licencing concerns for the code in extended.c).

Closes #10625.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-06 00:31:03 +00:00
Vadim Zeitlin
1274add43f Test wxDataStream floating point methods in big endian format too.
Added a hack to test float/double reading/writing using
wxDataInputStream/wxDataOutputStream to the test case using big endian
extended float format too.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73936 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-06 00:30:56 +00:00
Vadim Zeitlin
393b6027be No changes, just a small optimization in DataStreamTestCase.
Don't create streams on the heap completely unnecessarily, just allocate them
on the stack. This makes the code shorter, safer and slightly more efficient.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-06 00:30:53 +00:00
Vadim Zeitlin
233666915e Use wxWindow::Refresh() instead of artificial wxPaintEvent in the test.
This fixes memory leaks under wxMSW: as the test code didn't (and couldn't)
call wxPaintDCImpl::EndPaint(), there was a leak for each wxPaintEvent
generated in it since the changes to wxDC caching in r72938.

It's also preferable because it uses public API instead of feeding events to
the window which is not documented to work.

Unfortunately even using Refresh() still doesn't allow the test to work under
wxOSX.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73929 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-05 00:00:01 +00:00
Vadim Zeitlin
a7c0de8a98 Fix event handling order in doc/view framework.
Ensure that the events are always (provided there is an open document)
processed in the following order:

1. wxDocument
2. wxView
3. wxDocManager
4. wxDocChildFrame
5. wxDocParentFrame
6. wxApp

Do this by forwarding the events from wxDocParentFrame to wxDocChildFrame
first and forward them from there to wxDocManager which -- and this part
remains unchanged -- in turn forwards them to the active wxView which finally
forwards them to wxDocument. This requires another condition in the event
handling code as we still must forward from wxDocParentFrame to wxDocManager
itself if there are no active children at all, but this is the only way to
have the same event order in all cases, whether the event is originally
received by wxDocChildFrame or wxDocParentFrame.

Document this and add a unit test verifying that things indeed work like this.

See #14314.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73928 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-04 23:59:56 +00:00
Vadim Zeitlin
bbde2164ac Factor out functions dealing with menus in the event propagation test.
No real changes, just refactor the code to allow testing for menu events in
other frames too.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-04 23:59:48 +00:00
Vadim Zeitlin
9fe942190d Use correct line numbers in assert failures in event propagation test.
Replace the calls to CheckMenuEvent() helper with ASSERT_MENU_EVENT_RESULT()
macro to allow passing the correct line number to cppunit assertion function,
otherwise the line number of CheckMenuEvent() was always used in case of
failure.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73924 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-04 23:59:40 +00:00
Vadim Zeitlin
4ed3f4abd8 Pass menu events to the handler in the associated menu bar.
We handled the menu events in the menu itself and the associated window, but
not in the menu bar that the menu belonged to. This was unexpected, so allow
handling the events in the menu bar itself too.

Closes #15095.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-04 23:59:32 +00:00
Vadim Zeitlin
3bad8c3926 Fix menu event handlers calling order.
Pass the menu event to the window associated with the menu first, before
falling back on wxApp.

This required adding yet another flag to keep state in wxEvent but it seems to
be unavoidable as wxMenuBase::SendEvent() calls ProcessEvent() twice and we
must have some way to distinguish the first call from the second one.

Added a test case verifying that the menu events are indeed processed in the
expected order.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-05-04 23:59:29 +00:00
Vadim Zeitlin
e78209f6a8 Fix wxFont test compilation after wxFont(int flags) ctor removal.
Also mention this incompatible (since 2.9.4) change in the change log.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73889 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-30 11:13:21 +00:00
Vadim Zeitlin
0cd8ce0de1 Trying to blindly fix WebTestCase unit test failure.
Navigate to about:blank initially, not "about:".

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73879 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-29 23:00:57 +00:00
Vadim Zeitlin
bd7c46cfc6 Fix compilation-breaking typo in the previous commit.
s/LoadUrl/LoadURL/

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73853 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-25 12:54:50 +00:00
Vadim Zeitlin
4776f0c8c5 Fix wxWebView test setup failure under OS X.
Call LoadUrl() after associating our custom event handler with the browser
object as otherwise the wxEVT_WEBVIEW_LOADED event could be generated before
we were set up to catch it, resulting in the assertion failure inside
ENSURE_LOADED.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73852 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-25 12:53:51 +00:00
Vadim Zeitlin
ce7fe42e84 Provide shorter synonyms for wxEVT_XXX constants.
Use the same short names as are used by the event table macros for the event
type constants themselves. This makes them much more comfortable to use, e.g.
Bind(wxEVT_BUTTON) compared to Bind(wxEVT_COMMAND_BUTTON_CLICKED).

The old long names are still kept for backwards compatibility and shouldn't be
removed as it doesn't really cost anything to continue providing them, but all
new event types should only use the short versions.

Closes #10661.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-25 10:11:03 +00:00
Vadim Zeitlin
d929eddf3a Fix showing back hidden columns and rows in wxGrid.
While we don't support auto-sizing of the hidden columns and rows, we need to
still show them back when SetColSize() or SetRowSize() is called with -1
(a.k.a. wxGRID_AUTOSIZE) argument.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73848 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-24 09:01:57 +00:00
Vadim Zeitlin
98a177f45a Add test for correct short/long file names in wxDir.
Verify that enumerating the files using the pattern *.foo doesn't match
*.foo.bar files, as it used to do under MSW.

See #3432.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-22 00:32:55 +00:00
Vadim Zeitlin
5adf2ecd9e Fix printf format specifier in graphics benchmark.
Use "%ld" for long arguments to fix asserts under 64 bit architectures.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-05 20:47:12 +00:00
Vadim Zeitlin
54d25f9d8a Added possibility to use OpenGL for bitmap drawing to graphics benchmark.
Draw the bitmap using OpenGL textures. Even without using PBO this results in
much greater performance than using wxImage or raw bitmap access.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-05 20:47:10 +00:00
Vadim Zeitlin
6e6f4d3572 Use a non-uniform bitmap for image tests in the graphics benchmark.
This makes it easier to estimate the speed of the display update visually.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-05 20:47:07 +00:00
Vadim Zeitlin
ce0cdeb0b7 No changes, just rename command line option in graphics benchmark test.
It's not used for lines only, so call it "number of iterations" and not
"number of lines" and use "N" instead of "L" option for it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73472 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-05 20:47:05 +00:00
Vadim Zeitlin
e45606e991 Add benchmarks for wxImage and raw bitmap access to the graphics test.
Compare the speed of drawing the bitmaps by synthesizing wxImage and
converting it to wxBitmap and directly modifying wxBitmap bits using raw
bitmap access.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-05 20:47:02 +00:00
Vadim Zeitlin
8c14cbc98c Allow selecting the kinds of DC to test in the graphics benchmark too.
Still run all the tests by default but allow specifying --dc or --gc as well
as --paint, --client or --memory to test just the specified kinds of DCs.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-05 20:47:00 +00:00
Vadim Zeitlin
c80e612faa No real changes, just flush output in the graphics benchmark.
Show the output messages sooner instead of showing them all only when the test
ends.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-05 20:46:57 +00:00
Vadim Zeitlin
b9fb3b0671 Run wxClientDC and wxMemoryDC tests too in the graphics benchmark.
These tests were not run because OnPaint() handler was called before OnCreate()
and exited the main loop before the create event could be dispatched. Fix this
by just running everything from OnPaint(), like this we're sure to do it.

Also refactor the code a little to avoid duplicating the tests.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73468 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-05 20:46:55 +00:00
Vadim Zeitlin
51f64663bf Allow running only some graphics benchmarks to save time.
Running all the benchmarks is relatively long, so allow running individual
ones only.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73467 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-05 20:46:53 +00:00
Steve Lamerton
236cff7334 Rename all WEB_VIEW* style identifiers to WEBVIEW*.
This makes wxWebView consistent with the rest of the toolkit. 

Closes #15013

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73453 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-01 09:38:53 +00:00
Vadim Zeitlin
22a3b6e4b2 Don't include wxUniversal configurations in MSVC project files.
wxUniversal is practically not used under MSW and just confuses people.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-01-21 16:37:01 +00:00
Vadim Zeitlin
ae72623b64 Add wxCheckListBox::GetCheckedItems() helper.
This method is similar to wxListBox::GetSelections() and allows to retrieve
all checked items at once.

Closes #14969.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-01-21 11:18:55 +00:00
Steve Lamerton
39a18da1a8 Pass wxWANTS_CHARS to the wxRichTextCtrl constructor in the unit tests.
Fixes test failures caused by the return key being used for dialog navigation.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73413 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-01-20 19:28:20 +00:00
Vadim Zeitlin
90e95e6117 Rename WXTHREAD_XXX_PRIORITY yo wxPRIORITY_XXX.
This will allow to reuse the same constants for the process priorities in an
upcoming commit.

See #14931.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73405 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-01-20 02:10:07 +00:00
Vadim Zeitlin
12ce0a7402 Fix wxDateTime::GetWeekOfYear() for the days in the last week of the year.
The code took into account the possibility that the days in the beginning of
the year might belong to the last week of the previous year but not that the
days at the end of the year could belong to the first week of the next year.

Closes #14973.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73402 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-01-20 02:09:48 +00:00
Vadim Zeitlin
09ca8913fa Fix wxSearchCtrl::HasFocus() in the generic version.
Override GetMainWindowOfCompositeControl() in the windows composing the
generic wxSearchCtrl to ensure that HasFocus() correctly returns true for the
entire control when any of them has focus.

Add a trivial unit test to check that this really works and facilitate adding
more tests for this class later.

Closes #14970.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73401 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-01-20 02:09:44 +00:00
Vadim Zeitlin
fe218f1e4b Fix setting initial wxSpinCtrl value outside 0..100 range in wxMSW.
Set the range before setting the initial value when creating wxSpinCtrl, as
otherwise the value was wrongly limited to the default 0..100 range instead of
the one really specified.

Closes #14894.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-01-20 02:09:14 +00:00
Vadim Zeitlin
7582edfbf9 Fix wxLocale::GetInfo() in C locale under Windows.
Don't use LOCALE_USER_DEFAULT when the locale hadn't been changed because the
user default locale often (and maybe even always) is different from "C" locale
used by the CRT resulting in mismatch between the conventions used by
wxDateTime::Format(), which uses the CRT locale, and wxDateTime::Parse(),
which uses Windows format. Instead use the hard-coded values corresponding to
the "C" locale to ensure we use the same values as the CRT in this case.

This also reverts r73244 which was applies to make the unit tests pass before
this fix as it's not necessary any longer.

Closes #14918.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73320 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-12-29 21:53:13 +00:00
Vadim Zeitlin
9de31412ed Add a temporary workaround to make the tests pass.
Call SetCLocale() on tests startup to avoid problems with wxDateTime parsing
that happen when the user locale is different from "C" one under Windows.

See #14918.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73244 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-12-22 02:35:07 +00:00
Vadim Zeitlin
f31f9900e4 Add wxFSW_EVENT_ATTRIB wxFileSystemWatcher flag.
This flag allows to monitor changes to the file attributes, such as file
modification time.

This patch adds the flag, support for it under Linux and the corresponding
modifications to the sample and the test suite.

Closes #14833.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-17 23:56:00 +00:00
Vadim Zeitlin
b77bb705dd Support monitoring only some events in wxGTK wxFileSystemWatcher.
Call inotify() with the appropriate flags instead of always using IN_ALL_EVENTS.

Closes #14832.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-15 22:24:22 +00:00
Vadim Zeitlin
c7619cf139 Replace a template function with template class to fix VC6 build.
VC6 doesn't like template methods, so use a helper template class instead,
hopefully this will finally allow it to compile the test suite again.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-12 15:50:13 +00:00
Vadim Zeitlin
75b2220eba Fix crashes after using "wildcard" wxEvtHandler::Disconnect().
When not specifying the function to disconnect, the associated event sink was
destroyed too early resulting in crashes later. Fix this and add unit tests
verifying that things work as expected and at least don't crash.

Closes #14563.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 12:22:32 +00:00