Commit Graph

54600 Commits

Author SHA1 Message Date
Vadim Zeitlin
0e3b10c509 Fix huge performance problem in wxStdInputStream when using MSVC8/9.
Our overridden xsgetn() method was never called when using these compilers
because they used their own, non-standard, _Xsgetn_s() instead. Because of
this the stream was always read character by character which was very
inefficient.

Fix the problem by overriding _Xsgetn_s() for these compilers and explicitly
forwarding it to xsgetn().

Closes #13926.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-05 14:18:37 +00:00
Vadim Zeitlin
fc12b1f12a Take void** client data in wxSingleChoiceDialog ctor and not char**.
The client data is supposed to be untyped, there is really no reason (other
than compatibility with C conventions of 40 years ago) to use char** here.
So don't do it and provide the versions taking "void**" keeping "char**" ones
for backwards compatibility only.

Also deprecate GetSelectionClientData() that returned char* and add a new
GetSelectionData() returning void* instead.

Closes #13876.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-05 14:18:33 +00:00
Vadim Zeitlin
0c6dff0370 Preserve focus when window is minimized and restored in wxMSW.
Add specific code to save and restore the focus when the window is minimized
and restored in wxMSW as the existing code in WM_ACTIVATE handler wasn't
enough because this event was generated too late when minimizing the window
(when it was already minimized and so the focus had been already lost) and too
early when restoring it (so the window was still minimized and restoring focus
failed).

This is still not perfect as we do in our code something Windows would be
expected to do automatically but for whatever reason, it doesn't do it for
wxWidgets programs, and this manual workaround at least prevents the annoying
total focus loss.

Closes #1599.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-05 14:18:28 +00:00
Vadim Zeitlin
7e08367534 Ensure that the progress dialog parent is activated at the end under MSW.
The progress dialog parent was supposed to become the new foreground window
when the progress dialog was closed, but this didn't happen because
m_parentTop was never set when the native progress dialog implementation was
used under MSW. Fix this by explicitly calling the new SetTopParent() from its
ctor.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-05 14:18:25 +00:00
Vadim Zeitlin
7cee4f7621 No changes, just implement Raise() in wxTopLevelWindow in wxMSW.
Get rid of two identical implementations in wxFrame and wxDialog and only
override this function once in wxTopLevelWindow.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-05 14:18:22 +00:00
Vadim Zeitlin
d4a762e30a Fix initial state of radio toolbar tools in wxGTK.
The last radio group item was initially checked under wxGTK instead of the
first one, as under the other platforms. Fix this by correcting the check for
the first radio group item which was inversed in wxToolBar::DoInsertTool().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70510 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-05 01:20:03 +00:00
Vadim Zeitlin
de75a255e5 Never refresh controls from EVT_PAINT handler in wxPropertyGrid.
Refreshing the controls after finishing repainting the grid results in an
infinite stream of paint events, so don't do this, especially as this doesn't
seem to have any bad consequences under wxGTK which was the only major
platform where this behaviour was enabled.

Also rename wxPG_REFRESH_CONTROLS_AFTER_REPAINT to just wxPG_REFRESH_CONTROLS
and keep the control refreshing code for wxGTK only in a couple of places
outside of EVT_PAINT handler to be on the safe side.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-05 01:20:00 +00:00
Vadim Zeitlin
fe8aae41ab Fix the URL generated by Doxygen @sampledir macro.
"samples/" part of the URL was missing, add it.

Closes #13925.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-04 12:22:46 +00:00
Vadim Zeitlin
06a5213db0 Document wxNO_3D as being obsolete.
This style doesn't do anything any more, so replace it documentation with a
deprecation notice.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70507 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-04 11:45:53 +00:00
Vadim Zeitlin
c1d6046e39 Fix typo in EVT_TREE_END_LABEL_EDIT documentation.
Wrong event type was used, correct it.

Closes #13922.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-03 17:57:59 +00:00
Vadim Zeitlin
9b42a9adc2 Check string length correctly in wxFileSystem::URLToFileName().
Check that the string is long enough before accessing its first and second
characters to fix a crash when an empty or one-character string was passed to
wxFileSystem::URLToFileName().

Closes #13920.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-03 17:27:21 +00:00
Vadim Zeitlin
1dcca9b51e Enable callbacks for wxFileSystemWatcher FD under OS X.
We need to enable callbacks to get them initially, otherwise no events are
ever detected.

Closes #13919.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-03 17:27:17 +00:00
Vadim Zeitlin
406a0ab32c Fix speed regression in wxFileHistory::AddFileToHistory().
Avoid full normalization including wxPATH_NORM_LONG when adding files to
wxFileHistory as this can take a very long time when using network paths under
Windows.

Closes #13915.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-03 17:27:13 +00:00
Vadim Zeitlin
9d05b85deb Turkish translations update from Kaya Zeren.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-03 14:15:17 +00:00
Vadim Zeitlin
e2e19a29ac Fix the type of global font constants in the documentation.
wxNORMAL_FONT, wxSMALL_FONT &c were documented as wxFont objects but they are
really wxFont pointers.

Closes #13917.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70501 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-03 00:24:09 +00:00
Vadim Zeitlin
7bd2132891 Fix bug with mouse wheel scrolling wxStyledTextCtrl in long running programs.
In long running programs the wxEvent time stamp could wrap around resulting in
all mouse wheel events being ignored in wxStyledTextCtrl as the comparison of
the (positive) time until which all the subsequent events were supposed to be
blocked and the (now negative) current event time stamp would be always false.

Fix this by using wxStopWatch::TimeInMicro() to avoid wraparound instead of
wxEvent::GetTimestamp().

Also rename the variable to have a more clear name as the original code wasn't
easy to understand.

Closes #9057.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-03 00:21:45 +00:00
Steve Lamerton
9447a0d6af Disable navigation sounds in wxWebViewIE. This brings the backend into line with the other backends. Also add a general method for changing INTERNETFEATURELIST settings.
See #13694

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-02 20:32:08 +00:00
Vadim Zeitlin
d9c4ffa893 Fix initial wxRadioBox buttons positions in wxMSW.
We only updated the button positions when the radio box was moved or resized
after being created but didn't do it initially, so a radio box created with
fixed position and size didn't lay out its buttons correctly. Do lay them out
immediately after creating the radio box to fix this.

Closes #13912.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-02 14:26:06 +00:00
Vadim Zeitlin
d05ff890b4 Add wxFontDialog ctor not taking wxFontData to wxOSX.
wxFontDialog should have ctor and Create() overload taking just wxWindow
parent in addition to the one taking parent and wxFontData used to initialize
the dialog but it didn't have them in wxOSX, do add them now.

Closes #13908.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70497 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-02 14:19:34 +00:00
Vadim Zeitlin
7f15deea6d Fix wxDataViewCtrl::GetItemRect() signature in wxOSX and document it better.
The second parameter of this method should be optional, so make it so in wxOSX.

Also document what this method does exactly and the platforms under which it's
implemented.

Closes #13914.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70496 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-02 14:19:30 +00:00
Stefan Csomor
f897d9ed1a should not bring to front upon focussing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-01 13:25:35 +00:00
Vadim Zeitlin
a8228fd18c Remove duplicate wxPoint2DInt operator declarations.
No real changes, just remove the redundant declarations.

Closes #13900.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-31 19:39:43 +00:00
Vadim Zeitlin
d8b130867c Set the file name for temporary wxFFile objects.
Pass the name of the temporary file to wxFFile::Attach(). This allows to give
more useful error messages if any operation on this file fails later.

Closes #13903.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-31 19:38:45 +00:00
Vadim Zeitlin
6ea6639cdf Document wxFFile::GetName().
Somehow this method was not documented.

See #13903.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-31 19:38:41 +00:00
Paul Cornett
b9ced7a914 remove virtual override that just calls base
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70490 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-31 17:44:32 +00:00
Paul Cornett
5105db37ab implement wxGetMousePosition without using X-specific code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-31 17:41:21 +00:00
Stefan Csomor
7dc941e3c5 guarding Update() on OSX not to be issued faster than 1/30 later than the last redraw
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-31 17:39:39 +00:00
Stefan Csomor
8c7fb50829 revert to using Update()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70487 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-31 17:37:31 +00:00
Stefan Csomor
a27c36f965 reenabling an Update where necessary
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-31 15:00:03 +00:00
Vadim Zeitlin
c84ef5b9f7 Fix wxHTTP::SetPostBuffer() compilation in ANSI build.
wxString::mb_str() returns a raw pointer and not wxScopedCharBuffer when
wxUSE_UNICODE==0 so fix the code to do it differently in this case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-31 13:09:11 +00:00
Vadim Zeitlin
5606890945 Don't document wxVector<>::reverse_iterator.
Documenting just this class but not iterator (and const_iterator) is
inconsistent but documenting all of them is too much mostly useless work as
all iterators (of the same category) have the same interface anyhow. So just
remove the documentation of reverse_iterator for now.

See #2585.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-31 13:09:07 +00:00
Vadim Zeitlin
a8953e155b Remove dummy Lithuanian translations.
All non-translated strings were "translated" as their English originals in
lt.po. This was just a artefact of the software used for translation and
wrong, so remove all these dummy translations.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70483 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-31 13:09:04 +00:00
Paul Cornett
030f4112fc handle theme change which changes window border width
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70482 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-31 07:30:11 +00:00
Stefan Csomor
10effff832 attempt to isolate which Update() calls are necessary at all, as they cause performance issues under OSX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-30 16:30:59 +00:00
Stefan Csomor
4815db04e0 always setting the event object to the menu, see #1595
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70480 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-30 16:25:22 +00:00
Stefan Csomor
39cfb4b2ad fixing the routing of UpdateUI to the window by just passing NULL as source
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70479 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-30 16:05:03 +00:00
Paul Cornett
27c38af613 move SetPangoAttrsForFont to wxFont, should have been part of r70475
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70478 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-29 08:49:01 +00:00
Paul Cornett
304c3065c7 use GTKSetPangoAttrs in wxCairoContext
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-29 08:35:45 +00:00
Paul Cornett
99f8cf22db move Pango underline workaround into wxFont::GTKSetPangoAttrs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70476 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-29 08:14:34 +00:00
Paul Cornett
c7e99122a0 move SetPangoAttrsForFont to wxFont
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-29 08:00:15 +00:00
Stefan Csomor
48d43515c2 use translatable strings as format template for menu lines
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-28 13:37:04 +00:00
Stefan Csomor
1c415bab65 adding OSX to the platforms which do the ui update upon menu open
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-28 13:31:16 +00:00
Julian Smart
cc2aecdef5 Added further API for intercepting deletion and content insertion
Added simple implementation of locked objects to sample


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-25 15:10:09 +00:00
Stefan Csomor
eccdb55165 structure code to Cocoa's possibilities, allows tool windows with just a caption and no buttons
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70464 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-25 10:33:26 +00:00
Bryan Petty
8724973ada Added more conveniently placed 'List of All Members' link on all class doc pages in the header summary (using JS).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70463 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-25 06:39:53 +00:00
Vadim Zeitlin
2ba61518f4 Fix return value of wxMBConvUTF8::FromWChar().
Apply the same fix as was done in r68694 for ToWChar() to FromWChar(): it also
returned an off by 1 value when not using MAP_INVALID_UTF8_NOT.

Closes #13400.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-25 00:10:44 +00:00
Vadim Zeitlin
8c85eb7b47 Update wxCommandProcessor after saving wxDocument.
Surprisingly, wxCommandProcessor::MarkAsSaved() method was never called by
wxDocument so saving the document didn't update wxCommandProcessor dirty
status.

Do add a call to MarkAsSaved() now, this allows wxCommandProcessor to track
its status correctly (and actually more correctly than the dirty status of the
document which becomes "dirty" after doing and undoing an operation after
saving it, unlike wxCommandProcessor::IsDirty() which correctly returns false
in this case).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-25 00:05:15 +00:00
Vadim Zeitlin
812a21486d Fix wxCommandProcessor::IsDirty() result after undoing everything after save.
IsDirty() returned false when all commands were undone after saving even
though it clearly should have returned true in this case.

Fix this and add comments explaining what happens in this method.

Closes #2862.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-25 00:05:12 +00:00
Vadim Zeitlin
ef20428e99 Don't compare invalid iterators in wxCommandProcessor::IsDirty().
Check that m_lastSavedCommand is valid before comparing it with
m_currentCommand as comparing invalid iterators results in an assert in STL
build (and probably should also result in an assert in non-STL build too for
consistency).

Also move IsDirty() implementation out of line to make it easier to modify it
further in the future and because there is no real reason to keep it inline.

Closes #13465.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-25 00:05:09 +00:00
Vadim Zeitlin
58d77880bb Forward declare wxFont in wx/gtk/private.h.
This fixes compilation in STL build (for some strange reason it doesn't affect
the default build however).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-25 00:05:06 +00:00