Commit Graph

28130 Commits

Author SHA1 Message Date
Vadim Zeitlin
8e9d125855 Override DrawLabel() to avoid crossing out disabled labels in mono theme.
DrawButtonLabel() crosses out the buttons to indicate that they are disabled
(for lack of any other options in mono renderer) but this looks really bad for
the labels, so don't do it.

Closes #11220.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62005 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-22 00:23:09 +00:00
Vadim Zeitlin
fdc468a0a6 Add a separate wxControlRenderer::DrawButtonLabel() too.
wxControlRenderer::DrawLabel() was used by both wxStaticText and wxButton but
their labels may need to be drawn differently and wxRenderer does have
different DrawLabel() and DrawButtonLabel() to do it. Now also add a separate
method for the buttons to wxControlRenderer.

See #11220.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-22 00:23:03 +00:00
Vadim Zeitlin
2344c32b7e Implement wxGetActiveWindow() for wxX11.
Now that wxGetActiveWindow() is used when showing modal dialogs, it became
critical to implement it as otherwise an assert happens every time a dialog is
shown and because creating the assert dialog itself results in another (same)
assert, this immediately results in a crash.

So implement it even if in a very trivial (but hopefully not too incorrect)
way.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-22 00:22:57 +00:00
Vadim Zeitlin
2c1a1ed190 Implement wxWindow::DoGetBorderSize() in wxUniv.
As some wxUniv classes implement DoGetBestClientSize(), the new code in
wxWindow::DoGetBestSize() implementation calls DoGetBorderSize() which asserts
because it's not implemented, making it impossible to even start the minimal
sample -- fix this.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-22 00:22:52 +00:00
Vadim Zeitlin
f9837e4693 Define wxSetDetectableAutoRepeat() for X11-based ports only.
This function is not needed in wxGTK2 as GTK+ sets detectable auto-repeat on
its own in gdk_display_open() anyhow, so move its implementation to
src/x11/utilsx.cpp where it can be used by wxX11 and wxMotif which do need it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-22 00:22:44 +00:00
Vadim Zeitlin
ef3da29bf1 Move wxSetDetectableAutoRepeat() to a section compiled in wxCore.
This function was mistakenly defined in a section of utilscmn.cpp compiled as
part of wxBase, so it wasn't correctly exported from the core library and
linking any wxX11 applications failed when using compiler with visibility
support.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-22 00:22:38 +00:00
Vadim Zeitlin
8a72770aa6 Recognize old wx{CHB,LB}_XXX styles in XRC.
Situation with wxBK_XXX vs wxXXB_XXX remains confusing, the comments in the
code suggest that the former is preferred but the latter are documented for
wxListbook and wxChoicebook (although they don't even exist for wxTreebook).
So it seems unwise to not recognize the wxXXB_XXX versions in XRC as people
could easily decide to use them instead of wxBK_XXX values -- and this is also
consisten with wxNotebookXmlHandler which does recognize both wxBK_XXX and
wxNB_XXX already.

Change wxListbookXmlHandler and wxChoicebookXmlHandler to also always
recognize these styles.

Closes #10725.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61999 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 20:10:54 +00:00
Vadim Zeitlin
44c2703fbf Restore socket initialization times counter.
The change of the counter to a simple boolean in r61985 broke the code which
called both Initialize() and Shutdown() multiple (but the same number of)
times. As this is the documented correct behaviour, restore the counter to
cater for it even if we don't really need it any longer.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61998 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 14:45:52 +00:00
Vadim Zeitlin
ed2e973e9f Don't call wxSocketBase::IsInitialized() from worker threads.
This function should be used in the main thread only and calling it from
wxSockAddress unconditionally resulted in asserts in the unit test.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 14:45:45 +00:00
Stefan Csomor
3ec9ba039f on iPhone default is to cover entire screen
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 13:11:26 +00:00
Stefan Csomor
aa308c95fe fixing cast warnings on OSX 10.6
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 13:10:01 +00:00
Stefan Csomor
1437127330 fixing include type
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 13:08:52 +00:00
Vadim Zeitlin
edd608b18a Account for the margins used by Windows around status bar text.
Because Windows uses margins around the text drawn in the status bar, naively
setting a field width to the size of the text didn't work (see previous
commit for an example). As this seems a natural enough thing to do, account
for this margin inside wxStatusBar itself to avoid the user code the trouble
of having to call some special function to do it. Notice that this does mean
that fields not containing text may be slightly larger than needed, but we
consider that this (rarer) case is less important.

Also account correctly for the status bar grip size. And while we still hard
code its size, do it in a clearly named function instead of using completely
mysterious constants here and there.

Closes #10696.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 13:00:36 +00:00
Stefan Csomor
0a84f928e9 moving themeing include to private.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 12:57:12 +00:00
Vadim Zeitlin
0fd2ecfed3 Initialize wxMDIParentFrame::m_accelWindowMenu in default ctor.
If wxMDIParentFrame object was created without its Create() ever being called,
it crashed in its dtor trying to delete an uninitialized pointer, so do
initialize it to NULL in all ctors (via a helper Init() method, as usual).

Closes #11216.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 08:44:42 +00:00
Vadim Zeitlin
4017f5ca49 wxSocket::Initialize() and Shutdown() are for main thread only.
Calling Initialize() from another thread could never work before but it wasn't
clear that this was the case so document it in the functions comments and
documentation now and add asserts checking that they are called from the main
thread only.

Also simplify the code as we don't actually need to do any reference-counting
here and a simple boolean flag indicating whether the sockets are initialized
is enough.

Closes #11119.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61985 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 08:44:35 +00:00
Vadim Zeitlin
45de347c10 Put wxAny implementation entirely in the header.
This allows to remove WXDLLIMPEXP_BASE from the class declaration and should
hopefully fix VC6 linking errors when building the unit test.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-20 12:37:16 +00:00
Julian Smart
7fd86b2141 Avoid duplicate character event for VK_DECIMAL on numeric keypad
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-20 10:57:32 +00:00
Vadim Zeitlin
59d43911b4 Optionally return length from wxLoadUserResource().
Add optional length output parameter and also change the return type to "char
*" from "wxChar *" to which it apparently was blindly changed just to make
this code compile even though this function never returned any strings.

Closes #11214.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-19 16:29:57 +00:00
Vadim Zeitlin
39601a7f74 Set svn properties correctly for the newly added files.
Set svn:keyword and, most importantly, svn:eol-style, to avoid having files
with DOS line endings in svn, for the new files added by r61971.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-19 15:41:08 +00:00
Jaakko Salli
178c77606f wxAny initial commit (closes #10932)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61971 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-19 08:51:11 +00:00
Vadim Zeitlin
7b8d24ad99 Don't query system option in every DrawBitmap() call under MSW.
Doing this had noticeable (and bad) performance implications so cache the
value of the option during the first call. This doesn't allow changing its
value during the program execution so we may want to provide some way to
update its value later if really needed.

Closes #11172.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61967 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-18 17:11:21 +00:00
Vadim Zeitlin
0f08aa4432 Change return type of wxList::Member() to bool.
It used to return a pointer in wxUSE_STL==0 build and an object in
wxUSE_STL==1 one making checking its return value difficult without provoking
warnings from either MSVC or g++ (see #11038).

Also, all the other occurrences of Member() already returned bool, including
the one in wxStringList so changing it to return bool in wxList itself is more
consistent.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61966 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-18 17:10:58 +00:00
Vadim Zeitlin
b3b17ee743 Fix recurring typo in "theming".
It was (consistently) misspelt as "themeing" in several places.

Closes #11206.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-18 16:16:30 +00:00
Vadim Zeitlin
e9670814f5 Use UTF-8 for all non-ASCII characters in the sources.
Avoid mixing Latin-1, UTF-8 and Mac Roman (?) encodings in different source
files, use UTF-8 everywhere.

See #11116.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-18 16:16:12 +00:00
Vadim Zeitlin
9dab58b103 Define NDEBUG when building 3rd party libraries.
We are not interested in asserts in 3rd party libraries so make them disappear
by defining NDEBUG when building them.

Closes #11155.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61960 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-18 16:15:54 +00:00
Vadim Zeitlin
2e587bb9ec Use wxASSERT() instead of assert() in wx code.
This is more consistent and ensures that all asserts in wxWidgets are
controlled by a single wxDEBUG_LEVEL setting instead of also relying on NDEBUG
as standard assert() macro does.

See #11155.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-18 14:04:22 +00:00
Vadim Zeitlin
c81b7d7d53 Correct wxStreamBuffer::Seek() return value.
It returned the offset instead of the new position when seeking forward from
current position in a "flushable" buffer.

Closes #11205.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-18 14:03:55 +00:00
Vadim Zeitlin
86badbc455 Another compilation fix for wxRibbon under OS X.
Include Carbon/Carbon.h to get kThemeBrushToolbarBackground declaration.

Closes #11203.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61957 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-18 14:03:28 +00:00
Julian Smart
089ca539ac Fixes for Mac (use wxClientDC not wxMemoryDC for temporary DC)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61956 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-18 09:01:43 +00:00
Vadim Zeitlin
ae0e22dd7a Compilation fix for ANSI build after r61898.
wxWX2MBbuf is just char* if wxUSE_UNICODE==0 and so doesn't have a length()
method, use wxString::length() in wxFile::Write() instead.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-17 13:02:12 +00:00
Julian Smart
370eda07c1 Added missing includes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-17 08:18:52 +00:00
Vadim Zeitlin
91d33c61a5 Ribbon compilation fixes for OS X.
Forward declare wxWindow and wxDC classes in wx/ribbon/art.h to avoid errors
in (PCH-less?) buildbot builds.

Also include header containing declarations of private Mac functions in
implementation file (closes #11203).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61949 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-16 23:19:01 +00:00
Vadim Zeitlin
3d156e937a Provide implementation for wxArrayString::resize().
This method was declared but not implemented in wxUSE_STL==0 build.

Also add unit test for this function.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-16 23:18:48 +00:00
Vadim Zeitlin
956b3d92ef Allow creating wxSingleInstanceChecker with default name.
This makes it easier to use in common cases: there is no need to come up with
a unique name for the checker any more as sufficiently unique combination of
wxApp::GetAppName() and wxGetUserId() is used if no name was explicitly given.

This is done by calling the new CreateDefault() on demand from
IsAnotherRunning() instead of simply creating the checker with the default
name in the default ctor for compatibility (you had to call Create() after
using the default ctor before and it can only be called once) and because
wxTheApp might not exist yet when wxSingleInstanceChecker is created.

Closes #11166.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-16 12:38:00 +00:00
Peter Cawley
3c3ead1d15 Merged GSOC Ribbon work from SOC2009_RIBBON branch into trunk.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-16 12:06:02 +00:00
Vadim Zeitlin
1a2df6a75b Change wxBoxSizer::AddSpacer() to only add space in sizer direction.
It used to add a spacer with the given size in both directions but this was
counter-intuitive and wasn't expected even by the original author of this code
so change it to behave more reasonably.

Closes #11197.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-15 17:05:32 +00:00
Vadim Zeitlin
d1b5dd5596 Correct wxPendingDelete declaration.
This variable was moved to wxBase from wxCore recently and hence must be
declared using WXDLLIMPEXP_DATA_BASE and not WXDLLIMPEXP_DATA_CORE now.

Closes #11202.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-15 17:05:24 +00:00
Vadim Zeitlin
af0ac990fc Add wxXmlResource::LoadObjectRecursively().
These methods can be used to load objects from anywhere in the XRC resource
tree and not just from the top level.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-14 23:22:00 +00:00
Jaakko Salli
36a2b429ae Fixed use of map::erase() in ClearActionTriggers() (this bug was revealed by static code analysis - see ticket #11195)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61928 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-14 14:53:13 +00:00
Stefan Csomor
02ca710b3b added missing destructor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-14 13:23:48 +00:00
Stefan Csomor
0770c0a05f fixing and completing iPhone sound
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-14 13:07:23 +00:00
Stefan Csomor
42327c3387 enable backface culling which is not enabled by default on ES
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61925 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-14 11:52:43 +00:00
Stefan Csomor
40607a8bfd remove debug logging
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61924 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-14 08:50:17 +00:00
Stefan Csomor
7c38b3a525 Launch Services are not available on iPhone
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61923 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-14 08:38:05 +00:00
Stefan Csomor
e203dbfe15 adding glFrustum to compat API, supporting SetColour on OpenGL ES
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-14 08:37:23 +00:00
Vadim Zeitlin
ba9574c310 Added support for corner, row and column headers renderers to wxGrid.
Make it possible to customize the appearance of wxGrid corner window and its
row and column headers by defining custom renderers for them.

Add demonstration of this new feature to the grid sample and update the
documentation.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-14 00:45:29 +00:00
Stefan Csomor
deb0a11e99 adapting to new sound file organization for osx
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-13 18:28:45 +00:00
Jaakko Salli
3ba703f9be Minor code cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61915 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-13 17:52:32 +00:00
Stefan Csomor
8996460cb9 avoiding potential infinite recursion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61912 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-13 17:34:51 +00:00