Commit Graph

55 Commits

Author SHA1 Message Date
Vadim Zeitlin
d931703342 Inherit notebook background recursively under wxMSW.
With MSWSetTransparentBackground() hack only the panel which was the immediate
child of wxNotebook (i.e. its page) inherited the notebook background but not
its children. This resulted in jarring background discontinuities when nested
panels were used.

Fix this by inheriting notebook background in all child panels by testing for
the return value of the parents MSWHasInheritableBackground() method in
wxPanel::HasTransparentBackground() recursively.

Closes #12317.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65238 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-10 21:48:17 +00:00
Vadim Zeitlin
ebfee17940 Simplify and correct MSW selection of background brush for children painting.
Check for the transparency of the window background in MSWGetBgBrush() itself
and let MSWGetBgBrushForChild() just return the brush to be used.

This required adding a MSW-specific hack to wxPanel to allow inheriting
background of wxNotebook by its children which is slightly ugly but is exactly
what we need to do in this case and makes the rest of the code much simpler.

Also add a possibility to set the background of the page containing the
control being tested to the widgets sample to test for background inheritance.
This shows problems with wxSlider and wxRadioBox backgrounds but they're not
new with this patch.

Closes #12057.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64372 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-21 12:51:20 +00:00
Vadim Zeitlin
6528a7f145 make wxWindow::SetAutoLayout() now works for all windows, not just panels
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60722 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-05-23 11:26:58 +00:00
Francesco Montorsi
53a2db124c substitute WXDLLEXPORT with WXDLLIMPEXP_CORE and WXDLLEXPORT_DATA with WXDLLIMPEXP_DATA_CORE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52834 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-26 15:06:00 +00:00
Vadim Zeitlin
f36e602b3f make various control names constants of type char, not wxChar, as this is more compatible with the old ANSI build and it doesn't make much sense to use wchar_t for ASCII strings anyhow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49873 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-12 21:37:46 +00:00
Paul Cornett
3c75d8baf9 make access for virtuals match base
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-26 06:20:23 +00:00
Julian Smart
6f3f9b50aa Made wxBORDER_THEME the same as wxBORDER_DEFAULT
Moved wxControl::GetBorderStyle into wxWindowMSW::GetBorderStyle
but added GetBorderStyle to have the same behaviour as before (so e.g.
notebook panels don't get borders)
Improved help window borders


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-08 12:39:56 +00:00
Václav Slavík
b5dbe15d0b added WXDLLIMPEXP_FWD_FOO macros in addition to WXDLLIMPEXP_FOO for use with forward declarations (in preparation for GCC visibility support)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-09 10:09:52 +00:00
Vadim Zeitlin
b9eb3d9de6 added wxID_ANY default value for the id parameter of Create() for consistency with the ctor (request 1481791)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40282 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-24 17:44:46 +00:00
Mart Raudsepp
63ec432bd7 Move constant strings to .rodata/.data.rel.ro ELF segment from .data by making them really const.
If any more exotic toolchain decides to not export these strings into the core library anymore, let me know. Try to
compile the notebook sample, for example.
TODO: Move strings not meant for wxCore out of wxCore to the appropriate library.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-16 14:59:55 +00:00
Mart Raudsepp
8907154c1a Nuke #pragma implementation/interface's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-23 12:56:45 +00:00
Julian Smart
99d800190a Added licence/copyright information
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-05-04 18:57:50 +00:00
Vadim Zeitlin
c3732409ac simplifications and corrections to background drawing:
1. removed ApplyParentThemeBackground() not used any longer
2. removed ProvidesBackground() which is synonymous with
   !HasTransparentBackground()
3. removed a whole bunch of unused MSWXXX() methods
4. moved MSWControlColor() from wxWindow up to wxControl

results:

1. the gradient is still shown properly for static/radio boxes in notebooks
2. correct background colour is used for the static boxes
3. code is shorter and better commented


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-04-10 15:23:08 +00:00
Włodzimierz Skiba
f4fffffc95 Warning fixes for MinGW.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31551 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 18:26:01 +00:00
Václav Slavík
0ac21dde62 no need to update default colours and refresh if syscolours change, wxWindow does it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-06-23 16:41:40 +00:00
Włodzimierz Skiba
ca65c0440a Code cleaning: wxID_ANY, wxDefaultSize, wxDefaultPosition, true, false, wxEmptyString, tabs and white spaces.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27853 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-06-17 16:22:36 +00:00
Julian Smart
655719367a Use old licence name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 20:53:33 +00:00
Julian Smart
77ffb5937e Name and version changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 14:56:36 +00:00
Robin Dunn
cc0bffaceb Changed CanApplyParentThemeBackground to ApplyParentThemeBackground
and let the windows set the the background colour themselves (or not)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26090 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-03-05 05:28:21 +00:00
Robin Dunn
bd507486e0 Added CanApplyParentThemeBackground and use it in wxMSW's
wxNotebook::ApplyThemeBackground.  It's in the common base classes so
that someday it's usage can expand to the other platforms as well.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26085 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-03-04 17:03:55 +00:00
Václav Slavík
1202890513 added support for gcc precompiled headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22722 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-08-09 12:38:21 +00:00
Vadim Zeitlin
fc7a2a602b undisable many warnings for VC++ in defs.h and fixed several thousands of them in the sources
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-22 00:24:07 +00:00
David Elliott
d9e2e4c242 Allow headers to be compiled in Objective-C++ mode
Changed id to one of:
winid   Window IDs and event system
itemid  Menu items
toolid  Toolbar items


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19647 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 02:58:55 +00:00
Vadim Zeitlin
2b5f62a0b2 merged 2.4 branch into the trunk
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-04 14:11:26 +00:00
Gilles Depeyrot
af49c4b8a2 disable use of #pragma interface under Mac OS X
GNU compiler included with Mac OS X 10.2 (Jaguar) as well as August Developer
Tools update contain a bug concerning #pragma interface handling that can only
be worked around by not using them (and they are not necessary anyways)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-08-31 11:29:13 +00:00
Vadim Zeitlin
19f0aa9a2f wxPanel is a canvas in wxUniv sense of the word
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15398 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-05-06 14:09:47 +00:00
Vadim Zeitlin
5f51707579 typo fixed: __WXUNIV__ => __WXUNIVERSAL__
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-05-06 10:51:43 +00:00
Robert Roebling
193e19cfdf Three more attempts to get metal look.
- Added a few flags for inheriting background.
     - Added wxWindow param to wxR::DrawBackground()
     - Added wxR::DrawButtonSurface()
     - Removed wxR::DrawBackground() from wxR::DrawButtonBorder()
     - Adde DrawMetal to Metal theme
  Fixed minor bug in wxGTK scrollbar.
  Changed code in wxX11 wxTLW so that startup flicker no
    longer occurs in wxFrame.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15136 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-04-14 14:42:43 +00:00
Kendall Bennett
19193a2c85 Mutiple updates from SciTech for wxWindows including the following:
1. Updates to HTML applet classes in client side include syntax
2. Updates to wxUniversal for OS/2
3. Updates for better palette management on Windows
4. Misc other fixes and changes to fix build system for Watcom 11.0


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12045 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-10-17 22:25:56 +00:00
Vadim Zeitlin
c40ce5ce77 removed redundant InitDialog methods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11374 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-08-14 11:24:03 +00:00
Vadim Zeitlin
9948d31f4e changed wxControlContainer to avoid triggering tons of warnings from VC++ at
warning level 4 ("'this' : used in base member initializer list" is really
the stupidiest warning I've ever seen)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11315 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-08-06 22:50:28 +00:00
Vadim Zeitlin
6b55490abd 1. slightly changed how wxControlContainer is used
2. use it now for wxSplitterWindow too
3. don't compile wxIdleEvent in !wxUSE_GUI mode (why was it done?)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-08-06 12:55:04 +00:00
Vadim Zeitlin
456bc6d9b8 moved knd handling logic from wxPanel to wxControlContainer (sorry for
the dull name Julian ;-)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11289 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-08-06 00:49:59 +00:00
Vadim Zeitlin
1e6feb95a7 first pass of wxUniv merge - nothing works, most parts don't even compile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10673 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-26 20:59:19 +00:00
Václav Slavík
ada8f80775 another attempt to fix wxPanel/wxFrame::m_winLastFocused handling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10341 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-26 22:20:33 +00:00
Bryan Petty
f6bcfd974e merged 2.2 branch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@7748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2000-07-15 19:51:35 +00:00
Vadim Zeitlin
00c4e8974d I think I finally fixed activation behaviour under MSW - now focus is not given
to random window after you switch to/from a frame


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@5582 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2000-01-22 01:44:16 +00:00
Robert Roebling
3da17724b6 More tab code corrections.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4273 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-31 10:22:26 +00:00
Vadim Zeitlin
678cd6de66 1. corrected (but the fix is ugly) the multiple def button problem
2. corrected a bug which disabled all accels for MSW (sic)
3. added SetValue/GetValue to wxSpinCtrl
4. modified wxGetNumberFromUser to use wxSpinCtrl


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-28 01:17:35 +00:00
Robin Dunn
27dc7e21d9 made wxPanel be auto layout aware
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4075 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-20 04:57:45 +00:00
Vadim Zeitlin
319fefa910 keyboard/focus handling improved a bit more:
1. wxFrame doesn't give focus to anything at all on activation
2. last control restored more often (some problems still persist)
3. buttons process enter
4. text controls with wxTE_PROCESS_TAB still leave TAB work as dialog
   navigation key if the event wasn't processed


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-20 21:51:15 +00:00
Vadim Zeitlin
d220ae3237 1. uninitialized variable in wxPanel fixed and unused one removed from wxWindow
2. wxTreeCtrl sends more notification messages


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2826 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-18 18:04:32 +00:00
Robert Roebling
f6577bba75 Made things compile again (two pizzas).
Made timer reentry safe, I think.
  Added CVS build info.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2823 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-18 14:18:47 +00:00
Vadim Zeitlin
edccf4281b 1. wxDialogs are now destroyed when they go out of scope
2. [GS]etDefaultItem() are now in wxPanel, not wxWindow
3. better checking for g_isPainting - hopefully no more false asserts
4. wxListCtrl not recreated any more when view changes, this corrects
   the bug with selection not working after view mode change
5. wxListCtrl now generates wxEVT_ITEM_ACTIVATED event
6. you can now press/toggle a button with a space
7. couple of other minor fixes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2820 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-17 21:21:52 +00:00
Ove Kaaven
908d45166b The char->wxChar in window.h cascades through some other header files.
Someone give a hint why you'd declare the same extern global vars
separately in a ton of header files instead of just once in a header
file included by all the others?


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-04-14 11:55:35 +00:00
Julian Smart
0492c5a094 Cured last focus bug (I hope); some wxMotif mods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-02-18 21:24:11 +00:00
Julian Smart
1f916a19f1 Tried to fix wxPanel bug (windows now set the panel current focus window on deletion);
undid wxMSW wxRadioBox::SetSize changes that made it resizeable because it just doesn't
work (see notes in radiobox.cpp); fixed wxTextCtrl enter processing bug; fixed
Dialog Editor wxRadioBox-writing bug


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1641 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-02-08 00:15:40 +00:00
Vadim Zeitlin
341c92a8b4 1. more keyboard navigation fixes - seems to work now
2. wxPanel now remembers the last control which had focus, so it's restored
   to it when the focus returns to the panel (very handy IMHO)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1604 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-02-04 23:21:27 +00:00
Vadim Zeitlin
06b5713445 wxStaticBitmap, wxStaticBox and wxPanel don't accept keyboard focus now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1539 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-01-31 23:30:33 +00:00
Robert Roebling
b292e2f512 I've put live into Vadim's wxNavigationKeyEvent idea
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1212 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1998-12-17 08:40:34 +00:00