Commit Graph

64 Commits

Author SHA1 Message Date
Vadim Zeitlin
208717f64e Account for scrolling when setting the background brush origin in wxMSW.
We must use physical coordinates for the brush origin to account for the
coordinates offset in scrolled windows, so add MSWAdjustBrushOrg() and call it
from MSWGetBgBrushForChild().

Closes #14917.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-10 16:14:03 +00:00
Vadim Zeitlin
de168da1ed No changes, just improve wxScrolled::EnableScrolling() documentation.
Explain that, in spite of its name, this function doesn't disable scrolling
when called with false argument but just changes the mechanism used to
implement it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73241 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-12-22 02:34:07 +00:00
Stefan Csomor
96943967a5 workaround, see #14856
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73041 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-27 08:29:24 +00:00
Vadim Zeitlin
4ca30c7d65 Simplify wxEVT_PAINT handling in wxScrollHelperBase.
Just always call the virtual OnDraw() if wxEVT_PAINT wasn't handled. This is
much simpler than connecting our own special handler just to set a flag saying
whether the event was processed which was very complicated and didn't work
anyhow for the statically connected wxEVT_PAINT handlers.

See #14757.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 00:53:17 +00:00
Vadim Zeitlin
2119b213e3 Add support for wxALWAYS_SHOW_SB style to wxScrolled<>.
Simply call ShowScrollbars(wxSHOW_SB_ALWAYS) if this style is specified.

Closes #13616.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72621 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-04 23:24:28 +00:00
Vadim Zeitlin
233f573883 Fix file paths in the header comments.
Consistently use only "wx/foo.h" instead of "include/wx/foo.h" ("include" is
always implicit anyhow).

Also use "src/osx" instead of "src/mac" for the files in this directory.

See #12165.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-13 13:29:58 +00:00
Vadim Zeitlin
d6a658ff0c Allow user code to override key events in generic wxListCtrl.
The changes of r58323 ("Restore keyboard navi") fixed the handling of cursor
keys in the generic wxListCtrl implementation but at the price of not sending
keyboard events for the cursor keys to wxListCtrl itself any more. This made
it impossible to override their handling in user code, something that used to
work in previous wx versions and still works in wxMSW.

Revert the changes of this revision now and fix the original code by simply
disabling the handling of the cursor keys in wxScrollHelperBase using a newly
added DisableKeyboardScrolling() method. This ensures that the keyboard events
for cursor keys are not used to scroll the window when they are forwarded to
wxListCtrl from wxListMainWindow.

The fix is conceptually ugly as it would be better to avoid the need for such
ad hoc functions as DisableKeyboardScrolling() but it is very simple and there
just doesn't seem to be any sane way to do it otherwise with wxScrollHelperBase.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64877 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-11 10:43:35 +00:00
Vadim Zeitlin
ce38e440a6 Suppress VC6 warnings about non-DLL-exported class for wxScrolled.
It's harmless to derive wxScrolledWindow from wxScrolled<> so suppress the
warnings about it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62472 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-10-22 11:18:11 +00:00
Vadim Zeitlin
cb7c02fd46 Remove DLL export declaration from wxScrolled.
As this class has only inline methods it doesn't need to be exported from the
DLL and actually exporting it results in linking problems when using
wxScrolled<wxWindow> (which, unlike wxScrolled<wxPanel>, is not used in wx
itself and so doesn't seem to be instantiated) in DLL client even with VC > 6.

An alternative solution would be to change WXDLLIMPEXP_TEMPLATE_INSTANCE_CORE
macro to explicitly instantiate the template in the DLL even for VC > 6 but
this wouldn't solve the problem for wxScrolled<CustomClass> while removing the
DLL export declaration should.

Also use wxScrolled<wxWindow> in addition to wxScrolled<wxPanel> in the scroll
sample to test that it links correctly.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-23 14:28:42 +00:00
Vadim Zeitlin
c0c133e13b add wx-prefixed and semicolon-requiring versions of DECLARE_NO_{COPY,ASSIGN}_CLASS macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 11:45:59 +00:00
Vadim Zeitlin
bc448be341 make Scroll() itself virtual too as existing code might override it (but new code should override DoScroll() only); use the same access in the derived classes as in wxScrollHelperBase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57538 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-25 12:27:20 +00:00
Vadim Zeitlin
bca1504431 deprecate OnScroll() which existed for compatibility only even before
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-25 12:23:28 +00:00
Vadim Zeitlin
29e1398fa0 further untangle generic and native GTK implementations of wxScrollHelper: use the standard wxScrollHelperBase/wxScrollHelper naming convention and move the stuff unused by GTK in the generic implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57531 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-24 16:43:30 +00:00
Vadim Zeitlin
69e9752529 provide generic implementation for ShowScrollbars() too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57530 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-24 16:11:02 +00:00
Vadim Zeitlin
6362d82b3e add wxScrollHelper::ShowScrollbars() (implemented for GTK only right now, generic implementation coming soon)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57529 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-24 15:58:37 +00:00
Vadim Zeitlin
0b0f6f87d5 add convenient GetViewStart() and Scroll() overloads taking wxPoint instead of 2 int[ pointer]s
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57527 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-24 15:11:00 +00:00
Vadim Zeitlin
5eda3bcdad remove assert from GetSizeAvailableForScrollTarget
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-10-18 13:50:10 +00:00
Vadim Zeitlin
f9ec0ea7c5 eliminate the hysteresis when scrollbars didn't disappear when the window was resized to be less than its virtual size and then resized back to be slightly greater than it in the native GTK version too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-26 17:36:57 +00:00
Vadim Zeitlin
69367c566e move the grid-specific workaround for scrollbar hysteresis to wxScrollHelper itself, the scrollbars now should not only appear but also disappear correctly during resizing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55627 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-14 22:44:08 +00:00
Vadim Zeitlin
707d9f4047 VC6 compilation warning fix for non-defined template class copy ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-02 13:10:33 +00:00
Vadim Zeitlin
9fdb68d985 wxMac compilation fix: must explicitly qualify non-dependent MacSetClipChildren() in wxScrolled::Create()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-04-02 13:51:30 +00:00
Václav Slavík
f2a6c918e8 compilation fix for wxMSW and r52961
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-04-01 15:40:49 +00:00
Václav Slavík
16361ec941 Generalized wxScrolledWindow into wxScrolled<T> that can derive from
anything (typically wxPanel or wxWindow). Fixed generic wxListCtrl to
use wxScrolled<wxWindow> - this fixes focus problems with label-editing
text control. Fixes to wxScrolledWindow doxygen docs.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-04-01 15:07:03 +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
Václav Slavík
7d616e99ed fixed wxScrolledWindow best size calculation: compute something (this was broken after 2.8) and don't use current size in computation; also removed now-unused ScrollGetWindowSizeForVirtualSize() method to simplify the code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50877 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-12-21 22:47:55 +00:00
Václav Slavík
06b9c2a22f when a window inside scrolled window receives focus, make sure the parent is scrolled so that the window with focus is visible
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50835 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-12-19 19:21:52 +00:00
Vadim Zeitlin
4f7d425f60 use correct WXDLLIMPEXP_FWD_XXX (patch from Tim Stahlhut)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-23 14:13:50 +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
Robert Roebling
5713b34914 Make wxGTK's wxScrolledWindow set m_x/xScrollLines to 0
if scrollbars disappear (instead of 1) as per wxMSW.
  Expose m_x/yScrollLines in public getters.
  Correct window origin for scrolled window in RTL.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41186 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-13 10:01:21 +00:00
Robert Roebling
2d6dd9c09e Add const to GetTargetSize()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41170 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-12 09:12:52 +00:00
Paul Cornett
8b64a7e24b correct access specifier for virtuals
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38975 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-02 17:23:04 +00:00
Vadim Zeitlin
6f02a879ed make access specifiers for the virtual functions match their access in the base class (patch 1400131)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-02-08 21:47:09 +00:00
Mart Raudsepp
1be7a35c5e Include gtk1 headers for non-gtk2. I don't really like this CPP logic, or more exactly __WXGTK__ without __WXGTK20__
being GTK1, oh well.
Might have missed some.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-23 03:27:34 +00:00
Vadim Zeitlin
2cd354c9c6 compilation fix for !USE_PCH: added missing wx/panel.h include
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-11 12:50:23 +00:00
Vadim Zeitlin
d32e78bd42 refactored wxGTK scrolling: it has now fully-functioning wxScrollHelper and a lot of duplicate code was removed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35875 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-10 18:24:27 +00:00
Mattia Barbon
dee1a63ff5 Removed WXWIN_COMPATIBILITY_2_2 together with code guarded by it.
Changed default for WXWIN_COMPATIBILITY_2_4 to 0.
  Added WXWIN_COMPATIBILITY_2_6 (defaults to 1).
  Ran build/update-setup-h.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35858 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-09 15:48:42 +00:00
Włodzimierz Skiba
39ae1f1392 Fix the warning about code sensitive to packing (VisualC).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-04-05 07:09:42 +00:00
Włodzimierz Skiba
2d67974d24 Old API clearly deprecated.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31283 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 20:03:22 +00:00
Julian Smart
adfea104dc Applied patch [ 1036833 ] Hiding declaration of wxScrollHelper
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29539 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-09-29 14:02:24 +00:00
Włodzimierz Skiba
d775fa8235 Source cleaning: whitespaces, tabs, -1/wxID_ANY/wxNOT_FOUND/wxDefaultCoord, TRUE/true, FALSE/false.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-09-22 14:38:52 +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
Julian Smart
6463b9f539 Reverted patch [ 832096 ] Final separation for GUI and console for Open Watcom
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-01-15 13:49:22 +00:00
Julian Smart
1169a91932 Applied patch [ 832096 ] Final separation for GUI and console for Open Watcom
(Watcom compiler doesn't like ctor implementation in headers)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25121 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-01-11 15:33:01 +00:00
David Elliott
b935bec236 Changed all symbols with the name "id" to "winid" to allow Objective-C++
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24322 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-10-27 03:47:39 +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
Vadim Zeitlin
d5d58a93c3 renamed wxScrollHelper::GetRect() to GetScrollRect() to avoid conflicts with wxWindow method
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21774 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-08 21:17:56 +00:00
Vadim Zeitlin
22f3361e1c use DECLARE_NO_COPY_CLASS() where applicable (patch 633384)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 23:38:11 +00:00
Vadim Zeitlin
0d6d6051d7 added ViewStart() as synonym for GetViewStart() in WXWIN_COMPATIBILITY_2_2 mode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15874 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-06-18 12:47:40 +00:00
Ron Lee
566d84a7c3 Added knowledge of virtual size to wx(Scrolled)Windows, they can now
manage their own scrollbars with the help of a sizer or other user
clues (SetVirtualSizeHints) without the need for an ancillary container.
Added SetSizerAndFit convenience method.
SetSizer now enables/disables AutoLayout automagically.
Logic bugfix for scrollsub sample.
Syntax bugfix in parser.y.
Compiler warning fix in textctrl.cpp.

 Modified Files:
    docs/latex/wx/scrolwin.tex docs/latex/wx/sizer.tex
    docs/latex/wx/window.tex include/wx/scrolwin.h
    include/wx/sizer.h include/wx/window.h
    include/wx/generic/scrolwin.h include/wx/gtk/scrolwin.h
    samples/scrollsub/scrollsub.cpp src/common/parser.y
    src/common/sizer.cpp src/common/wincmn.cpp
    src/generic/scrlwing.cpp src/gtk/scrolwin.cpp
    src/msw/textctrl.cpp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-04-19 22:12:38 +00:00