Commit Graph

30644 Commits

Author SHA1 Message Date
Vadim Zeitlin
b6dd4afdf8 Compilation fixes for GTK+ 2.4.
Add missing GTK_CHECK_VERSION(2,6,0) checks.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-08 11:02:02 +00:00
Vadim Zeitlin
bedba0d176 Add missing stdio.h include to wxGTK assert dialog code.
As we use FILE for saving the assert message to a file, we must include
<stdio.h> (which is not included from any other header, at least not under
Solaris).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-08 11:01:58 +00:00
Václav Slavík
0fff3dfcbb Use Enter and Space for cell editing in generic wxDVC too.
If the normal Enter or Space processing (sending activate event or doing
activatable editing respectively) isn't handled by the control, use
these keys to trigger inline editing too, as F2 does.

This makes the Windows control more similar to OS X and GTK+ ones and
makes discovering editability easier.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69695 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-08 10:53:49 +00:00
Jouk Jansen
5ced53e599 Updates to compile WX on OpenVMS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69693 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-07 09:42:06 +00:00
Vadim Zeitlin
2673c2394a Use current time, not the Epoch for time zone determination.
When deducing the time zone from struct tm tm_gmtoff field, query tm for the
current time and not the Epoch as the DST rules -- and hence the time zone
offset -- could have changed since 1970. This is notably the case for Ireland
which used a different time zone from 1968 to 1971.

Notice that GetTimeZone() still must return the time zone without taking DST
into account, so we explicitly compensate for DST if it's in effect.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-06 12:06:43 +00:00
Vadim Zeitlin
535a0e0889 Allow reusing the same wxWindowID more than 254 times.
Extend the id reference count storage to use an overflow hash map for the ids
used more than 254 times. This allows to use the same id an arbitrarily large
number of times.

Closes #13618.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69682 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-05 11:24:04 +00:00
Vadim Zeitlin
c977643bb1 Translate the log message in wxLog destructor.
The message about losing the last message was not translated for some reason,
do translate it now.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69679 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-05 11:23:54 +00:00
Vadim Zeitlin
2371703475 Fix format string in wxLog::LogLastRepeatIfNeeded().
We used a format string without any format specifiers in it in a call to
wxString::Printf() which always had a parameter resulting in an assert failure
about a mismatch between the string and parameter count.

Fix this by using a separate Printf() call for this case.

Closes #13613.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69678 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-05 11:23:51 +00:00
Vadim Zeitlin
b059c519bf Use correct direction in wxDataObject::IsSupported() in wxOSX dnd code.
Before calling wxDataObject::SetData() we must check whether the object
supports this format using IsSupported(Set) instead of just IsSupported()
which does the test in the "Get" direction.

Closes #13615.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69677 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-05 11:23:48 +00:00
Vadim Zeitlin
041e6050fd Don't read beyond the end of input buffer when decoding UTF-16.
wxMBConvStrictUTF8::FromWChar() didn't update the input length correctly when
encountering a surrogate while decoding UTF-16 and could read beyond the end
of the input buffer in this case.

Fix this by simply adjusting the input length when a surrogate is read.

Closes #13614.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69676 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-05 11:23:44 +00:00
Vadim Zeitlin
64b91e2d40 Add wxConvAuto::GetBOMChars() helper.
Closes #13620.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69675 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-05 11:23:41 +00:00
Vadim Zeitlin
86cf0018d3 Rename lineAnchor in Scintilla code to avoid shadowing warning.
Local variable "lineAnchor" in Editor::SetRectangularRange() was shadowing the
member variable Editor::lineAnchor, resulting in warnings from some compilers
(AIX xlC, Sun CC).

Rename it to "lineAnchorRect", just as it was done in the latest Scintilla
sources, to avoid them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69672 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-05 10:28:48 +00:00
Vadim Zeitlin
d265ec6b0e Simplify wxIdRange code by using new XRCID_Assign() function.
Only traverse the id hash once in XRCID_Assign() instead of using
RemoveXRCIDEntry() to delete the old entry (which usually doesn't exist so
this traversed the entire hash) followed by XRCID_Lookup() to create a new one.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69663 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-04 17:40:49 +00:00
Vadim Zeitlin
6bb81c8e1a Fix choice of tree item icon for the selected state in wxMSW.
The logic for selecting the item icon was broken when selected image was
specified as it was not taken into account as fallback for selected expanded
state so selected icon was used only for collapsed items.

Fix this by using the selected icon if it is specified and selected expanded
one is not.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69662 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-04 12:02:07 +00:00
Vadim Zeitlin
4878fbb880 Make wxQsort() definition exactly the same as declaration.
Remove the extra "const" in the first parameter.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69661 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-04 09:09:54 +00:00
Vadim Zeitlin
beee38cb41 Explicitly include X11/Xlib.h to fix AIX build.
At least under AIX X11/Xlib.h is not included from X11/Xutil.h so include it
explicitly ourselves. It should do no harm on the other systems.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69626 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-01 12:04:27 +00:00
Vadim Zeitlin
f81ccc1148 Make wxTreeListEvent dynamically creatable.
This is unfortunately required by wxEvent::Clone() support unit test so
provide the default ctor in this class even though it doesn't make any sense
in normal use.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69619 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-31 19:41:06 +00:00
Paul Cornett
e503ef07d5 fix creation of bitmap from image with requested depth 32
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69617 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-31 16:09:47 +00:00
Vadim Zeitlin
898c3e88e9 Suppress harmless unused variable warnings in wxSocket under AIX.
The size of the buffer is not used with AIX conventions for gethostbyaddr_r()
and getservbyname_r() functions.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69616 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-31 14:24:54 +00:00
Vadim Zeitlin
6677f122a1 Fix compilation of wxGethostbyname_r() and wxGethostbyaddr_r() under AIX.
gethostbyname_r() and gethostbyaddr_r() functions return int, not hostent*,
under AIX so assign their return value to the error indicator.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69615 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-31 14:24:51 +00:00
Vadim Zeitlin
5fe43b6017 Compilation fix for AIX: fix the name of wxGetservBuf ctor.
The ctor was wrongly called so wxGetservBuf class couldn't be compiled,
breaking compilation under AIX and any other systems with 4 argument
getservbyname_r().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69614 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-31 14:24:49 +00:00
Dimitri Schoolwerth
275c64304e Fixed dropdown height of wxChoice and wxComboBox controls.
When using comctl32.dll versions prior to 6.0 (e.g. with Win2k or no manifest file) the dropdown height of a wxChoice and wxComboBox would show all but one item and a vertical scrollbar was always visible. Fixed by reintroducing code that adds 1 to the total number of items. The code got dropped in r60553, added a comment to it in the hope that it will not be lost again.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69612 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-31 11:30:45 +00:00
Vadim Zeitlin
97b18a77f4 Compilation fix for wxUSE_GRAPHICS_CONTEXT && !WX_PRECOMP.
Include wx/dcclient.h to get wxPaintDC declaration necessary in this case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69610 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-31 10:42:42 +00:00
Paul Cornett
c968ba805b simplify Refresh(), ancestors of a mapped window have to be mapped also, no point in checking
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69606 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-31 05:36:51 +00:00
Paul Cornett
6d50fadaea in DoSetSize, only call GetPosition if necessary
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69605 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-31 05:22:59 +00:00
Paul Cornett
cb0c51acf8 correct callback function signature
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69604 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-31 05:15:04 +00:00
Paul Cornett
f0b87ef91c move class function out of extern "C" block
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69603 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-31 05:14:13 +00:00
Paul Cornett
98185146b3 simplify code calling gtk_window_set_urgency_hint
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-31 04:35:56 +00:00
Vadim Zeitlin
6460ce5afe Avoid too many sash position changed events when splitter is resized.
We could call SetSashPositionAndNotify() twice in a row which was probably
unexpected and possibly wasteful, if the user code did anything non trivial in
response to this event.

Just call it once after we're certain which sash position do we want to set.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69601 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 19:48:50 +00:00
Vadim Zeitlin
1b5dfa53aa Fix the check for second window becoming too small in wxSplitterWindow.
There was a strange check for the second pane size in OnSize() which hardcoded
5 pixels as minimal pane size in the check and 40 pixels as the minimal size
to set. This resulted in strange behaviour when the second pane size would
decrease to 6 pixels smoothly and then jump back to 40 pixels when the
splitter window was resized and also was ugly at the code level.

Get rid of this code and simply call AdjustSashPosition() to ensure that the
sash position remains valid as the splitter is resized.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69600 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 19:48:48 +00:00
Vadim Zeitlin
853f4764c0 Make the initial sash position work in splitter sample.
The initial splitter size must be set correctly when using gravity with
wxSplitterWindow as otherwise the sash would jump on first resize -- which was
exactly what happened in the splitter sample.

Add a SetSize() call to the sample with the comment explaining why is it
needed and also actually make it stick as the cached last size was not updated
before the splitter was split before.

Closes #9821.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69599 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 19:48:44 +00:00
Vadim Zeitlin
c79d40fe1e Don't apply gravity before requested sash position was set in wxSplitterWindow.
Gravity should take effect only after the originally requested sash position
is set as otherwise it's not really taken into account.

Closes #13508.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69598 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 19:48:40 +00:00
Vadim Zeitlin
31174267f8 Remove wxSplitterWindow::m_checkRequestedSashPosition.
This variable seemed to be redundant with m_requestedSashPosition being set to
INT_MAX so harmonise the code to always check for the latter and get rid of
the former.

There should be no observable changes in behaviour.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 19:48:38 +00:00
Vadim Zeitlin
8219f7f982 No changes, just remove wxSplitterWindow::{Set,Get}NeedUpdating().
GetNeedUpdating() was never used at all while SetNeedUpdating() was used only
once while m_needUpdating variable was being changed directly in other places
making the code difficult to follow.

Just use the member variable directly and remove the accessors.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69596 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 19:48:34 +00:00
Julian Smart
d3f6b1b575 Fixed problem with the size of paragraphs not needing layout not being taken into account when calculating overall box size.
Should fix the problem with lines becoming insensitive to mouse clicks after adding a couple of shorter lines.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69595 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 17:28:03 +00:00
Vadim Zeitlin
3ac17397c5 Perform wxAuiToolBar idle updates from UpdateWindowUI(), not OnIdle().
No real changes, just optimize the idle updates by doing it from (less often
called) UpdateWindowUI() instead of EVT_IDLE handler.

Closes #10075.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69594 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 16:51:10 +00:00
Vadim Zeitlin
f5fccd52d4 Generate right click events for all kinds of items in wxAuiToolBar.
Don't generate wxEVT_COMMAND_AUITOOLBAR_RIGHT_CLICK for normal items only,
they can be useful for other ones too.

Note that this had been previously applied to 2.8 branch as r66926 but somehow
wasn't applied to the trunk.

Closes #10079.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69593 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 16:44:24 +00:00
Vadim Zeitlin
b2447e8408 Fix splitting message into title in body in MSW wxProgressDialog.
If the message doesn't contain any new lines, it should be used as the body,
not the title as having title without body doesn't make sense and looks
strange.

Closes #13441.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 16:41:34 +00:00
Vadim Zeitlin
c22ce32199 Don't replace non default wxMessageDialog labels with default translations.
The code translating the button labels of wxMessageBox to the application
language was overeager and replaced even the custom labels with the
translations of the default ones.

This shouldn't be done, of course, so simply check that no custom labels had
been set before translating.

See #10962.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69591 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 16:22:30 +00:00
Vadim Zeitlin
9a29fe70bc Change variables naming convention in wxAUI code.
Use the standard wxWidgets camelCase convention instead of the
old_one_using_underscores for all the private variables.

Closes #13476.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69590 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 14:20:03 +00:00
Vadim Zeitlin
74e0e33a85 Remove apparently unnecessary wxAuiMDIClientWindow dtor.
This dtor doesn't seem to do anything useful as the base class dtor already
destroys all window children anyhow and removing it is reported to fix some
crashes in wxAUI (which is surprising and probably hides some other bug...).

Closes #13547.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 14:19:55 +00:00
Vadim Zeitlin
7e132bdd47 Fix assert in generic wxListCtrl icon view when using images.
Don't assume that the item image is a valid index in m_small_image_list as we
may be in icon view which doesn't use small images at all.

For now restrict this code to the report view mode as apparently the cached
line height is not supposed to be used in other modes even though it's not
clear whether this is really the case and so, perhaps, this code should also
be used when in small icons view mode.

Closes #13604.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 14:19:47 +00:00
Julian Smart
dabf7342ef Fixed warning when compiling richttextctrl.cpp in VS2010 (fixes #13606)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69585 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 13:39:11 +00:00
Julian Smart
031b5b0c2f Add indents to maximum size to prevent problems with paragraph layout (fixes #13458).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69584 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 13:34:43 +00:00
Vadim Zeitlin
911219b2ab Allow customization of the locations where persistent settings are stored.
Make it possible to set a non-default wxPersistenceManager to use and allow
overriding of GetConfig() and GetKey() methods by making them virtual and
documenting them.

This can be notably used to allow porting of the existing code to use
wxPersistenceManager while keeping compatibility with the old settings.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69583 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 10:08:18 +00:00
Paul Cornett
07acbd34a5 parenthesize bitwise operator in logical expression
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69572 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-29 04:49:38 +00:00
Vadim Zeitlin
038809c2f6 Make BOM-detection code in wxConvAuto public.
Export GetBOM() and DetectBOM() functions.

Also rename BOMType enum elements to use "wx" prefix now that they're public.

Closes #13599.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69571 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-27 22:48:54 +00:00
Vadim Zeitlin
776f4b8df8 No changes, just remove redundant code.
Don't call FindToolByPosition() again in wxAuiToolBar::OnLeftUp() when we just
called it above.

Closes #13600.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-27 22:48:46 +00:00
Vadim Zeitlin
e4c8592e9c Add _PTR WX_DECLARE_HASH_SET variants to fix warnings about operator->().
Macros from WX_DECLARE_HASH_SET family could declare an operator->() which
could never be called because it returned a pointer to a non-object (e.g. a
pointer or a primitive type).

Fix this in the same way as for WX_DECLARE_ARRAY macros by adding (badly but
consistently) named _PTR variants of the macros to allow defining the versions
without operator->().

This fixes tons of warnings when building wx with Sun CC.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-27 22:26:10 +00:00
Vadim Zeitlin
c155b9b519 Use WX_XXX_ARRAY_PTR macro variants for arrays of pointers.
Arrays of pointers must not overload operator->() as it is not used with them
and is, in fact, unusable, provoking a warning from Sun CC every time such
array is declared. Use the special _PTR-suffixed versions to avoid this.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69567 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-27 21:10:51 +00:00